目前我正在使用c#开发一个通用应用程序。
在应用程序中,我使用sqlite作为数据库,因为你现在可以使用异步方法。
我有一个带有一些null属性的类,我将使用从db获取的数据填充它们,但它应该在类构造函数中完成。
问题是不允许使用异步方法,所以我尝试创建一个新的异步方法并使用sqlite方法并在其中填充属性以在构造函数中同步调用它,但是可能期望它不能正常工作。 / p>
如何在类构造函数中使用async方法,以便在类构造函数方法中从db获取数据并填充类属性?
更新:请注意,我没有询问是否可以这样做,我想在构建类时使用来自db的数据初始化我的类变量
答案 0 :(得分:1)
构造函数应该只是:构造函数。将复杂初始化移至初始化方法。
构造函数优先失败的能力有限,所以不要做任何复杂,长期运行或脆弱的事情。