0

nhibernate オブジェクトをデシリアライズしようとしています。何らかの理由で、循環参照エラーが発生しています。問題は、エラーの原因となっているプロパティを特定できないことです。接続されているすべてのクラスを [ScriptIgnoreAttribute] でマークしましたが、まだ何もマークしていません。

4

1 に答える 1

1

モデル オブジェクトをビューに渡さないようにすることをお勧めします。代わりに、ビューのニーズに合わせて特別に調整され、必要なプロパティのみを含むビュー モデルを定義する必要があります。次に、コントローラーでモデルとビューモデルの間をマッピングできます。例えば:

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

このようにして、ビューモデルを完全に制御できるため、循環参照について心配する必要がなくなり、ビューに必要なものだけを公開できます。

于 2011-03-18T08:45:41.627 に答える