ASP.NET MVCの新しいバージョンを調べています(まだ見ていない場合は、ここを参照してください)。オブジェクトのコンテンツを表示するのにかなり基本的な問題があります。
私のコントロールには、Person
のビューに渡すタイプのオブジェクトがありますViewData.Model
。これまでのところすべて順調で、表示の準備ができたビューでオブジェクトを抽出できます。しかし、私が得られないHtml.DisplayFor()
のは、データを画面に表示するためにメソッドを呼び出す必要がある方法です。私は次のことを試しました...
<%
MVC2test.Models.Person p = ViewData.Model as MVC2test.Models.Person;
%>
// snip
<%= Html.DisplayFor(p => p) %>
しかし、次のメッセージが表示されます。
CS0136:'p'という名前のローカル変数は、'p'とは異なる意味を与えるため、このスコープでは宣言できません。これは、'親または現在の'スコープで他の何かを示すためにすでに使用されています。
私はこれが私がすべきことではないことを知っています-変数を再定義するとこのエラーが発生することは知っていますが、コントローラーからオブジェクトにアクセスする方法がわかりません。だから私の質問は、そのプロパティを表示するためにオブジェクトをビューに渡すにはどうすればよいですか?
NB私は限られた空き時間にこれを読んでいることを付け加えなければなりません、それで私が何か基本的なことを逃した可能性は完全にあります。
TIA