代码之家  ›  专栏  ›  技术社区  ›  Alexander Beletsky

在ASP.net MVC 2.0中使用Url.Content

  •  7
  • Alexander Beletsky  · 技术社区  · 15 年前

        <script src="<%: Url.Content("~/Scripts/jquery-1.4.1.min.js") %>" type="text/javascript"></script>
    

    编译错误 描述:编译服务此请求所需的资源时出错。请检查以下特定的错误详细信息并适当修改源代码。

    编译器错误消息:CS0103:当前上下文中不存在名称“Url”。

    我找不到Url命名空间的声明位置,是否应使用其他程序集?

    3 回复  |  直到 15 年前
        1
  •  8
  •   Erik    15 年前

        2
  •  2
  •   jim tollan    15 年前

    亚历克斯,

    试着添加下面的扩展方法,看看它是否能让您更进一步

    public static partial class HtmlHelperExtensions
    {
        public static string Script(this HtmlHelper html, string path)
        {
            var filePath = VirtualPathUtility.ToAbsolute(path);
            HttpContextBase context = html.ViewContext.HttpContext;
            // don't add the file if it's already there
            if (context.Items.Contains(filePath))
                return "";
            return "<script type=\"text/javascript\" src=\"" + filePath + "\"></script>";
        }
    }
    

    <%=Html.Script("~/Scripts/jquery-1.4.2.min.js")%>
    

    我知道它不会直接回答你的问题,但会让你向前移动。。。

        3
  •  1
  •   awrigley    15 年前

    原始帖子(仍然是UrlHelper类):

    Content():这里的Url是一个helper方法,有点像Html或Ajax helpers。

    System.Web.Mvc.UrlHelper帮助程序

    也就是说,名称空间是System.Web.Mvc。

    所以很奇怪的是,如果你真的在使用上面详细描述的规范,你就不能直接使用它。