从ASP.NET中的静态方法更改显示的数据

时间:2011-09-26 19:01:23

标签: c# asp.net static-methods

我有两个位于页面上的用户控件,用于确定应显示哪些控件。用户控件生成一些传递给asp:literal的html,然后通过javascript进行操作。这是通过这种方式完成的,因为我没有允许在项目中使用合适的控件。

当用户单击视图更改按钮时,将从控件的javascript在主页面(包含控件的页面)上调用WebMethod。从这里,调用控件上的静态方法。然后控件需要重新生成html并将其放入asp:literal中以使视图更改完成。

我的问题是我在控件页面上的静态方法,并且无法访问非静态genorateHtml函数。我尝试过单例模式但没有成功(这可能是由于实施不当造成的)。关于如何打电话的任何想法?谢谢!

1 个答案:

答案 0 :(得分:0)

我曾经在其中一个项目中遇到类似的问题。我们最终采用的解决方案是使用部分呈现实现System.Web.UI.ICallbackEventHandler,以根据参数返回所需的内容。 ICallbackEventHandler在页面生命周期中运行。

我们遇到的唯一问题是相对于实现的性能问题,它会回复整个表单,而不仅仅是您想要的参数。

也许对你来说最好的方法是通过this method从静态方法中呈现控件。这可能适合您的需求。

希望这有帮助!