mvc脚手架和提示查找枚举和相关类

本文关键字:枚举 查找 脚手架 提示 mvc | 更新日期: 2023-09-27 18:08:32

所以我有一个深度连接的POCO,我使用EF5/Code First编写,它具有一对一和一对多的关系,与许多类和Enum属性,如性别,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,它还为Country列表和我需要表示的各种其他东西创建了许多Seed数据。

然而,当我来使用mvc脚手架这样:

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

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

那么,我如何告诉mvc脚手架,一个特定属性的DataType可以从上下文加载,或者我需要手动做这个吗?

mvc脚手架和提示查找枚举和相关类

我认为您不能在命令行中指定,但您总是可以使用自定义模板。查看Steven Anderson的帖子

最好的事情之一是,你只要在CodeTemplates目录下创建自定义模板,它就会自动可用,如果你在源代码控制
中添加文件,它就会对你的团队可用。

其实简单多了

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

一旦我添加了一个备用Id字段和一个ForeignKey属性到实际的类型,MvcScaffolding直接拾取它