В этом ActionResult
Я удаляю пользователей из моей таблицы ASP.NET Users.Как удалить идентификатор пользователя asp.net, когда ограничения были помещены в таблицу?
public ActionResult Delete(string UserName)
{
var thisUser =
_context.Users.FirstOrDefault(u => u.UserName.Equals(UserName, StringComparison.CurrentCultureIgnoreCase));
_context.Users.Remove(thisUser);
_context.SaveChanges();
return RedirectToAction("Index");
}
Однако при попытке удалить пользователь, я получаю следующее сообщение об ошибке:
В ВЕЯТ конфликтное с ссылочным ограничением «FK_dbo.UserLogs_dbo.AspNetUsers_Customer_Id». Конфликт произошел в базе данных «MYDATABASE», таблице «dbo.UserLogs», в столбце «Customer_Id». Заявление было прекращено.
Я знаю, что ограничения помечены там, чтобы предотвратить повреждение данных, и это нормально, но как бы я мог устранить ограничения, достаточные для меня, чтобы удалить пользователя, а затем добавить их обратно после удаления пользователя?
'как бы я хотел бы устранить ограничения, достаточные для того, чтобы удалить пользователя, а затем добавить их обратно после удаления пользователя? Если вам это не нужно, то почему у него это в первую очередь? Удалите ограничение внешнего ключа из таблицы. Его конфликт по какой-то причине. 'Перед удалением из пользователя вам нужно удалить запись из другой таблицы. Я понимаю, что вам нужно это как журнал? то почему вам нужно ограничение внешнего ключа? – TheUknown
@TheUknown, используя код-сначала, ограничения создаются автоматически в любое время, когда я хочу ссылаться на «ApplicationUser» в другой таблице. Но я не хочу удалять журналы пользователя или пользовательские заказы. Это очень плохо для управления рисками и отчетности. – Skullomania
С использованием кода сначала вы пишете код и определяете ограничение - как они могут быть созданы автоматически? в БД сначала это было бы. – TheUknown