Entity framework 实体框架6.1代码首先来自现有数据库-将外键添加到T4模板
我正在使用EF 6.1的新功能-首先从现有数据库中获取代码-除了每个导航属性之外,我还想添加一个外键。 我从nuget添加了默认的T4模板,但我不知道如何编辑它。我想这应该是一个很常见的任务,但我找不到任何例子。。。 谢谢Entity framework 实体框架6.1代码首先来自现有数据库-将外键添加到T4模板,entity-framework,ef-code-first,entity-framework-6,t4,Entity Framework,Ef Code First,Entity Framework 6,T4,我正在使用EF 6.1的新功能-首先从现有数据库中获取代码-除了每个导航属性之外,我还想添加一个外键。 我从nuget添加了默认的T4模板,但我不知道如何编辑它。我想这应该是一个很常见的任务,但我找不到任何例子。。。 谢谢 Matteo您可以修改T4模板,该模板用于按照中的说明生成实体类。只需按照BriceLambson在4月28日下午6:22发表的评论中的指示操作即可 项目中需要以下结构: 代码模板 EFModelFromDatabase EntityType.cs.t4 文件En
Matteo您可以修改T4模板,该模板用于按照中的说明生成实体类。只需按照BriceLambson在4月28日下午6:22发表的评论中的指示操作即可 项目中需要以下结构:
- 代码模板
- EFModelFromDatabase
- EntityType.cs.t4
- EFModelFromDatabase
<#
}
foreach (var navigationProperty in entityType.NavigationProperties)
{
if (!first)
{
WriteLine(string.Empty);
}
else
{
first = false;
}
#>
public virtual <#= code.Type(navigationProperty) #> <#= code.Property(navigationProperty) #> { get; set; }
<#
}
#>
公共虚拟{get;set;}
对这样的事情:
<#
}
foreach (var navigationProperty in entityType.NavigationProperties)
{
if (!first)
{
WriteLine(string.Empty);
}
else
{
first = false;
}
#>
public int <#= code.Property(navigationProperty) #>ID { get; set; }
[ForeignKey("<#= code.Property(navigationProperty) #>ID")]
public virtual <#= code.Type(navigationProperty) #> <#= code.Property(navigationProperty) #> { get; set; }
<#
}
#>
公共int ID{get;set;}
[外国钥匙(“ID”)]
公共虚拟{get;set;}
之后,您可以使用-先从现有数据库中编写代码-来生成实体
希望这有帮助
更新
不用手动创建目录结构,只需像Matteo Sganzetta那样安装nuget包
EntityFramework.CodeTemplates.CSharp
,您安装了哪个nuget包?这是一个EntityFramework.CodeTemplates.CSharp,如本页所述,非常感谢今晚我将尝试它