我对构建可配置 ASP.NET MVC 3 UI应用程序感兴趣,我的意思是在整个XML配置中设置所有UI元素属性和属性(可以使用其他一些UI进行编辑)我在谷歌上搜索了一些平台、模式或常见的方法,可以达到这个目标,但我没有找到太多。
- 我的问题是如何读取XML和渲染 HTML 元素,它是否通过JavaScript ( jQuery )?
- 什么是最好的 html 命名和筑巢策略?(我知道这是不是真正的问题,而是在某些模式的情况是必要的更容易元素遍历 )
- 是否有任何可以重用的代码为了这个需求?
谢谢。
很难确切地说出您要查找的内容。
如果 XML 是要显示的数据,则提供以下一些选项:
- 使用 XSLT 将 XML 转换为 Html。
- 根据您的目标用户,您甚至可以通过在移交给浏览器的 XML 中分配 XSLT 来让浏览器执行此操作。将 XML 直接返回到浏览器,而不是 HTML 或 ViewResult。
- 另一种方法是在操作方法中应用转换并将其作为字符串返回(而不是返回 ViewResult)。
- 另一种选择是实现 XmlActionResult。您会发现在 MVC 中实现操作结果很简单 asp.net。在控制器上,返回包含要显示的数据的 XmlActionResult。XmlActionResult 应用 XSLT 转换。
- 使用自定义代码将 XML 转换为 Html。与 XSLT 转换一样,可以直接在操作方法中执行此操作(通过调用在其他地方定义的常用方法),也可以通过定义自己的操作结果来执行此操作。
如果 XML 不是数据,而只是您希望如何显示模型中的内容:
- 你几乎在定义一个ViewEngine。您希望在xml中定义视图,而不是aspx,razor或任何其他语言。如果你自己滚动,它将受到限制,如果你使用第三方(如果你找到它),你将不得不处理它定义的语言。
- 您可以将动态数据与 asp.net MVC 结合使用。我不确定该控件是否可以在 asp.net MVC 视图中使用,但值得一试搜索。
- 可以在视图中使用 DisplayFor 方法,并为所有简单类型定义模板。将其与您定义的一些帮助程序相结合,您可以将您拥有的任何配置应用于字段(即使这不会显示任何内容)。
您可以参考基于实现 XSLT 视图引擎的博客
MVCDynamicForms 是您可以考虑的不错选择
XSLTViewEngine 如果你对 XML 感兴趣,也可以考虑与 XSLT 一起转换为 HTML。