<ul>
<li><% Html.ActionLink(StringHelper.TryGetLocalString("Something"),
"Blah", "Blah"); %></li>
</ul>
我必须先将StringHelper类设置为public,然后才能在部分视图中看到它。
为什么?
(旁注:解析为本地字符串将在我的控制器中完成而不是在视图中(布局),但这是一个很好的快速示例。)
谢谢你的帮助,卢克
答案 0 :(得分:3)
由于StringHelper很可能没有编译到与MVC站点的其余代码相同的DLL中,因此它无法访问内部事物。
当您将控制器,视图等作为默认MVC网站设置(以及调试时的工作方式)将常规代码编译为DLL,然后单独编译页面/视图时,就会出现这种情况。当您在发布网站时设置“可更新性”时,也会发生这种情况。
答案 1 :(得分:2)
当Web服务器加载应用程序时,将编译ASP.NET中的视图(或aspx / ascx文件)。这可能意味着他们在另一个集会中,你的课程是内部的......你明白了。