C# 实体框架代码首先使用不同项目中的模型
晚上,, 我相信这可能很简单。。。但是我做错了什么 我正在尝试创建一个包含3个(目前)项目的解决方案:C# 实体框架代码首先使用不同项目中的模型,c#,asp.net-mvc,entity-framework-6,C#,Asp.net Mvc,Entity Framework 6,晚上,, 我相信这可能很简单。。。但是我做错了什么 我正在尝试创建一个包含3个(目前)项目的解决方案: MCV网络应用程序 模型 DAL(实体框架) 我希望将模型保留在与UI和DAL不同的项目/组件中,因为模型将在项目之间可重用,我们可能希望交换DAL等,而不必与模型等混为一谈 不管怎么说,还是要解决这个问题 我在模型项目中创建了几个类,如: public class Client { public int ClientID { get; set; } public string
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; }
}
公共类客户端
{
public int ClientID{get;set;}
公共字符串名称{get;set;}
公共字符串地址{get;set;}
公共字符串PhoneNumber{get;set;}
公共字符串注释{get;set;}
公共虚拟联系人BillingContact{get;set;}
公共虚拟ICollection联系人{get;set;}
公共虚拟ICollection发票{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;
}
}
使用System.Data.Entity;
使用DBDS.Invoice.Models;
命名空间DBDS.Invoice.DAL.EF
{
公共类InvoiceDataContext:DbContext
{
公共数据库集客户;
}
}
我已经在DAL项目上启用了迁移,添加了一个迁移,并称之为更新数据库-数据库已经创建,但没有表
不管怎么说,我确信我很忙,任何帮助都会被感激的
谢谢
客户端
需要是实体框架的属性才能获取它
public class InvoiceDataContext : DbContext
{
public DbSet<Client> Clients { get; set; }
}
public类InvoiceDataContext:DbContext
{
公共数据库集客户端{get;set;}
}
我相信您的客户机
应该是一个带有{get;set;}
的属性,而不是一个字段。i、 e.:公共数据库集客户端{get;set;}
哈哈,你知道我说我肯定在做一些密集的事情吗?!我们中的两个人看了代码,没有发现。。。这是最难发现的简单而明显的事情!谢谢我将作为应答连接字符串重新发布-是的,德勒发现了我的简单错误!关于dev中的迁移,对于我来说,这主要是一个有点混乱的应用程序,让我先跟上代码的速度&迁移,我们不能在生产中使用它们,因为dba不允许(不要问),我们做的很多事情都使用Sybase12,它不能很好地与EF配合,所以我们无论如何也不能真正使用它。谢谢你的帮助!告诉过你我很笨!谢谢你的帮助。