Десериализация JSON создает циклическую ссылку ТОЛЬКО в live build
У меня странная проблема, которую я могуобернуть мою голову вокруг. Я пытаюсь создатьэкспорт в csv " функция для моего приложения MVC4, где соответствующий JSON передается через вызов ajax в мой ActionResult. ActionResult десериализует stringifyd JSON (с JSON.Net) записывает его в файл в формате csv, а затем возвращает путь сервера к новому файлу. Мой успешный обратный вызов получает путь и вызывает URL для загрузки.
Это прекрасно работает локально, но на моем тестовом сервере я получаю следующее исключение:
A circular reference was detected while serializing an object of type 'System.Reflection.RuntimeModule'.
JSON (и впоследствии объекты, к которым они десериализованы) немного сложны. Они приходят из сгруппированного подмножества SlickGrid DataView. Я получал исключения из циклических ссылок, когда включал агрегированную информацию для итогов столбцов (это относится только к тем, которые разбираются в SlickGrid, я не считаю, что данные, передаваемые на сервер, являются проблемой), но я 'мы удалили их перед передачей JSON на сервер. Вот моя структура класса JSON to C #:
[Serializable]
public class Row
{
public int id { get; set; }
public DateTime DateCreated { get; set; }
public int RefNo { get; set; }
public string ClientName { get; set; }
public string Plate { get; set; }
public string Address1 { get; set; }
public int? ProductID { get; set; }
public string Product { get; set; }
public string S1 { get; set; }
public string S2 { get; set; }
}
[Serializable]
public class RootReportObject
{
public bool __group { get; set; }
public int level { get; set; }
public int count { get; set; }
public string value { get; set; }
public string title { get; set; }
public int collapsed { get; set; }
public List rows { get; set; }
public object groups { get; set; }
public string groupingKey { get; set; }
}
Единственное, что яЯ думаю, что из-за того, как данные структурированы, список <> строк в корневом объекте может вызывать циклические ссылки во время десериализации, потому что группа не обязательно имеет уникальные ссылки на строки.
У меня вопрос, почему он работает нормально локально? Я понятия не имею, что ям отсутствует.