小编Den*_*isC的帖子

使用实体框架生成的错误选择查询(神秘的额外列)

我正在尝试让一个简单的 MVC 网站正常工作。在其中,我使用数据库和实体框架与它进行通信(正如我在其他项目中所做的几个月一样)。

在我尝试从数据库中的特定表中检索之前,一切都很顺利。如果我查询,则 EF 神秘生成的选择包含该表(或该数据库中的任何表)中不存在的列。这当然会引发异常,抱怨列不存在:

说明:在执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其在代码中的来源的更多信息。

异常详细信息:System.Data.SqlClient.SqlException:列名“PerformerFolder_Id”无效。

我创建了一个UnitOfWork对象,它使用存储库模式来检索数据,并使其尽可能简单,我公开了DataContext以便我可以手动查询以进行测试:

var test = loUnitOfWork.Context.Set<DAL.File>();
Run Code Online (Sandbox Code Playgroud)

DAL.File是由POCO发生器生成的类:

public partial class File : BaseEntity
{
    public int Id { get; set; }
    public string FilePath { get; set; }
    public string FileName { get; set; }

    public virtual ICollection<FilePerformer> FilePerformerCollection { get; set; }
    public virtual ICollection<FileProperty> FilePropertyCollection { get; set; }

    public File()
    {
        FilePerformerCollection = new List<FilePerformer>();
        FilePropertyCollection = new List<FileProperty>();
        InitializePartial();
    }
    partial …
Run Code Online (Sandbox Code Playgroud)

c# linq entity-framework-6

5
推荐指数
1
解决办法
1202
查看次数

标签 统计

c# ×1

entity-framework-6 ×1

linq ×1