我正在创建一个示例ASP。NET MVC 3站点使用Razor作为视图引擎。razor语法以@字符开始,例如@ renderbody()。如果我在我的cshtml页面上写@test,它会给我解析错误
CS0103:名称“test”在当前上下文中不存在
如何转义“@”字符?
我正在创建一个示例ASP。NET MVC 3站点使用Razor作为视图引擎。razor语法以@字符开始,例如@ renderbody()。如果我在我的cshtml页面上写@test,它会给我解析错误
CS0103:名称“test”在当前上下文中不存在
如何转义“@”字符?
当前回答
我应该做这件事。
其他回答
我也遇到了同样的问题。我用@声明了一个变量。
@{
var twitterSite = "@MyTwitterSite";
}
...
<meta name="twitter:site" content="@twitterSite">
我应该做这件事。
我知道这个问题很老了,但我尝试了上面所有的方法,但它并没有帮助我在ASP中转义字符“@”。NET框架(MVC 5)内的URL。根据Terje Solem的回答,UTF-8代码%40适合我。这是我试图到达的原始URL:
https://unpkg.com/@google/markerclustererplus@4.0.1/dist/markerclustererplus.min.js
这是在我的代码中工作的:
https://unpkg.com/%40google/markerclustererplus@4.0.1/dist/markerclustererplus.min.js
@ html . raw(“@”)在我看来甚至比@@更可靠,因为并非在所有情况下@@都会被转义。
因此:
<meta name="twitter:site" content="@twitterSite">
是:
<meta name="twitter:site" content="@Html.Raw("@")twitterSite">
剃刀@转义字符符号…
<img src="..." alt="Find me on twitter as @("@username")" />
or
<img src="..." alt="Find me on twitter as @("@")username" />