Я думаю, что у многих людей была эта проблема, но я не могу ее исправить или понять, почему она у меня возникла. Рву на себе волосы уже пару часов.
Я получаю сообщение об ошибке «Ссылка на объект не указывает на экземпляр объекта». в моем datacontext.SubmitChanges() во ВТОРОЙ раз, когда этот метод запускается (я перебираю набор строк ObjectName):
private Object CreateObject(string ObjectName, SystemClassEnum SystemClass)
{
Object result = new Object();
result.Name = ObjectName;
result.SystemClassID = (int)SystemClass;
_dataContext.Objects.InsertOnSubmit(result);
_dataContext.SubmitChanges();
return result;
}
Я думал, что это потому, что значение result.Name может быть нулевым, но я так больше не думаю.
Кажется, как-то закрывается dataContext? но в режиме отладки я проверяю состояние соединения, и оно «Открыто» после возникновения ошибки.
Я использую шаблон репозитория и ASP.NET MVC.
Результирующий объект (new Object()) является экземпляром автоматически сгенерированного класса LINQ DBML, который также имеет разделяемый класс, который я создал с присоединенным единственным методом расширения. Я не понимаю, как расширение класса может быть причиной проблемы.
У меня нет идей.
Есть предположения? Спасибо за любую помощь, которую вы можете предоставить!!
С наилучшими пожеланиями,
Эрик