我可以在ASPX页面中使用内联扩展方法吗?

时间:2010-01-15 19:37:56

标签: asp.net extension-methods inline-code

是否可以在ASPX页面中进行内联操作?

<%= Me.SomeExtensionMethod() %>

我似乎无法弄清楚如何让它正常工作。我收到一条错误消息,说“SomeExtensionMethod”不是当前Page对象的成员。我在页面顶部添加了必要的<%@ Import Namespace="..." %>指令。 在代码隐藏中工作。

这不是至关重要的,但知道将来如何做会很好。

谢谢!

3 个答案:

答案 0 :(得分:12)

在命名空间中添加导入对我有用!

<%@ Import Namespace="Foo.FooFoo" %>

答案 1 :(得分:10)

尝试关闭.aspx页面,然后按this answer重新打开它。如果这会改善一些事情(例如启用intellisense)但不解决它,请发布您获得的任何新错误。

您还可以将Public修饰符添加到Moduleclass定义中。如果您正在使用模块,那对我来说确实没有意义,但this forum上的一些讨论表明它可能有所帮助。

答案 2 :(得分:0)

如果它在代码隐藏中工作,请将命名空间添加到函数调用中:

<%=MyNamespace.ExtensionFcn("hello, world") %>

在修改web.config之前我会这样做。