ArgumentNullException для ReadXML
У меня проблема с сериализацией DataSet в файл XML. Каждый раз, когда я пытаюсь загрузить XML, функция ReadXML() выдает исключение ArgumentNullException. Что интересно, эта проблема возникает только тогда, когда я загружаю ее в пустой набор данных. Когда я заполняю таблицы в своем DataSet, а затем пытаюсь заменить их, загружая DataSet из XML-файла, исключение не выдается. Мои DataTables связаны с отношениями. Я не использую XMLScheme, потому что тогда мой XML-файл никогда не загружается, даже если я заменяю существующий набор данных.
Когда выдается исключение, у меня одна таблица загружена частично: первая запись загружена правильно, а вторая заполнена нулевыми значениями и исключениями StrongTypingExceptions.
Кто-нибудь знает, что происходит?
//редактировать:
Пишу:
config.WriteXml(FileName,XmlWriteMode.IgnoreSchema);
Чтение:
config.ReadXml(FileName,XmlWriteMode.IgnoreSchema);
Я перепробовал все режимы.
Когда схема читает:
[System.Data.DataException] {"недопустимый ключевой узел внутри ограничения: FK_SapTable_SapFieldFilter."} System.Data.DataException
У меня есть две таблицы, связанные отношением FK_SapTable_SapFieldFilter. В таблице "SapTable" у меня есть поле TableId в качестве ключа - оно никогда не равно нулю. Это связано с полем TableId в SapFieldFilter. Мой SapFieldFilter пока пустая таблица, но это не должно создавать проблем: