Ожидается, что операция базы данных повлияет на 1 строку (строки), но фактически затронула 0 строкC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Ожидается, что операция базы данных повлияет на 1 строку (строки), но фактически затронула 0 строк

Сообщение Anonymous »

Я пытаюсь вставить записи в две таблицы, но получаю исключение. Не могли бы вы помочь мне решить проблему?

Сначала я попробовал приведенный ниже код.

Код: Выделить всё

await _testRepository.InsertAsync(test);
await _xyzRepository.InsertAsync(xyz);
Затем я попробовал этот код, но у меня ничего не работает.

Код: Выделить всё

try
{
var test = new Test();

using (var uow = _unitOfWorkManager.Begin(TransactionScopeOption.RequiresNew))
{
int? tenantId = _unitOfWorkManager.Current.GetTenantId();
using (_unitOfWorkManager.Current.SetTenantId(tenantId))
{
await _testRepository.InsertAsync(test);

var xyz = new XYZ();
await _xyzRepository.InsertAsync(xyz);
await _unitOfWorkManager.Current.SaveChangesAsync();
await uow.CompleteAsync();
}
}
}
catch (Exception ex)
{
throw new UserFriendlyException(ex.Message);
}
Исключение

Сообщение:


Ожидается, что операция с базой данных затронет 1 строку (строки), но на самом деле затронула 0
строк. Данные могли быть изменены или удалены после загрузки объектов. См. http://go.microsoft.com/fwlink/?LinkId=527962 для
информации о понимании и обработке исключений оптимистического параллелизма
.


трассировка стека:


at
Microsoft.EntityFrameworkCore.Update .AffectedCountModificationCommandBatch.ThrowAggregateUpdateConcurrencyException(Int32
commandIndex, Int32 ожидаемыйRowsAffected, Int32 rowsAffected) at
Microsoft.EntityFrameworkCore.Update.AffectedCountModificationCommandBatch.d__4.MoveNext()
--- Конец трассировки стека из предыдущего местоположения где было создано исключение --- в
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() в
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
Task) в
Microsoft.EntityFrameworkCore.Update.AffectedCountModificationCommandBatch.d__2.MoveNext()
--- Конец трассировки стека из предыдущего места, где было создано исключение --- в
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
Task) at
Microsoft.EntityFrameworkCore.Update.ReaderModificationCommandBatch.d__32.MoveNext()
--- Конец стека трассировка из предыдущего места, где было создано исключение --- в
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() в
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
Task) в
Microsoft.EntityFrameworkCore.Update.Internal.BatchExecutor.d__10.MoveNext()
--- Конец трассировки стека из предыдущего места, где было создано исключение --- в
System.Runtime.ExceptionServices .ExceptionDispatchInfo.Throw() в
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
Task) в
Microsoft.EntityFrameworkCore.Storage.Internal.SqlServerExecutionStrategy.d__7`2.MoveNext()
--- Конец трассировки стека из предыдущего места, где было создано исключение --- в
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() в
System.Runtime.CompilerServices.TaskAwaiter. HandleNonSuccessAndDebuggerNotification(Task
Task) at
Microsoft.EntityFrameworkCore.ChangeTracking.Internal.StateManager.d__61.MoveNext()
--- Конец трассировки стека из предыдущего места, где было создано исключение --- в
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() в
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
Task) в
Microsoft.EntityFrameworkCore.ChangeTracking.Internal .StateManager.d__59.MoveNext()
--- Конец трассировки стека из предыдущего места, где было создано исключение --- в
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() в
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
задача) at
Microsoft.EntityFrameworkCore.DbContext.d__48.MoveNext()
--- Конец трассировки стека из предыдущего места, где было исключение выброшено --- в
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() в
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
Task) в
Abp.EntityFrameworkCore .AbpDbContext.d__49.MoveNext()
в
D:\Github\aspnetboilerplate\src\Abp.EntityFrameworkCore\EntityFrameworkCore\AbpDbContext.cs:line
214

INFO 2018-04-11 13:59:53,439 [3 ]
ore.Mvc.Internal.ControllerActionInvoker — метод выполнения действия
MyCompany.MyProject.AdditionalMasterData.Tests.TestsAppService. CreateOrEdit
(MyCompany.MyProject.Application) с аргументами ([CreateOrEditTestDto
]) — ModelState действителен WARN 2018-04-11 14:01:48,396 [4 ]
Mvc.ExceptionHandling.AbpExceptionFilter - Ожидалось, что операция базы данных
повлияет на 1 строку(и), но фактически затронула 0 строк. Данные могли быть
изменены или удалены с момента загрузки объектов. См.
http://go.microsoft.com/fwlink/?LinkId=527962 для получения информации о
понимании и обработке исключений оптимистического параллелизма.
Abp.UI.UserFriendlyException: ожидается, что это повлияет на работу базы данных 1
строк, но фактически затронуло 0 строк. Данные могли быть изменены или
удалены после загрузки объектов. См.
http://go.microsoft.com/fwlink/?LinkId=527962 для получения информации о
понимании и обработке исключений оптимистического параллелизма. в
MyCompany.MyProject.AdditionalMasterData.Tests.TestsAppService.d__7.MoveNext()
в
C:\Repo\MyProjectVenues\aspnet-core\src\MyCompany.MyProject.Application\AdditionalMasterData\ Tests\TestsAppService.cs:line
205
--- Конец трассировки стека из предыдущего места, где было создано исключение --- at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
задача) в
MyCompany.MyProject.AdditionalMasterData.Tests.TestsAppService.d__6.MoveNext()
в
C:\Repo\MyProjectVenues\aspnet-core\src\MyCompany.MyProject.Application\AdditionalMasterData\Tests\TestsAppService.cs:line
170
--- Конец трассировки стека из предыдущего места, где было исключение выброшено --- в
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() в
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
Task) в
Microsoft.AspNetCore .Mvc.Internal.ControllerActionInvoker.d__12.MoveNext()
--- Конец трассировки стека из предыдущего места, где было создано исключение --- at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
Task) at
Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.d__10.MoveNext()
--- Конец трассировка стека из предыдущего места, где было создано исключение --- в
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() в
Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ActionExecutedContext
контекст) в
Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(State&
next, Scope& Scope, Object& state, Boolean& isCompleted) в
Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker. d__14.MoveNext()
--- Конец трассировки стека из предыдущего места, где было создано исключение --- в
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() в
System.Runtime .CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task
задача) в
Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.d__23.MoveNext()


Обновление

У меня есть основная причина проблемы.

По сути, у меня есть триггер вставки в Entity2, и когда я прокомментировал запрос внутри этого триггера, он работает нормально.

Существует около 10 запросов. в этом триггере, и очень сложно понять, какой из них вызывает проблему. Не могли бы вы рассказать мне, как отладить этот триггер?

Подробнее здесь: https://stackoverflow.com/questions/497 ... ted-0-rows
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»