0

我的项目是使用 EF5 和 MVC4 开发的。我想为模型创建一个助手,在这个助手中,我需要获取模型的主键名称。

这是我的助手:

public static MvcHtmlString DialogForModel(this HtmlHelper html)
{
    object model = html.ViewData.Model;
    string primaryKeyName = GetPrimaryKeyNameForModel(model);
    ...
}

我发现模型内部有一个属性_entityWrapper。在这个属性里面有另一个EntityKeyEntityKeyNames

这些属性有我的主键名称和值,但我不知道如何访问它。

我怎样才能做到这一点?!

4

1 回答 1

0

我不确定你为什么需要它,但这可以解决你的问题。在里面创建带有 key 属性的 BaseEntity 类:

public class BaseEntity 
{
   public int Key { get; set; }
}

让你所有的 Model 类都继承自这个类:

public class SomeModelClass: BaseEntity 
{
    public string Prop{ get; set; }
}

在您的助手中,将您的模型转换为 BaseEntity 并获取 Key 值。

于 2013-10-27T11:57:46.390 回答