Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在某些情况下,内联代码标记呈现为文本_C#_.net_Asp.net - Fatal编程技术网

C# 在某些情况下,内联代码标记呈现为文本

C# 在某些情况下,内联代码标记呈现为文本,c#,.net,asp.net,C#,.net,Asp.net,在我的aspx中,我有一行: <link href="<%= Request.ApplicationPath %>/css/ma/screen-ma.css" rel="Stylesheet"type="text/css" media="screen" /> 其呈现为: <link href="/XFormPortal/css/ma/screen-ma.css" rel="Stylesheet"type="text/css" med

在我的aspx中,我有一行:

<link href="<%= Request.ApplicationPath %>/css/ma/screen-ma.css"        rel="Stylesheet"type="text/css" media="screen" />

其呈现为:

<link href="/XFormPortal/css/ma/screen-ma.css"        rel="Stylesheet"type="text/css" media="screen" /> 

这似乎是正确的,对吗

然后我更改一个字符,比如说在rel和type属性之间添加一个空格,现在我有以下内容:

<link href="<%= Request.ApplicationPath %>/css/ma/screen-ma.css"        rel="Stylesheet" type="text/css" media="screen" />

现在渲染为:

<link href="&lt;%= Request.ApplicationPath %>/css/ma/screen-ma.css" rel="Stylesheet" type="text/css" media="screen" /> 

好吧,这里发生了什么?内联代码标记突然被忽略并作为文本写出?因为一个空间


有人能解释一下吗?

我认为这与预编译器解析表达式的顺序有关。。。具体地说,我怀疑在第一个示例中省略空格会导致特定正则表达式匹配失败,并且基本上可以避免正确的解析。请在href标记周围使用单引号。

我建议它与预编译器解析表达式的顺序有关。。。具体地说,我怀疑在第一个示例中省略空格会导致特定正则表达式匹配失败,并且基本上可以避免正确的解析。请在您的href标记周围使用单引号。


<link href=<%="\""+Request.ApplicationPath%>/css" rel="Stylesheet" type="text/css" media="screen"/>


尝试从head标签中删除runat=“server”..

尝试从head标签中删除runat=“server”..

这没有什么区别。好建议!有意思。。我还发现省略哪个空格并不重要,只要省略一个;-)。。。这让我想到:(在你的内联发射器中包含开头的引语。这似乎很有效!感谢你花时间解释这个问题,我希望这对以后的其他人会有帮助。这没有什么区别。虽然建议不错!很有趣。我还发现,你省略哪个空间并不重要,只要你省略一个;-)…这让我想到:(在你的内联发射器中加入开场白。这似乎很有效!感谢你花时间阐明这个问题,我希望这将对未来的其他人有所帮助。这也应该是等效的…这也应该是等效的。。。