我想在 aspx 页面中的服务器控件的代码隐藏中调用 MyMethod,如下所示。
我的页面.aspx
<asp:Label ID="MyLabel" runat="server" Text='<%# MyMethod(Eval("MyColumn")) %>'>
我的页面.aspx.cs
protected void MyMethod(object obj) { ... }
如果我使用"
反而'
在 aspx 页面中,它会给我一个编译错误服务器标记的格式不正确。如下。
<asp:Label ID="MyLabel" runat="server" Text='<%# MyMethod(Eval("MyColumn")) %>'> // This line work
<asp:Label ID="MyLabel" runat="server" Text="<%# MyMethod(Eval("MyColumn")) %>"> // This line error
我想知道为什么我需要使用单引号,这是规则吗?在我的情况下如何使用双引号?
我想知道为什么我需要使用单引号,这是规则吗?我怎么能够
在我的情况下使用双引号?
使用单引号而不是双引号只是为了清楚字符串的结尾位置。您不能使用 Text="MyMethod("123")" 因为文本以 M 开头,可能以 ( 或 3 或最后一个 ) 结尾。通过使用单引号和双引号,编译器知道字符串何时结束。
Text="MyMethod('123')"
Text='MyMethod("123")'
您的示例是关于绑定的,但假设您希望在非绑定情况下使用双引号时使用双引号。您可以使用 HTML 实体“
Text="This is my string with " inside "" //This will produce : This is my string with "inside"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)