2016-11-17 6 views
0

В настоящее время я пытаюсь обновить значения в моей базе данных. Мой код работал безупречно, пока я не добавил новое значение в базу данных. Я обновил свой DataClasses1.dbml, и он показывает новый столбец, который я добавил в базу данных. Тем не менее, я получаю исключение Stackoverflowexception при вызове context.SubmitChanges(). Содержит 2 набора изменений объектов, которые должны быть обновлены (ДОПОЛНЕНО 5 столбцов на строку в данном случае)DataClassesDatacontext Stackoverflow при отправке изменений

  var customers = new List<Customer>(); 
      using (var context = new DataClasses1DataContext()) 
      { 
       var result = from custs in context.Customer 
          where custs.ACTION_ID == desRequest.First().ACTION_ID && 
            !custs.ARCHIVATED 
          select custs; 

       Inputvalidation.SetAddressLines(ref result); 
       context.SubmitChanges(); 
       customers = result.ToList(); 
      } 

context.GetChangeSet показывает:

{{Inserts: 0, Deletes: 0, Updates: 2}} 
    Deletes: Count = 0 
    Inserts: Count = 0 
    Updates: Count = 2 

Перед обновлением каждой строки я добавления новых клиентов из-JSon пост в nancyfx с этим кодом (который, к моему удивлению все еще работает, как предполагалось)

private static bool AddItems(string request) 
    { 
     // Hier alle sammeln und in einem wisch rein 
     var customers = JsonConvert.DeserializeObject<IEnumerable<Customer>>(request); 
     foreach (var cstmr in customers) 
     { 
      using (var context = new DataClasses1DataContext()) 
      { 
       context.Customer.InsertOnSubmit(cstmr); 
       try 
       { 
        context.SubmitChanges(); 
       } 
       catch (Exception) 
       { 
        //TODO: Hier ggfs. reparieren 
        context.SubmitChanges(); 
        return false; 
       } 
      } 
     } 
     return true; 
    } 

это оШИБОК детали: These are the error- «Das Programm» [8028] iisexpress.exe «wurde mit Code -2147023895 (0x800703e9) beendet».

Stacktrace показывает null. Что я делаю неправильно, и что я могу улучшить?

+0

Какова трассировка стека вашего исключения? Это, как правило, очень помогает с исключениями переполнения стека. – Sefe

+0

В Сведения об ошибке нет дополнительной информации. Я обновил OP – Zoba

+1

ОК, кажется, что система так сильно падает, что не может дать вам стек. Если система приостанавливается некоторое время до сбоя, вы можете приостановить работу в отладчике и проверить стек вызовов. Это может дать вам намек на то, что происходит. – Sefe

ответ

0

Я удалил папку «obj» моего решения и перестроил проект, и все снова работает по назначению.

 Смежные вопросы

  • Нет связанных вопросов^_^