我编写了一些 razor 助手,这些助手使用的函数包括 T4MVC 生成的扩展方法。我现在想将这些移动到一个控件库中,以便它们可以在多个 mvc 应用程序中使用。我最初使用的想法是我可以将模板的副本放入控件库中,这很有效,缺点是应用程序中使用的模板然后在相同的命名空间中重新生成相同的扩展方法。因为我正在使用一些需要 ActionResult 接口的扩展,所以我确实需要命名空间保持不变。
我想知道的是,是否有一种已知的方法来使用控件库中的扩展以及引用该库的应用程序,或者是否需要更改模板以便可以通过生成或不生成静态扩展方法设置文件中的标志?我还想知道静态扩展是否可以包含在与模板一起存在的单独 cs 文件中。所以我们有 2 个类 T4Extensions 和 DynamicT4Extensions?
不过,这可能会强制使用接口 IT4MVCActionResult,