在C#中的类构造函数中调用Async方法

时间:2015-03-23 16:57:35

标签: c# asynchronous sqlite windows-phone-8

目前我正在使用c#开发一个通用应用程序。

在应用程序中,我使用sqlite作为数据库,因为你现在可以使用异步方法。

我有一个带有一些null属性的类,我将使用从db获取的数据填充它们,但它应该在类构造函数中完成。

问题是不允许使用异步方法,所以我尝试创建一个新的异步方法并使用sqlite方法并在其中填充属性以在构造函数中同步调用它,但是可能期望它不能正常工作。 / p>

如何在类构造函数中使用async方法,以便在类构造函数方法中从db获取数据并填充类属性?

更新:请注意,我没有询问是否可以这样做,我想在构建类时使用来自db的数据初始化我的类变量

1 个答案:

答案 0 :(得分:1)

不要那样做

构造函数应该只是:构造函数。将复杂初始化移至初始化方法。

构造函数优先失败的能力有限,所以不要做任何复杂,长期运行或脆弱的事情。