c# - 使用 Entity Framework 4.0 中的上下文确定实体的主键

标签 c# .net entity-framework reflection

我有几个实体是从我的 Entity Framework 数据模型生成的。在 .edmx 文件中,我可以看到标记为主键的属性。我的 POCO 的/自定义上下文是从此模板和 T4 模板生成的。

我正在寻找一种方法来使用 Entity Framework 4.0 的反射来找出我的实体的主键。是否有我需要设置的属性,以便在生成它们时在我的 POCO 上进行设置?我的上下文中是否有可用于向下钻取和查找此信息的属性?

最佳答案

更新了我的 T4 模板以添加以下内容:

<#  if(ef.IsKey(edmProperty))
{
#>
[EdmScalarPropertyAttribute(EntityKeyProperty=<#=code.CreateLiteral(true)#>)]
<#
}
#>

然后使用反射找到 EntityKeys。

关于c# - 使用 Entity Framework 4.0 中的上下文确定实体的主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3357209/

相关文章:

c# - 从网站获取 Xml 文件

c# - 如何在 C# 中遍历 Excel 上的单元格?

C# lambda 引用输出

c# - 在 ASP.NET WebAPI 中检索不记名 token

c# - 寻找一种在 azure blob 存储中编辑 JSON 文件的方法,而无需从 C# MVC 代码下载文件

c# - 重用 SqlCommand?

C# : Out of Memory exception

c# - 如何在 Entity Framework 中完全锁定一行

c# - 当第一个项目存在实体验证错误时,保存项目列表时出错

c# - 使用 Unity 时出现 Entity Framework 错误