我是MVC和ADO.net实体框架的新手。我不想为每个实体创建一个编辑/显示,而是希望控制器基类根据存储在表中的元数据生成视图和验证代码 - 这些都是沿着这些行。
我会想象这样的事情已经完成,或者有充分的理由不去做。任何见解或建议都表示赞赏。
答案 0 :(得分:1)
可以使用Html.DisplayForModel()或Html.EditorForModel()完成显示。这会为要呈现的实体生成一个视图,但它可能看起来不像您喜欢的那样。我认为它可能会注入验证器,但这是基于数据注释,而不是LINQ to Entity DB元数据。
据我所知,我不知道L2E模型元数据中有什么东西自然糟糕......我也在考虑自己写一些东西,因为它很方便。
HTH。
答案 1 :(得分:0)
我不想回答我自己的问题,但我发现了一个库 - [ASP.Net Dynamic Forms] [1] - 这正是我所需要的。
编写得很好,不太复杂,易于扩展。源代码使实现非常开放,到目前为止,我已经能够轻松地创建一个表单设置所在的sql层,代码看起来像这样 -
`string controllerName = controllerType.ToString();
Form form = new Form();
List<FormSetting> settings = new DataEntities().FormSettings.Where((c => c.ControllerName == controllerName)).ToList();
foreach (FormSetting setting in settings)
{
Field fieldToAdd = CreateField(setting);
form.Fields.Add(fieldToAdd);
}`