Я использую Self Tracking Entities с Entity Framework и по какой-то причине я получаю сообщение об ошибке при вызове StartTracking () перед внесением изменений в сущность.
Мой код выглядит следующим образом:
BusinessUnit BusinessUnitObject = this.settingFacade.GetBusinessUnitByID(idToGet);
BusinessUnitObject.StartTracking();
Все, что для этого нужно, - это использовать имеющийся у нас идентификатор, использовать контекст объекта для чтения из базы данных, а затем сразу начать отслеживать его.
Ошибка
Value cannot be null. Parameter name: trackingItem
При просмотре фактического сгенерированного кода Entity Framework выдается код ошибки:
public static void StartTracking(this IObjectWithChangeTracker trackingItem)
{
if (trackingItem == null)
{
throw new ArgumentNullException("trackingItem");
}
trackingItem.ChangeTracker.ChangeTrackingEnabled = true;
}
Параметр trackingItem имеет значение null, но я не уверен, почему.
Кто-нибудь сталкивался с этим раньше?Я использовал STE последние пару месяцев, и это первый раз, когда это произошло.
РЕДАКТИРОВАТЬ -------------------
Извините, ребята ... после большого рефакторинга моего кода я внес ошибку, и сам объект был нулевым, что я тогда вызывал StartTracking ()!