zoukankan      html  css  js  c++  java
  • 一步一步CodeFirst(一)

    1 环境

             VS2013

             MySql

    2 使用VS2013新建一个Console工程CodeFirstSample,并使用Nuget安装EntityFramework库及Mysql.Data.Entity相关库。

    Install-package EntityFramework –Version 5.0
    Install-package Mysql.Data.Entity

    3 配置App.config中的连接字符串

    <connectionStrings>
        <add name="BloggingContext"
             connectionString="Data Source=localhost;port=3306;Initial Catalog=dbCodeFirstSample;user id=root;password=111111"
             providerName="MySql.Data.MySqlClient"/>
      </connectionStrings>

    4 新建Model及DbContext子类。

    Models

    public class Blog
        {
            public int BlogId { get; set; }
            public string Name { get; set; }
            public string Url { get; set; }
            public virtual List<Post> Posts { get; set; }
        }
    
        public class Post
        {
            public int PostId { get; set; }
            public string Title { get; set; }
    
            public int BlogId { get; set; }
            public virtual Blog Blog { get; set; }
        }

    DbContext子类BloggingContext,用来对存储的Blogs及Posts进行CRUD操作。

    [DbConfigurationType(typeof(MySqlEFConfiguration))]
        public class BloggingContext : DbContext
        {
            public DbSet<Blog> Blogs { get; set; }
            public DbSet<Post> Posts { get; set; }
        }
    

    5 对Console中的Main方法添加测试类,查看是否成功生成相关数据库表。

    static void Main(string[] args)
            {
                using (var db = new BloggingContext())
                {
                    // Create and save a new Blog 
                    Console.Write("Enter a name for a new Blog: ");
                    var name = Console.ReadLine();
    
                    var blog = new Blog { Name = name };
                    db.Blogs.Add(blog);
                    db.SaveChanges();
    
                    // Display all Blogs from the database 
                    var query = from b in db.Blogs
                                orderby b.Name
                                select b;
    
                    Console.WriteLine("All blogs in the database:");
                    foreach (var item in query)
                    {
                        Console.WriteLine(item.Name);
                    }
    
                    Console.WriteLine("Press any key to exit...");
                    Console.ReadKey();
                } 
            }

    6 按F5运行,并且数据库中已经建立了相应的数据表

  • 相关阅读:
    svn 提交时强制注释、不允许指定的文件类型的钩子写法
    开源跨平台网络库(lxnet)
    关于android studio的配置记录
    一般处理程序(ashx)对session处理摘要
    利用反射代替switch -转
    c#+jquery.autocomplete.js
    C#+ajaxupload实现图片上传
    几种常见SQL分页方式效率比较-转
    js页面跳转
    C#编码规范-转
  • 原文地址:https://www.cnblogs.com/maigc249/p/4535248.html
Copyright © 2011-2022 走看看