Не видя ваш класс WR_TakeAway_Menu_Categories, я собираюсь предположить, что у вас есть некоторые другие классы в качестве свойств вашего класса WR_TakeAway_Menu_Categories.
Если это так, вам нужно исключить пользовательские объекты из метода TryUpdateModel и установить их вручную, прежде чем это сделать.
Например:
db.Entry(category).Reference(c => c.CreatedByUser).CurrentValue = CreatedByUser;
db.Entry(category).Reference(c => c.LastUpdateByUser).CurrentValue = LastUpdateByUser;
Это установит ваши переменные "пользовательский объект" на последнее значение.Я заметил, что в некоторых случаях, если вы делаете это не так, а просто устанавливаете свойство явно, запись базы данных не всегда будет обновляться.
После того, как вы вручную обновите пользовательские свойства, затем вызовитеTryUpdateModel, исключая свойства, которые вы устанавливаете вручную.
TryUpdateModel<WR_TakeAway_Menu_Categories>(category, null, null, new[] { "CreatedByUser", "LastUpdateByUser" });