【发布时间】:2011-08-22 05:34:32
【问题描述】:
是否可以在数据绑定表达式中调用 void 返回方法? (例如,设置一个全局变量。)
以下内容无法编译:
<%# setCurrent(false) %> // Error: Cannot implicitly convert type 'void' to 'object'
我可以更改方法的返回类型(例如,让它返回一个空对象),但那是作弊。
【问题讨论】:
标签: c# asp.net data-binding
是否可以在数据绑定表达式中调用 void 返回方法? (例如,设置一个全局变量。)
以下内容无法编译:
<%# setCurrent(false) %> // Error: Cannot implicitly convert type 'void' to 'object'
我可以更改方法的返回类型(例如,让它返回一个空对象),但那是作弊。
【问题讨论】:
标签: c# asp.net data-binding
数据绑定的全部意义在于返回一个值以供显示。 (因此错误)
只返回一个空字符串:)
【讨论】:
我认为在你的陈述之后加一个分号应该使它在语义上是正确的:
setCurrent(false);
这本身不是“数据绑定”,但它有效。
【讨论】:
这不是非常优雅,但可以完成工作:
<%# new Func<string>(() => { SomeVoidMethod(); return ""; })() %>
【讨论】: