实体框架 - 添加其他属性

时间:2017-03-03 14:22:57

标签: sql entity-framework data-annotations

我有一个查询表(TableA)的sql,并通过表连接添加additonal infos(列)。我希望这个sql由ef(DbContext.Database.SqlQuery)执行,结果映射到自动生成的类(TableA),并在位于单独文件中的分部类中添加了附加属性。我试过了使用数据注释[列("名称")]但新列不会被映射。我该如何解决这个问题?

这里有更多细节:

此代码有效,所有字段都已映射:

string sql = 
"SELECT ta.* FROM TableA ta
LEFT OUTER JOIN TableB tb
ON ta.SomeID = tb.SomeID
WHERE tb.SomeCol > 1";

var list = DbContext.Database.SqlQuery<TableA>(sql).ToList();

此代码有效,但未映射其他字段: string sql =

"SELECT ta.*, tb.SomeOtherCol1, tb.SomeOtherCol2 FROM TableA ta
LEFT OUTER JOIN TableB tb
ON ta.SomeID = tb.SomeID
WHERE tb.SomeCol > 1";

var list = DbContext.Database.SqlQuery<TableA>(sql).ToList();

我已经像这样扩展了部分类TableA。

public partial class TableA
{
    [Column("SomeOtherCol1")]
    public string SomeOtherCol1 { get; set; }

    [Column("SomeOtherCol2")]
    public string SomeOtherCol2 { get; set; }
}

0 个答案:

没有答案