我使用Entity Framework 4并遇到以下问题,即在环境事务中执行存储过程.这是代码:
public void UpdateOrderRequest(IOrder order, int requestId, int userId, Fee fee)
{
using (var tscope = new TransactionScope(TransactionScopeOption.RequiresNew))
{
_storedProcedureDA.UpdateOrderRequest(requestId, userId, data.ClientId, data.RequestStatus, data.Date,
data.Type, data.Side, data.Quantity, data.ExecInst, data.Price,
data.StopPrice, data.TimeInForce, data.Description, data.Target);
var feeDa = new FeeDA();
var dbFee = new Domain.Entities.Fee
{
OrderRequestId = requestId,
Identifier = fee.Id,
Value = fee.Value,
};
feeDa.Save(dbFee);
tscope.Complete();
}
}
Run Code Online (Sandbox Code Playgroud)
Context.ExecuteFunction<..>("AddOrderRequest",...)feeDA.Save() 将实体添加到Repository和调用中 Context.SaveChanges()The transaction operation cannot be performed because there are pending requests working on …