繁体   English   中英

实体框架代码首先使用不同项目中的模型

[英]Entity Framework Code first with models in a different project

晚上,我相信这可能很简单......但我做错了。

我正在尝试使用3个(现在的)项目创建一个解决方案:

  1. MCV Web App
  2. 楷模
  3. DAL(实体框架)

我想将模型保存在UI和DAL的不同项目/程序集中,因为模型可以在项目之间重用,我们可能想要更换DAL等而不必弄乱模型等...

无论如何,解决问题。

我在我的模型项目中创建了一些类,如:

public class Client
{
    public int ClientID { get; set; }
    public string Name { get; set; }
    public string Address { get; set; }
    public string PhoneNumber { get; set; }
    public string Notes { get; set; }
    public virtual Contact BillingContact { get; set; }
    public virtual ICollection<Contact> Contacts { get; set; }

    public virtual ICollection<Invoice> Invoices { get; set; }
}

然后我在DAL中创建了一个DBContext

using System.Data.Entity;
using DBDS.Invoice.Models;

namespace DBDS.Invoice.DAL.EF
{
    public class InvoiceDataContext : DbContext
    {
        public DbSet<Client> Clients;
    }
}

我已经在DAL项目上启用了迁移,添加了一个迁移并调用了update-database - 数据库已经创建但没有表。

无论如何,我确定我是密集的 - 任何帮助将不胜感激。

谢谢

Clients需要成为实体框架的一个属性才能获取它

public class InvoiceDataContext : DbContext
{
    public DbSet<Client> Clients { get; set; }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM