使用Entity Framework CodeFirst模式創建新數據庫


開發環境

  • Visual Studio 2010 SP1
  • SQL Server Compact 4.0

演練步驟

  1. 打開Visual Studio;
  2. 新建Console應用程序Known.EFDemo;
  3. 創建Blog模型;
    public class Blog
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public List<Post> Posts { get; set; }
    }
    
    public class Post
    {
        public int Id { get; set; }
        public string Title { get; set; }
        public string Content { get; set; }
    }
    
  4. 右擊項目->管理NuGet程序包,搜索Entity Framework並安裝;或使用程序包管理器控制台運行命令Install-Package EntityFramework
  5. 創建BlogContext;
    public class BlogContext : DbContext
    {
        public DbSet<Blog> Blogs { get; set; }
    }
    
  6. 修改App.config文件,配置ConnectionString和SQL Server Compact數據提供者工廠;
    <connectionStrings>
        <add name="BlogContext" connectionString="Data Source=|DataDirectory|Blog.sdf" providerName="System.Data.SqlServerCe.4.0" />
    </connectionStrings>
    <system.data>
        <DbProviderFactories>
            <remove invariant="System.Data.SqlServerCe.4.0" />
            <add name="Microsoft SQL Server Compact Data Provider 4.0" invariant="System.Data.SqlServerCe.4.0" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
        </DbProviderFactories>
    </system.data>
    
  7. 修改Program並運行,成功后,可以在服務器資源管理器中查看自動生成的表結構及數據。
    using (var context = new BlogContext())
    {
        Console.WriteLine("請輸入博客名稱:");
        var name = Console.ReadLine();
        var blog = new Blog { Name = name };
        blog.Posts = new List<Post>();
    
        Console.WriteLine("請輸入隨筆標題:");
        var title = Console.ReadLine();
        Console.WriteLine("請輸入隨筆內容:");
        var content = Console.ReadLine();
        blog.Posts.Add(new Post { Title = title, Content = content });
    
        context.Blogs.Add(blog);
        context.SaveChanges();
    
        Console.WriteLine("保存成功!");
    }
    
  8. 當模型改變時,可以使用命令自動遷移數據庫,配置命令:Enable-Migrations –EnableAutomaticMigrations ;更新命令:Update-Database –Verbose 。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM