实体框架7逆向工程工具不会将POCO生成为部分。有具体原因吗?
在EF7之前我们曾经获得过部分类,所以我可以扩展POCO的功能。我使用部分类将 Id 属性映射到主键属性,如下所示;
public partial class User: EntityBase
{
public override int Id
{
get { return UserId; }
set { UserId= value; }
}
}
我怎样才能在EF7中这样做? 谢谢。
答案 0 :(得分:0)
dnx ef dbcontext scaffold-templates EntityFramework.SqlServer
scaffold-templates命令可用于生成 EntityFramework.SqlServer.Design.DbContextTemplate.cshtml 和 EntityFramework.SqlServer.Design.EntityTypeTemplate.cshtml 模板文件脚手架中使用的项目目录。
EntityTypeTemplate自定义示例,用于添加部分类支持:
....
....
@:namespace @Model.Namespace
@:{
@: public partial class @Model.EntityType.Name
@: {...
....
....
....
答案 1 :(得分:0)
这只是一种疏忽。在此提出了一个实体框架错误(请参阅https://github.com/aspnet/EntityFramework/issues/3428)。它已于今天(2015年10月16日)修复 - 并将在今晚的夜间建造中。
作为一种解决方法,上面提到的scaffold-templates
方法现在应该有效。
或者您也可以自由地手动搜索和替换,以便在生成任何POCO类后将其添加到任何POCO类中(尽管每次再次生成它时都会被覆盖)。
答案 2 :(得分:0)
我使用6.1.3并且模型生成为partials。