【问题标题】:Invalid Column Name using Entity Framework使用实体框架的列名无效
【发布时间】:2016-11-18 07:27:08
【问题描述】:

我正在使用 Entity Framework 生成我的模型,虽然模型本身的生成成功,但在查询数据库时出现以下错误。

列名“EmployeeDealer_EmployeeDealerID”无效

抛出异常的代码是:

var employee = db.Employees.Where(emp => emp.EmployeeID == employeeId).FirstOrDefault();

这一切看起来都相当简单,所以我假设 EF 无法生成正确的键或 ORM 类?

这是相关表的数据库架构。

任何有关如何解决此问题的帮助将不胜感激。

【问题讨论】:

标签: c# .net entity-framework


【解决方案1】:

我最终通过更改修改后的类解决了这个问题。在 Employee 类的构造函数中,我删除了以下语句:

this.Employees = new List<Employee>();

还删除了以下属性

public virtual ICollection<Employee> Employees { get; set; }

然后在我从构造函数中删除的 EmployeeDealer 类中:

this.Employees = new List<Employee>();

还有财产

public virtual ICollection<Employee> Employees { get; set; }

所以我猜问题在于为多对多表自动生成实体,您需要确保正确生成其他两个表之间的引用(我假设是导航路径)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-26
    • 1970-01-01
    • 1970-01-01
    • 2014-08-28
    • 1970-01-01
    • 2012-08-24
    相关资源
    最近更新 更多