我有一个通常快速运行的ASP.NET页面,但有时必须调用外部服务,这可能需要几秒钟才能响应。因此,大多数情况下,我希望此页面像往常一样同步运行,但在需要调用服务时异步运行。
我猜我只能设置<%@ Page Async="true" ... %>
并且只在需要时在代码隐藏中运行异步代码(设置事件处理程序等)。如果我没有设置异步事件处理程序,那么页面将正常运行,不会出现性能损失或其他问题。
这种做法是否完全没问题,或者存在问题?
答案 0 :(得分:2)
你提出的方法很好。如果运行时检测到标记为Async = true但未启动任何异步工作的页面,则它将同步运行该页面。只有非常小的(几乎无法估量的)开销。
答案 1 :(得分:0)
尝试“Asp.net Ajax”使用ScriptManager,“更新pannels”为asp.net ajax。