ASP.NET – 如何使用来自ASHX处理程序的XML数据响应填充TreeView
发布时间:2020-12-16 09:44:16 所属栏目:asp.Net 来源:网络整理
导读:我有一个ASHX处理程序,它返回一个 XML响应(FileStructureXML.ashx). 现在我需要从ASHX处理程序获取XML响应并将其用作我的ASPX页面的数据源. 如果我将XMLDataSource指向服务器上的静态XML文件,则树视图将按预期填充.但是,如果我将XMLDataSource指向ASHX处理程
我有一个ASHX处理程序,它返回一个
XML响应(FileStructureXML.ashx).
现在我需要从ASHX处理程序获取XML响应并将其用作我的ASPX页面的数据源. 如果我将XMLDataSource指向服务器上的静态XML文件,则树视图将按预期填充.但是,如果我将XMLDataSource指向ASHX处理程序而不是服务器上的静态XML文件,则它不起作用. 任何帮助,将不胜感激. <body> <form id="form1" runat="server"> <div> <asp:TreeView ID="TreeView_Folders" runat="server" DataSourceID="FileXML"> <DataBindings> <asp:TreeNodeBinding DataMember="Directory" TextField="Name" /> <asp:TreeNodeBinding DataMember="File" TextField="Name" /> </DataBindings> </asp:TreeView> </div> <div> <asp:XmlDataSource ID="FileXML" runat="server" DataFile="FileStructureXML.ashx"> </asp:XmlDataSource> </div> </form> </body> 解决方法
我认为XmlDataSource仅适用于实际文件,而不适用于URL.您可以通过不指定DataFile属性并在后面的代码中动态加载Data属性来解决此问题.我认为FirstChild.OuterXml选择是正确的,但您可能需要进行实验.我不在我可以测试它的地方.
XmlDocument treeDoc = new XmlDocument(); treeDoc.Load( "~/FileStructureXML.ashx" ); // this takes a URL FileXml.Data = treeDoc.FirstChild.OuterXml; // everything after the xml definition (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读