gpt4 book ai didi

c# - 如何通过 EF Code First 使用遗留类?

转载 作者:太空宇宙 更新时间:2023-11-03 14:08:03 25 4
gpt4 key购买 nike

我有大量用 C# 编写的遗留类,我想将它们与 EF Code First 一起使用。

需要对这些类执行哪些操作才能使它们可用于 EF Code First?

最佳答案

如果您的类是 POCO 实体类,那么首先使用带有 Entity Framework 代码的类真的很容易。 FK 关系需要在具有这些类型关系的实体中定义。示例:

public virtual ICollection<CmsCategoryType> CategoryTypes { get; set; } 

其次,您需要创建一个 DBcontext 类,它实际上会为您连接所有内容。示例:

public class CampaignContext :  DbContext
{
public DbSet<CmsContent> Contents { get; set; }
public DbSet<CmsCategoryType> CategoryTypes { get; set; }
}

预定义连接字符串也是一个好主意。示例:

<add name="CampaignContext" connectionString="Data Source=localhost\SQLEXPRESS;
Initial Catalog=Campaigns;
Integrated Security=True"
providerName="System.Data.SqlClient"/>

现在,当您第一次运行该应用程序时, Entity Framework 代码首先会转到连接字符串中指定的 sql 服务器,使用预定义的名称创建数据库,获取您的实体类并使用主表和外表创建表关键关系,通常通过 dbcontext 为您连接一切。

需要注意的是,连接字符串名称和您的 dbcontext 应该具有相同的名称,按照惯例 dbcontext 会查找匹配的名称。此外,您可能会错过一些您认为应该拥有的关系。同样,这是需要在相关实体之间来回设置的虚拟 ICollections。

希望这对一些人有所帮助,祝你的项目好运。

关于c# - 如何通过 EF Code First 使用遗留类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8769583/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com