经验总结13--EF配置

Posted mqxnongmin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了经验总结13--EF配置相关的知识,希望对你有一定的参考价值。

EF配置,开发前的准备及步骤。

使用V22013和EF6.1。

1.使用VS新建MVC项目。

2.创建实体类。

3.配置web.config的数据库链接字符串。

<connectionStrings>
? ? <add name="SQLConnString" connectionString="Server=地址;Database=数据库名;integrated security=true;User Id=账户;Password=password" providerName="System.Data.SqlClient"/>
? </connectionStrings>

4.创建继承DbContex的上下本。并指定数据库。

public OrderDbContext(string “SQLConnString”)?: base(“SQLConnString”)

5.DbContex映射数据库。

public DbSet<Order> Orders { get; set; }

6.DbContex配置字段限制条件。两种方式,一种是直接在OnModelCreating写。还有一种是单独写配置文件,建议另外一种。

protected override void OnModelCreating(DbModelBuilder modelBuilder)
? ? ? ? {
? ? ? ? ? ? modelBuilder.Configurations.Add(new OrderConfig());
? ? ? ? }

7.编写配置文件OrderConfig。

?public class OrderConfig : EntityTypeConfiguration<Order>
? ? {
? ? ? ? public OrderConfig()
? ? ? ? {
? ? ? ? ? ? this.Property(o => o.Name).HasMaxLength(50);
? ? ? ? ? ? this.Property(o => o.Address).HasMaxLength(50);
? ? ? ? }
? ? }

8.初始化数据库。可配置策略。下一章介绍策略。

public OrderDbContext(string ConnectionString)
? ? ? ? ? ? : base(ConnectionString)
? ? ? ? {
? ? ? ? ? ? Database.SetInitializer<OrderDbContext>(new?OrderInitializer());
? ? ? ? }

?public class OrderInitializer : CreateDatabaseIfNotExists<OrderDbContext>
? ? {
? ? ? ? protected override void Seed(OrderDbContext context)
? ? ? ? {

//唯一
? ? ? ? ? ? context.Database.ExecuteSqlCommand("CREATE UNIQUE INDEX IX_Order_Name ON Orders (Name)");
? ? ? ? }
? ? }

注意:仅仅要一调用OrderDbContext里面的方法,即生成数据库。

以上是关于经验总结13--EF配置的主要内容,如果未能解决你的问题,请参考以下文章

电商项目经验总结-2

linux经验总结

centos7 网卡的配置(个人工作经验总结)

Android Gradle构建经验总结

PHP经验总结序言

Qt项目架构经验总结