2

我正在研究一个基于 ASP.NET MVC 的 CMS,它提出了一个相当极端的情况。系统必须允许用户根据不同的字段添加自定义内容类型,并且对于每个字段,都可以添加选项和验证。问题是一切都存储在一个复杂的数据库中,并在运行时使用 LINQ 提取。

我对 ASP>NET MVC 很陌生,所以我想到了以下困境我应该如何制作内容创建视图,以便表单助手不在视图代码中预定义,而是根据字段的类型加载?我是否必须创建一个工厂类来检查字段的类型属性的值,然后根据它返回一个帮助器,或者有更好的方法来做到这一点。这对我来说似乎很死板,因为每当我在 Fieldtypes 表中进行更改时,我都必须确保也为该新类型创建一个检查。

public class CType {
  string Name; //e.g Post Article etc
  List<ContentData> data ;
...
}

public class ContentData {
  string Data; // Basically this is the data stored for each field
  FieldInstance fieldInstance; 
...
}

public class FieldInstance {
  string Title; // e.g Title Body etc.

  FieldType Type ; // e.g textbox textarea image checkbox etc
...
}

public class FieldType {
  string Type; // e.g textbox textarea image checkbox etc
...
}
4

2 回答 2

1

我在你的未来看到了一个 HTML 助手。HTML Helper 可以在运行时处理您的模型并为视图输出适当的 HTML。如果你走那条路,我建议你了解 StringBuilder 和 TagBuilder 类。它们将简化事情并帮助您的 HTML Helper 更具可读性。

于 2010-03-12T17:48:41.027 回答
0

我不知道模板化助手的概念。当您对某事不熟悉时,就会发生这种情况。差不多,这就是解决我的问题的原因

http://msdn.microsoft.com/en-us/library/ee308450%28VS.100,printer%29.aspx

于 2010-03-16T10:14:57.027 回答