C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.69112 の関連記事表示

<< 0 >>
■69112  ASP.NETのビュー内で定義するModelについて
□投稿者/ 悩み多きランナー -(2013/12/04(Wed) 23:47:00)

    分類:[ASP.NET (C#)] 

    コントローラクラス内で処理した結果(例えばアクションメソッドへ連携された引数に一致するレコードをテーブルから抽出等)をViewへ返す場合(return View(オブジェクト.First)等)、
    そのアクションメソッドに紐づくViewへ渡ると思います。
    そこで値を画面に出力する際にasp.netのサイトを確認すると<%= Html.Encode(Model.title) %>としてModelを定義してますが、コントローラで作成されたオブジェクトにある値を
    取得する際には"Model.値"という記述をするのでしょうか?
    このModelはViewDataDictionaryクラスのプロパティを指すのでしょうか?

    よろしくお願い致します。
親記事 /過去ログ118より / 関連記事表示
削除チェック/

■69141  Re[1]: ASP.NETのビュー内で定義するModelについて
□投稿者/ WebSurfer -(2013/12/06(Fri) 00:45:28)
    No69112 (悩み多きランナー さん) に返信

    「ビュー内で定義するModel」とは具体的に何を意味しているのでしょうか?
記事No.69112 のレス /過去ログ118より / 関連記事表示
削除チェック/

■69167  Re[2]: ASP.NETのビュー内で定義するModelについて
□投稿者/ 悩み多きランナー -(2013/12/06(Fri) 23:24:39)
    No69141 (WebSurfer さん) に返信
    > ■No69112 (悩み多きランナー さん) に返信
    >
    > 「ビュー内で定義するModel」とは具体的に何を意味しているのでしょうか?

    下記のサイトのリスト3を確認すると
    http://www.atmarkit.co.jp/ait/articles/0905/22/news117_2.html

    <% For Each item In Model%>と定義されてますが、Booksオブジェクトを渡しているので「<% For Each item In Books%>」と
    定義するのが自然かと思ったのですがModelと定義されており、どのような意味なのかいまいち理解ができません。
    なのでビュー内で定義するモデルとは<% For Each item In Model%>のModelを指していたり
    上記サイトの次のページで示してある<%=Html.Encode(Model.isbn)%>のModelとは具体的にどういうことを指しているのか
    教えていただきたいです。基本的にビュー内で値の取得の際は一般的にModel.isbnのような記述をするのでしょうか?


    わかりにくい説明で申し訳ありません。
記事No.69112 のレス /過去ログ118より / 関連記事表示
削除チェック/

■69170  Re[3]: ASP.NETのビュー内で定義するModelについて
□投稿者/ WebSurfer -(2013/12/07(Sat) 13:41:30)
    No69167 (悩み多きランナー さん) に返信
    > ■No69141 (WebSurfer さん) に返信
    >>■No69112 (悩み多きランナー さん) に返信
    >>
    >>「ビュー内で定義するModel」とは具体的に何を意味しているのでしょうか?
    >
    > 下記のサイトのリスト3を確認すると
    > http://www.atmarkit.co.jp/ait/articles/0905/22/news117_2.html
    >
    > <% For Each item In Model%>と定義されてますが、Booksオブジェクトを渡しているので「<% For Each item In Books%>」と
    > 定義するのが自然かと思ったのですがModelと定義されており、どのような意味なのかいまいち理解ができません。
    > なのでビュー内で定義するモデルとは<% For Each item In Model%>のModelを指していたり
    > 上記サイトの次のページで示してある<%=Html.Encode(Model.isbn)%>のModelとは具体的にどういうことを指しているのか
    > 教えていただきたいです。基本的にビュー内で値の取得の際は一般的にModel.isbnのような記述をするのでしょうか?

    参照されているサイトのリスト 3 にある Model は ViewPage<TModel>.Model
    プロパティです。( VB.NET の場合は ViewPage(Of TModel).Model )

    ViewPage<TModel>.Model プロパティ
    http://msdn.microsoft.com/ja-jp/library/dd492184(v=vs.108).aspx


    ページディレクティブ(リスト 3 の一番上の行)で、

    Inherits="System.Web.Mvc.ViewPage<IEnumerable<MvcAppCs.Models.Book>>"

    と継承が宣言されているところがポイントで(C# のコードの方です)、

    <% foreach (var item in Model) { %>

    において、Model は IEnumerable<MvcAppCs.Models.Book>(即ち Book のコレ
    クション)、item は個々の Book になります。

    Inherits 属性の宣言によって、ディクショナリまたはモデルを通じて、ビュー
    がデータを受け取ることができるようになります(・・・と、マイクロソフト
    公式解説書「プログラミング ASP.NET MVC」に書いてありました)。
記事No.69112 のレス /過去ログ118より / 関連記事表示
削除チェック/

■69202  Re[4]: ASP.NETのビュー内で定義するModelについて
□投稿者/ 悩み多きランナー -(2013/12/09(Mon) 19:10:49)
    No69170 (WebSurfer さん) に返信
    > ■No69167 (悩み多きランナー さん) に返信
    >>■No69141 (WebSurfer さん) に返信
    > >>■No69112 (悩み多きランナー さん) に返信
    > >>
    > >>「ビュー内で定義するModel」とは具体的に何を意味しているのでしょうか?
    >>
    >>下記のサイトのリスト3を確認すると
    >>http://www.atmarkit.co.jp/ait/articles/0905/22/news117_2.html
    >>
    >><% For Each item In Model%>と定義されてますが、Booksオブジェクトを渡しているので「<% For Each item In Books%>」と
    >>定義するのが自然かと思ったのですがModelと定義されており、どのような意味なのかいまいち理解ができません。
    >>なのでビュー内で定義するモデルとは<% For Each item In Model%>のModelを指していたり
    >>上記サイトの次のページで示してある<%=Html.Encode(Model.isbn)%>のModelとは具体的にどういうことを指しているのか
    >>教えていただきたいです。基本的にビュー内で値の取得の際は一般的にModel.isbnのような記述をするのでしょうか?
    >
    > 参照されているサイトのリスト 3 にある Model は ViewPage<TModel>.Model
    > プロパティです。( VB.NET の場合は ViewPage(Of TModel).Model )
    >
    > ViewPage<TModel>.Model プロパティ
    > http://msdn.microsoft.com/ja-jp/library/dd492184(v=vs.108).aspx
    >
    >
    > ページディレクティブ(リスト 3 の一番上の行)で、
    >
    > Inherits="System.Web.Mvc.ViewPage<IEnumerable<MvcAppCs.Models.Book>>"
    >
    > と継承が宣言されているところがポイントで(C# のコードの方です)、
    >
    > <% foreach (var item in Model) { %>
    >
    > において、Model は IEnumerable<MvcAppCs.Models.Book>(即ち Book のコレ
    > クション)、item は個々の Book になります。
    >
    > Inherits 属性の宣言によって、ディクショナリまたはモデルを通じて、ビュー
    > がデータを受け取ることができるようになります(・・・と、マイクロソフト
    > 公式解説書「プログラミング ASP.NET MVC」に書いてありました)。

    WebSurferさん

    お教えいただいてありがとうございます。
    Inherits 属性の宣言によってモデルよりデータを受け取れるんですね。

    Viewは雛形があるのである程度コードも自動生成されるのでInherit属性を
    意識してませんでした。勉強になりました。


記事No.69112 のレス /過去ログ118より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -