2

所以我有一个使用 EF5/Code First 编写的深度连接 POCO,它与许多类和 Enum 属性具有一对一和一对多的关系,例如 Gender、AddressType 和很快。

一个非常简化的视图:

public class Contact
{
   public string FullName { get; set; }

   public string Title { get; set;

   public GenderEnum Gender { get; set; }

   public Country CountryOfBirth { get; set; }

   public string Address { get; set; }
}

我已经为这个对象和其他对象提供了一个 DbContext,它还为国家列表和我需要表示的各种其他内容创建了很多种子数据。

但是,当我像这样使用 MvcScaffolding 时:

Scaffold Controller Model.Contact -Repository -DbContext Model.Context

它创建一个 _CreateOrEdit.cshtml 视图,显示我的联系人模型中的字符串字段,但不提供枚举或任何相关类的下拉列表。

那么,我如何告诉 MvcScaffolding 可以从 Context 加载特定属性的 DataType,还是我需要手动执行此操作?

4

2 回答 2

3

我认为您无法在命令行中指定,但您始终可以使用自定义模板。检查这个史蒂文安德森的帖子

最好的事情之一是您只需在 CodeTemplates 目录上创建自定义模板,它将自动可用,如果您将文件添加到源代码控制中,它将对您的团队可用

于 2013-04-11T15:26:35.157 回答
1

事实证明要简单得多。

我所做的只是使用类关系,而实体框架对此很满意,但 MvcScaffolding 并没有识别这些关系。

一旦我为实际类型添加了一个支持 Id 字段和一个 ForeignKey 属性,MvcScaffolding 就直接将其拾取。

于 2013-04-12T09:19:09.373 回答