从类项目中导入Razor @helper
本文关键字:Razor @helper 导入 项目 | 更新日期: 2023-09-27 18:07:43
是否有办法从类项目(或另一个web应用程序项目)导入dll到web应用程序项目并重用@helper?如果不能实现这一点,Razor的web应用程序的可重用性几乎为零。
你可以这样做,但是你必须经过几个环节。
-
你需要获得RazorGenerator:"这是Visual Studio的自定义工具,允许在设计时而不是运行时处理Razor文件,允许将它们构建到一个程序集中,以便更简单地重用和分发。"
-
使用RazorGenerator,你可以在你的类库项目中创建.cshtml文件来声明
的文件中helper
函数。例如,在名为Foo.cshtml:@helper MyHelper(string parameter) {<text>@parameter</text>}
-
这些帮助程序将作为静态方法存在于表示.cshtml文件的静态类中。在上面的例子中,这将转化为
Foo.MyHelper
。 -
你可以从你的web应用程序的。cshtml文件中调用这些静态方法,就像任何其他静态方法一样。(假设您已经添加了正确的
using
指令,以指向包含您的助手的名称空间。)例如:<div>@Foo.MyHelper("hello world")</div>