在我的母版页中,我将从数据库中加载一些数据。我把它放在一个异步方法中。对于普通页面,我将Async="true"
置于顶部,但如果我在母版页上执行此操作,则会出现以下错误:
的定义
myproject.master
不包含AsyncMode
和blablabla ...
我也在互联网上搜索,但没有找到异步母版页。我在背景上使用的语言是C#。
任何人都可以帮助我吗?
答案 0 :(得分:3)
您可以像这样在母版页中进行设置。找到解决方案here:
public abstract class MyBasePage : System.Web.UI.Page
{
public MyBasePage()
{
this.AsyncMode = true;
}
}
然后将aspx.cs文件中的继承更改为以下内容:
public partial class WebForm1 : MyBasePage
当您在构造函数中设置AsyncMode属性时,它可能会破坏系统。
答案 1 :(得分:2)
该示例使用新的异步和等待关键字(在.NET 4.5和Visual Studio 2012中可用)让编译器负责维护必要的复杂转换异步编程。编译器允许您使用C#的同步控制流构造编写代码,编译器会自动应用使用回调所需的转换,以避免阻塞线程。 ASP.NET异步页面必须包含页面指令,并将Async属性设置为“true”。
主文件包含主指令。
母版页继承System.Web.UI的 MasterPage 类,该类不包含 AsyncMode 属性。所以您不能在母版页上使用它< /强>
普通页面继承包含 AsyncMode 的System.Web.UI的页面类。