最近我创建了一个 View 引擎的尖峰,其中 View 是普通类,内容是通过使用有趣的 using
范围 block 创建的。
代码和简单的示例站点可在 http://code.google.com/p/sharp-view-engine/ 获取。
在这里我想听听您对这个想法的看法。是完全奇怪还是有人喜欢它?
最佳答案
我实际上不喜欢那样。
我可以同意 DSL(例如解析器组合器或在数据上下文中生成 XML 节点),但在这种情况下,我认为太多了正在被放入代码中。最终,这只会使边界变得复杂并导致代码难以维护。 (您已经可以执行相同的操作,但只需使用“标准”Web 控件即可更加详细。您始终可以在 C# 中使用 {subblock}
来限制变量范围。)
我更喜欢使用的方法是带有绑定(bind)的模板(但没有“模板中的代码”)。这使得“设计师”(希望不是我,或下一个人)可以轻松地编辑他们认为合适的 View 布局。但是,核心逻辑(可用控件和绑定(bind))保留在代码中 - 整洁。 (模板的另一个优点是,如果它们位于外部,则不需要对每一个微小的更改进行重新编译。)
简单性和可维护性就像......禅宗。
关于asp.net-mvc - 您想要完全用代码创建 View 的 ASP.NET MVC View 引擎吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2563270/