| 475 | | |
| 476 | | {{{#!cs |
| | 477 | {{{#!cs |
| | 478 | ViewBag.Name = "Toshiyuki Murayama"; // 文字列 |
| | 479 | ViewBag.Born = new Date(1978, 2, 7); // 日付 |
| | 480 | ViewBag.Tall = 166.2; // 数値 |
| | 481 | |
| | 482 | ViewBag.Hello = new sc.HelloWorld(); // モデルオブジェクトも入れようと思えば入れられる |
| | 483 | }}} |
| | 484 | |
| | 485 | ==== 受け取った値を表示するコードをビューに書く ==== |
| | 486 | |
| | 487 | それではいよいよ受け取った値を表示するコードを書きます。今度はビューの Home\Hello.cshtml ファイルを開いてください。 |
| | 488 | |
| | 489 | 今までと同じ表示結果では面白く無いので、既にある `<h2>` タグの行の下に、新しく以下の行を付け加えましょう。 |
| | 490 | |
| | 491 | {{{!#text/html |
| | 492 | <h2>Hello, World</h2> |
| | 493 | |
| | 494 | <p>モデルから受け取った値: <strong>@ViewBag.Text</strong></p> |
| | 495 | }}} |
| | 496 | |
| | 497 | 説明の必要はないかもしれませんが一応解説すると、 Razor 記法により、 `@ViewBag.Text` と書かれた場所には、 C# 言語での `ViewBag.Text` を評価して得られる値が HTML 出力されます[[FootNote(これが `string` 型の文字列の場合、正確には '''HTML エスケープ処理されてから出力'''されます。つまり、入っている文字列値がそのままブラウザ上に表示されるということです。)]]。つまり、うまく行けばこの部分は以下のように HTML 出力されるはずです。 |
| | 498 | |
| | 499 | {{{!#text/html |
| | 500 | <h2>Hello, World</h2> |
| | 501 | |
| | 502 | <p>モデルから受け取った値: <strong>Hello, World</strong></p> |
| | 503 | }}} |
| | 504 | |
| | 505 | それでは、 Ctrl + F5 キーを押して、実際どのように動くか見てみましょう。以下のように表示されれば成功です。 |
| | 506 | |
| | 507 | |
| | 508 | [[FootNote]] |