我有一个.net 4.0项目,我决定升级到.net 4.5,以便我可以使用async / await功能。我想在Dapper和Dapper Async中使用async / await。以下是我转换的方法之一:
public async Task<Audit> GetAudit(int auditId)
{
using (SqlConnection connection = new SqlConnection())
{
connection.ConnectionString = ConfigurationManager.ConnectionStrings["AdnroidConnection"].ConnectionString;
Task connectionOpenTask = connection.OpenAsync();
await connectionOpenTask;
Task<IEnumerable<Audit>> queryTask = connection.QueryAsync<Audit>("Reil_V1_GetAudit", new { AuditId = auditId }, commandType: System.Data.CommandType.StoredProcedure);
IEnumerable<Audit> audit = await queryTask;
return audit.SingleOrDefault();
}
}
在第一个await(await connectionOpenTask)上,我收到一个以mscorelib开头的NullReferenceException。此代码在新项目中完美运行。即使经过广泛的谷歌搜索,我找不到任何解释问题的方法?我通过将目标框架更改为.net 4.5来转换项目,然后更新web.config中的httpRuntime /编译节点以包含targetFramework属性。升级前没有安装nuget软件包。
有人可以帮忙吗?