我的应用偶尔会抛出一个未处理的异常:
System.InvalidOperationException is unhandled by user code Message=配置的执行策略“SqlAzureExecutionStrategy”不支持用户发起的事务。有关其他信息,请参阅 http://go.microsoft.com/fwlink/?LinkId=309381。
我正在使用实体框架,其中我选择包含包含的表以获取由外键链接的第二个表。
根据异常链接,我正在使用“用户发起的交易”。Entity Framework Include 语句是否被视为“用户发起的事务”?
我正在使用默认策略:
SetExecutionStrategy("System.Data.SqlClient", () => new SqlAzureExecutionStrategy());
Run Code Online (Sandbox Code Playgroud)
此代码引发异常:
requestType = _requestTypes.GetList().FirstOrDefault(x => x.Id == requestTypeId);
Run Code Online (Sandbox Code Playgroud)
这是 getlist 的定义:
public IEnumerable<RequestType> GetList()
{
var retList = DbContext
.RequestTypes
.Where(x => !x.Deleted)
.Include(t => t.RequestTypeWorkStreams)
.AsNoTracking()
.ToList();
return retList;
}
Run Code Online (Sandbox Code Playgroud)