偶尔我的应用程序抛出一个未处理的异常:
System.InvalidOperationException未被用户代码处理 Message =配置的执行策略'SqlAzureExecutionStrategy' 不支持用户启动的事务。看到 http://go.microsoft.com/fwlink/?LinkId=309381了解更多信息 信息。
我正在使用Entity Framework,我选择带有include的表来获取通过外键链接的第二个表。
根据异常的链接我正在使用“用户启动的交易”。 实体框架包含声明是否被视为“用户启动的交易”?
我正在使用默认策略:
SetExecutionStrategy("System.Data.SqlClient", () => new SqlAzureExecutionStrategy());
此代码抛出异常:
requestType = _requestTypes.GetList().FirstOrDefault(x => x.Id == requestTypeId);
这是getlist的定义:
public IEnumerable<RequestType> GetList()
{
var retList = DbContext
.RequestTypes
.Where(x => !x.Deleted)
.Include(t => t.RequestTypeWorkStreams)
.AsNoTracking()
.ToList();
return retList;
}