gpt4 book ai didi

asp.net - 为什么 MVC 会自动扩展虚拟 URL?

转载 作者:行者123 更新时间:2023-12-02 00:01:27 25 4
gpt4 key购买 nike

在我的 Layout.cshtml文件我有以下行:

<link rel="stylesheet" href="~/Content/bootstrap.css" />

我的假设是,因为我没有包括 Url.Content()调用,它实际上只会呈现我写的内容,但不会自动扩展虚拟 URL。这个假设是错误的 - 生成的 HTML 确实包含文件的正确路径,而不是我输入的虚拟路径。

如果我包装 <link><script>

<script type="text/html">
<link rel="stylesheet" href="~/Content/bootstrap.css" />
</script>

则该 URL 不会展开。

ASP.NET MVC 的哪一部分自动解析 HTML,有没有办法控制它?

最佳答案

这是 Razor2 和 ASP.NET MVC 4 中包含的一项新功能,旨在通过不必使用 Url.Content 让生活更轻松。无处不在。

http://www.davidhayden.me/blog/asp.net-mvc-4-the-new-tilde-slash-feature-in-razor-2

该功能仅适用于标准 HTML 属性,这就是为什么您不能在 <script> 中使用它的原因标签或其他任何地方。

您可以使用简单的输出写入来解决此问题:

<link rel="stylesheet" href="@("~/Content/bootstrap.css")" />

关于asp.net - 为什么 MVC 会自动扩展虚拟 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21161924/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com