我正在尝试从我的 MVC3 项目中减少/消除“魔术字符串”,并且想知道哪种方法会更好:
使用 MvcFutures 并执行如下操作:
var title = "Create New Customer"; Html.ActionLink (c => c.Create(), title , new { @class = "button", title = title });
使用 T4MVC
哪个选项更灵活、性能更好、在重构等方面更容易?
想法?
最佳答案
T4MVC,没有竞争。它让您可以使用(代码生成的)嵌套类和属性的层次结构来引用 View 和 Controller 操作。这种方法有几个好处——可以很容易地发现可用的选项,并且它提供了可能的最佳性能(与用于强类型的 lambda 方法相比,这无疑是一个巨大的胜利)。
使用 T4MVC 的虚拟 ActionResult 类编写您自己的扩展也非常容易。例如,我有一些 ActionImage 助手可以提取必要的路由信息以生成结果标记。
T4MVC 的唯一缺点是您需要使生成的代码文件保持最新。为此,您可以保持 .tt 文件处于打开状态或安装可自动运行 .tt 文件的扩展程序(例如 Chirpy)。
关于c# - T4MVC 或 MvcFutures 用于 View 中的强类型链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5111212/