выяснить, какое свойство вызывает ошибку циклической ссылки - PullRequest
0 голосов
/ 18 марта 2011

Я пытаюсь десериализовать объект nhibernate.По какой-то причине я получаю ошибку циклической ссылки.Проблема в том, что я не могу понять из того, какое свойство вызывает ошибку.Я пометил все связанные классы с помощью [ScriptIgnoreAttribute], но все еще ничего.

1 Ответ

1 голос
/ 18 марта 2011

Я бы порекомендовал вам не передавать объекты вашей модели в представление. Вместо этого вы должны определить модель представления, которая специально адаптирована к потребностям представления и будет содержать только необходимые свойства. Затем в контроллере вы можете отобразить между моделью и моделью представления. Например:

public ActionResult Foo()
{
    SomeModel model = _repository.GetModel();
    SomeViewModel viewModel = Mapper.Map<SomeModel, SomeViewModel>(model);
    return Json(viewModel);
}

Таким образом, вам больше не нужно беспокоиться о циклических ссылках, поскольку вы полностью контролируете свои модели представлений, а также вы будете выставлять только то, что необходимо представлению.

...