0

コントローラーから (カミソリ) ビューのモデル タイプを見つけるにはどうすればよいですか? それらが WebViewPage と WebViewPage から継承されていることは知っていますが、それだけです。

(asp.net c# MVC 3 または 4)

前もって感謝します。

編集ユース ケース: ユーザーがビューと厳密に型指定されたビューを作成/アップロード/編集できるようにし、ユーザーが作成したビューの 1 つを選択して、データベース内のさまざまな種類のデータを表示/編集できるようにします。

たとえば、アプリケーションはオブジェクト Foo を取得し、Boo と Foo に対して厳密に型指定されたビューがあります。Boo のビューが Foo オブジェクトの可能な選択として表示されないようにします。

4

2 に答える 2

1

なぜあなたがこれをしたいのかわかりませんが、あなたはただすることができます

@Model.GetType()

ビューにできるだけ多くのコードを含めないようにして、ロジックをコントローラーまたはサービスにプッシュする必要があります。

于 2012-11-28T06:27:57.593 に答える
0

にアクセスできる場合は、次のようにしてIEnumerable<WebViewPage<T>>の型を取得できます。T

// Assuming 'views' is a IEnumerable<WebViewPage<T>> here.
var validFooViews = views.Where(v =>
    v.GetType().GetGenericArguments()[0] == typeof(Foo));
于 2013-03-25T20:27:08.637 に答える