我正在使用Entity Framework 5和“EF 5.x DbContext Generator”(数据库优先)提供的T4代码生成模板。我正在尝试将数据库模式和表名作为属性包含在我的实体类中,例如:
public string _SchemaName {
get {
return "SCHEMA NAME HERE";
}
}
public string _TableName {
get {
return "TABLE NAME HERE";
}
}
有没有人有幸使用上述代码生成模板确定Schema / Table名称?
答案 0 :(得分:0)
我完全同意@ gert-arnold,如果你想保持代码清晰,你就不应该这样做。使用类属性可能是实现目标的更好方法,但我不了解实体框架中的此类属性,此外,在数据库第一种方法中(假设您不会手动更改生成的类)。
我认为任何方式都不可能 - 不仅因为没有人在两年内回答你的问题,而且因为我可以指定架构的唯一地方(我熟悉)是:
.edmx图表属性(或文件:如果您使用文本编辑器打开它,您将看到以下内容 - 请注意XML属性Schema
)
<edmx:Edmx ...>
...
<EntityContainer Name="...StoreContainer">
<EntitySet Name="MyTable1" EntityType="Self.MyTable1" Schema="dbo" store:Type="Tables" />
... other tables description
</EntityContainer>
...
</edmx:Edmx>
查看this question了解详情。