在 cshtml/razor 中使用 <script src="@microsoft/" 问题
Using <script src="@microsoft/" Issue in cshtml/razor
在脚本引用的 src 路径中使用 @ 符号时出现问题。
我使用的是 .cshtml 页面,所以 @ 是代码参考。通常 @@ 会取消 @ 符号,因此它会将其作为字符串读取,但它在以下示例中似乎不起作用。
<script>
var signalrPath = "~/lib/@@microsoft/signalr/dist/browser/signalr.js";
</script>
<script src="~/lib/@@microsoft/signalr/dist/browser/signalr.js"></script>
这转化为以下内容:
有什么简单的方法可以避免这种情况吗?
我可以制作一个 cshtml 字符串对象并将其插入其中,但这似乎没有必要。
@{
string signalR = "@microsoft";
}
<script src="~/lib/@signalR/signalr/dist/browser/signalr.js"></script>
使用显式 Razor 表达式:
<script>
var signalrPath = "@("~/lib/@microsoft/signalr/dist/browser/signalr.js")";
</script>
<script src="@("~/lib/@microsoft/signalr/dist/browser/signalr.js")"></script>
或者,我想你可以只做 @microsoft
部分,但我个人更喜欢将整个字符串放在一起:
<script src="~/lib/@("@microsoft")/signalr/dist/browser/signalr.js"></script>
在脚本引用的 src 路径中使用 @ 符号时出现问题。
我使用的是 .cshtml 页面,所以 @ 是代码参考。通常 @@ 会取消 @ 符号,因此它会将其作为字符串读取,但它在以下示例中似乎不起作用。
<script>
var signalrPath = "~/lib/@@microsoft/signalr/dist/browser/signalr.js";
</script>
<script src="~/lib/@@microsoft/signalr/dist/browser/signalr.js"></script>
这转化为以下内容:
有什么简单的方法可以避免这种情况吗?
我可以制作一个 cshtml 字符串对象并将其插入其中,但这似乎没有必要。
@{
string signalR = "@microsoft";
}
<script src="~/lib/@signalR/signalr/dist/browser/signalr.js"></script>
使用显式 Razor 表达式:
<script>
var signalrPath = "@("~/lib/@microsoft/signalr/dist/browser/signalr.js")";
</script>
<script src="@("~/lib/@microsoft/signalr/dist/browser/signalr.js")"></script>
或者,我想你可以只做 @microsoft
部分,但我个人更喜欢将整个字符串放在一起:
<script src="~/lib/@("@microsoft")/signalr/dist/browser/signalr.js"></script>