Asp.net 依赖有效XML的ASPX文件安全吗?
如果aspx文件已编译,那么假设它是有效的XML是否安全Asp.net 依赖有效XML的ASPX文件安全吗?,asp.net,xml,controls,webforms,asp.net-controls,Asp.net,Xml,Controls,Webforms,Asp.net Controls,如果aspx文件已编译,那么假设它是有效的XML是否安全 ASP.NET是否通过将服务器控件解析为XML来工作?否-只有ASP控件需要是有效的XML。在ASPX文件中编写非XHTML代码是完全合法的。否-只有asp控件需要是有效的XML。在ASPX文件中编写非XHTML代码是完全“合法的”。我不认为您可以假设它是有效的Xml,因为它可以包含无效的Xml或XHTML标记 一个简单的例子:您可以为“break”标记编写,这将在所有浏览器中正常显示。有效的xhtml版本是,但这不是必需的。我不认为它是
ASP.NET是否通过将服务器控件解析为XML来工作?否-只有ASP控件需要是有效的XML。在ASPX文件中编写非XHTML代码是完全合法的。否-只有asp控件需要是有效的XML。在ASPX文件中编写非XHTML代码是完全“合法的”。我不认为您可以假设它是有效的Xml,因为它可以包含无效的Xml或XHTML标记
一个简单的例子:您可以为“break”标记编写
,这将在所有浏览器中正常显示。有效的xhtml版本是
,但这不是必需的。我不认为它是有效的Xml,因为它可以包含无效的Xml或xhtml标记
一个简单的例子:您可以为“break”标记编写
,这将在所有浏览器中正常显示。有效的XHTML版本是
,但这不是必需的。XML!=XHTML!=ASPX
您可以通过创建一个DIV并放置“向大家问好”,这将是有效的ASP和XHTML,但不是有效的XML:“向大家问好&
s”XML!=XHTML!=ASPX
您可以通过创建一个DIV并放置“Hello's to诸位”,这将是有效的ASP和XHTML,但不是有效的XML:“Hello
&39;
s to诸位””我是否可以准确地解释为ASP:Content中的所有内容都必须是有效的XML?不,ASP:Content中可以包含常规HTML,即使它不是有效的XML。不,它甚至可以有无效的html!我能准确地解释为asp:Content中的所有内容都必须是有效的XML吗?不,asp:Content中可以包含常规HTML,即使它不是有效的XML。不,它甚至可以包含无效的HTML!你问的只是为了好玩,还是你有一个特定的问题要解决?@Tony Casale,我想以文本流的形式加载一个ASPX文件,并获取所有服务器控件。我想我可以用regex试试,但我希望能有更简单的东西,比如XElement.Parse().subjections()。有什么想法吗?我不知道你会去哪里,但我相信你可以利用编译器中的解析器库来获取ASPX文件的AST。不过,这可能比你期望投入的工作要多。我认为regex解决方案是可行的。另一个建议是预处理您的ASPX文件,将任何非服务器控件的内容转换为CDATA节点,这样您就可以使用XElement和friends而不受惩罚。这些天我都在使用Linux,所以我自己不能在.NET中到处闲逛:)我看了看(),但复杂性让我有点害怕。我一次又一次地发现,如果我真的要认真思考一个问题,我可能是用错误的方式去做的。我喜欢你关于将所有无效内容转换为CDATA的想法,但现在我正在研究一种完全不同的方法来解决这个问题。好吧,祝你好运-如果你找到了什么,请告诉我们你是如何解决的!你问的只是为了好玩,还是你有一个特定的问题要解决?@Tony Casale,我想以文本流的形式加载一个ASPX文件,并获取所有服务器控件。我想我可以用regex试试,但我希望能有更简单的东西,比如XElement.Parse().subjections()。有什么想法吗?我不知道你会去哪里,但我相信你可以利用编译器中的解析器库来获取ASPX文件的AST。不过,这可能比你期望投入的工作要多。我认为regex解决方案是可行的。另一个建议是预处理您的ASPX文件,将任何非服务器控件的内容转换为CDATA节点,这样您就可以使用XElement和friends而不受惩罚。这些天我都在使用Linux,所以我自己不能在.NET中到处闲逛:)我看了看(),但复杂性让我有点害怕。我一次又一次地发现,如果我真的要认真思考一个问题,我可能是用错误的方式去做的。我喜欢你关于将所有无效内容转换为CDATA的想法,但现在我正在研究一种完全不同的方法来解决这个问题。好吧,祝你好运-如果你找到了什么,请告诉我们你是如何解决的!