ASP.NET:将XPath强制转换为bool-可能吗?

ASP.NET:将XPath强制转换为bool-可能吗?,asp.net,data-binding,xpath,Asp.net,Data Binding,Xpath,你好 我有一个XML值,我想用它作为布尔值来切换面板的可见性。我有这样的想法: <asp:FormView id="MyFormView" runat="server" DataSourceID="MyXmlDataSource"> <ItemTemplate> <!-- some stuff --> <asp:Panel id="MyPanel" runat="server" Visible='<%# (b

你好

我有一个XML值,我想用它作为布尔值来切换面板的可见性。我有这样的想法:

<asp:FormView id="MyFormView" runat="server" DataSourceID="MyXmlDataSource">
    <ItemTemplate>
        <!-- some stuff -->
        <asp:Panel id="MyPanel" runat="server" Visible='<%# (bool)XPath("Menu/Show") %>'>
        </asp:Panel>
        <!-- some more stuff -->
    </ItemTemplate>
</asp:FormView>
<asp:XmlDataSource id="MyXmlDataSource" runat="sever" DataFile="MyFile.xml" />

但是,这会引发一个异常。我尝试在XML中将Show的值设置为“true”、“true”、“0”,但没有效果。这可能吗?我的XPath肯定能工作,因为我已经尝试了向外移动,以便能够看到它的值,并且它是正确的。我试过这个:

<%#((bool)XPath("Menu/Show")).ToString() %>

但这也引发了一个例外

谢谢。

试试

试试
试试这个:

不确定经典ASP中字符串相等的语法,但需要进行字符串比较,然后返回true或false

…可见=“”…

尝试以下方法:

不确定经典ASP中字符串相等的语法,但需要进行字符串比较,然后返回true或false


…Visible=''…

如果xpath返回字符串,您不想使用(xpath(“菜单/显示”))

如果xpath返回字符串,您不想使用(xpath(“菜单/显示”)

还有一个:

System.Xml.XmlConvert.ToBoolean()
有效字符串为true的“1”或“true”,为false的“0”或“false”

使用最模糊的方式转换为布尔值,我会得到额外的分数吗?

还有一个:

System.Xml.XmlConvert.ToBoolean()
有效字符串为true的“1”或“true”,为false的“0”或“false”

使用最模糊的方式转换为布尔值,我会得到额外的分数吗?

Visible=''

注意空异常。使用“作为字符串”而不是.ToString()

可见=“”


注意空异常。使用“as string”而不是.ToString()

可以使用Boolean.TryParse()吗?如果TryParse可以解析它,它将返回true-如果它解析的值为true,则返回true。如何从内部使用TryParse?Boolean.TryParse()可以吗是否使用?如果TryParse能够解析它,它将返回true-如果它解析的值为true,则返回true。如何从内部使用TryParse?