我制作了一个自定义助手,我试图将其包含在所有页面中。
帮手:
namespace project.CacheBreaker
{
public static class CacheBreaker
{
public static void CacheBreak(
this UrlHelper url, string contentPath)
{
url.Content(contentPath);
}
}
}
我试图从以下方面公开它web.config
:
<system.web>
<pages>
<namespaces>
<add namespace="project.CacheBreaker"/>
</namespaces>
</pages>
</system.web>
尝试在视图中访问它时出现错误:
<script src="@Url.CacheBreak("~/Scripts/link.js")" type="text/javascript"></script>
其中指出:
"说明:编译所需资源时出错 来服务这个请求。请查看以下特定错误详细信息 并适当地修改您的源代码。”
“编译器错误消息:CS1061:‘System.Web.Mvc.UrlHelper’不包含 'CacheBreak' 的定义并且没有扩展方法 'CacheBreak' 接受 可以找到“System.Web.Mvc.UrlHelper”类型的第一个参数 (您是否缺少 using 指令或程序集引用?)”
我以为我已经采取了所有必要的步骤,为什么这个自定义方法不可用?