EntityFramework 开始小试

1 Install-Package EntityFramework

2 创建实体类

public class Blog
{
    public int BlogId { get; set; }
    public string Name { get; set; }
}

3 创建context

public class EFTestContext : DbContext
{
public EFTestContext() : base("name=sqlmonitor") { }


public DbSet<CGroup> CGroups { get; set; }
public DbSet<Address> Addresses { get; set; }
public DbSet<Contact> Contacts { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<Contact>().HasOptional(c => c.Address)
.WithOptionalDependent(add => add.Contact);
modelBuilder.Entity<CGroup>().HasMany(c => c.Contacts)
.WithRequired(c => c.CGroup).WillCascadeOnDelete(false);
//modelBuilder.Entity<EasyUIEFWebApp.DAL.EFModels.Contact>().HasOptional(c => c.CGroup)
// .WithMany(c => c.Contacts).WillCascadeOnDelete(true);
}
}

4 设置数据链链接  注意要和context的name一致,否则创建本地数据库

<connectionStrings>
    <add name="sqlmonitor" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=sqlmonitor;Integrated Security=SSPI;" providerName="System.Data.SqlClient"/>
  </connectionStrings>
5 Enable-Migrations
在nuget中执行上面的命令,如果报错,1请看是否书写错误,2是否是ef所在的项目,3编译后试试4 看看nuget的版本是否太老
6 update-database

更新到数据库。 注意,有的文章写的是Add-Migrations InitialCreate 我执行的时候报错了,(应该是已经有数据库的缘故没试)没有解决,
用 update-database 则没有报错,并且正确更新到数据库。
Update-Database -Verbose
7  Add-Migration 注意后面要跟名字, 比如 Add-Migration modifyusertable
类似版本控制的东东

 

posted @   过错  阅读(179)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示