ich nicht in der Lage bin, die machine.config auf dem ClientTransaction Timeout max ist nur 10 Minuten
Gibt es eine andere Art und Weise in verschachtelten Transaktionen zu ändern, um sie länger als 10 Minuten zu dauern? Ist die Isolationsstufe oder eine andere Option hilfreich bei der Zeitüberschreitung? Meine Transaktion innerhalb DoWork()
ist in Ordnung, ich denke, es ist die äußere Transaktion, die Zeitüberschreitung ist.
private void DoAllWork()
{
using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, TransactionManager.MaximumTimeout))
{
DoWork();
scope.Complete();
}
}
private void DoWork()
{
Foreach(Some long running loop)
{
using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, TransactionManager.MaximumTimeout))
{
// Entity Framework queries/modification/Save Changes
scope.Complete();
}
}
}
wird dies für immer den neuen Wert beharren geht oder ist es nur gültig bis zum scope.complete() – mehwish
hallo @mehwish der Beispielcode ist zu zeigen, Sie, wenn Sie mit all Ihren db Sachen fertig sind und alles, was Sie brauchen, um scope.complete setzen zu können, wenn es nicht speichern wird. –
seine Art zu sagen, dass alles in Ordnung ist, so dass die Transaktion –