脚本链接中的 @ (at) 符号导致异常
Posted
技术标签:
【中文标题】脚本链接中的 @ (at) 符号导致异常【英文标题】:@ (at) symbol in script link is causing exception 【发布时间】:2022-01-05 02:18:08 【问题描述】:我正在尝试在Pages/_Layout.cshtml
中添加指向 .js 文件的链接但是我收到以下异常:
严重性代码描述项目文件行抑制状态错误 (active) CS0103 当前不存在名称“antv” 上下文 Blazing C:\Users\Laptop\source\repos\Blazing\Blazing\Pages_Layout.cshtml 31
_Layout.cshtml:
@using Microsoft.AspNetCore.Components.Web
@namespace BlazingDiary.Pages
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<base href="~/" />
<link rel="stylesheet" href="css/bootstrap/bootstrap.min.css" />
<link href="css/site.css" rel="stylesheet" />
<link href="BlazingDiary.styles.css" rel="stylesheet" />
<component type="typeof(HeadOutlet)" render-mode="ServerPrerendered" />
</head>
<body>
@RenderBody()
<div id="blazor-error-ui">
<environment include="Staging,Production">
An error has occurred. This application may no longer respond until reloaded.
</environment>
<environment include="Development">
An unhandled exception has occurred. See browser dev tools for details.
</environment>
<a href="" class="reload">Reload</a>
<a class="dismiss">????</a>
</div>
<script src="_framework/blazor.server.js"></script>
<script src="https://unpkg.com/@antv/g2plot@1.1.28/dist/g2plot.js"></script>
<script src="_content/AntDesign.Charts/ant-design-charts-blazor.js"></script>
<link href="_content/AntDesign/css/ant-design-blazor.css" rel="stylesheet" />
<script src="_content/AntDesign/js/ant-design-blazor.js"></script>
</body>
</html>
问题出在此特定链接https://unpkg.com/@antv/g2plot@1.1.28/dist/g2plot.js
中。谷歌搜索了几个小时没有成功。有什么想法吗?
【问题讨论】:
@
是 Razor 语法中的一个特殊字符。您将需要使用另一个 @
来逃避它。即`
这能回答你的问题吗? Escape @ character in razor view engine
@phuzi - 但为什么要转义呢?
我认为“@ 是剃刀语法中的特殊字符。”会解释它...这就是 ASP.Net 解释 .cshtml
页面的方式。就像之前的@RenderBody
。为什么你认为你不需要?
@phuzi :您不必(不应该)在 .net6 中转义它。所以这是一个错误。
【参考方案1】:
这已在 .net 6 中解决。
在 .net 5(及之前)中,剃须刀引擎似乎会在不属于它的地方伸出它的鼻子。幸运的是,有一个简单的解决方法,将@
转义为@@
:
<script src="https://unpkg.com/@@antv/g2plot@1.1.28/dist/g2plot.js"></script>
【讨论】:
以上是关于脚本链接中的 @ (at) 符号导致异常的主要内容,如果未能解决你的问题,请参考以下文章