.NET 7 Blazor迁移至.NET 8遇@tabler编译错误求解决方法
解决.NET 8 Blazor中CDN链接@符号导致的编译错误
问题原因
在Razor文件(如App.razor)中,@是Razor语法的特殊标识,用于绑定变量或执行代码。你CDN链接里的@tabler被编译器误判为需要解析的Razor表达式,因此抛出“The name 'tabler' does not exist in the current context”错误。
解决办法
方法一:转义@符号
在Razor文件中,用两个@@代替单个@,编译器会将其识别为普通字符。修改后的代码如下:<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@@tabler/icons-webfont@latest/tabler-icons.min.css">方法二:将链接移至纯HTML文件
如果是Blazor WebAssembly项目,把该链接放到wwwroot/index.html中;如果是Blazor Server项目,放到Pages/_Layout.cshtml中。这些文件不会触发Razor语法解析,直接使用原链接即可:<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@tabler/icons-webfont@latest/tabler-icons.min.css">
内容的提问来源于stack exchange,提问作者Clay
相关产品推荐
相关产品推荐

