C#
 Computer >> コンピューター >  >> プログラミング >> C#

ASP .Net MVC C#のViewDataとは何ですか?


ViewDataは、文字列をキーとして使用して保存および取得されるオブジェクトのディクショナリです。ControllerからViewにデータを転送するために使用されます。 ViewDataは辞書であるため、各キーが文字列でなければならないキーと値のペアが含まれています。 ViewDataは、コントローラーからビューにデータを転送するだけで、その逆はありません。現在のリクエスト中のみ有効です。

ViewDataへのデータの保存-

ViewData["countries"] = countriesList;

ViewDataからのデータの取得-

string country = ViewData["MyCountry"].ToString();

ViewDataは、コンパイル時のエラーチェックを提供しません。たとえば、キー名のスペルを間違えても、コンパイル時エラーは発生しません。エラーについては、実行時にのみ知ることができます。

コントローラー

using System.Collections.Generic;
using System.Web.Mvc;
namespace DemoMvcApplication.Controllers{
   public class HomeController : Controller{
      public ViewResult Index(){
         ViewData["Countries"] = new List<string>{
            "India",
            "Malaysia",
            "Dubai",
            "USA",
            "UK"
         };
         return View();
      }
   }
}

表示

@{
   ViewBag.Title = "Countries List";
}
<h2>Countries List</h2>
<ul>
@foreach(string country in (List<string>)ViewData["Countries"]){
   <li>@country</li>
}
</ul>

出力

ASP .Net MVC C#のViewDataとは何ですか?



  1. Asp.Net webAPI C#に組み込まれているメッセージハンドラーとは何ですか?

    メッセージハンドラは、HTTPリクエストを受信し、HTTPレスポンスを返すクラスです。メッセージハンドラーは、抽象HttpMessageHandlerクラスから派生します。メッセージハンドラーは、着信要求がHttpControllerDispatcherに到達する前に、処理、編集、または拒否する機会を提供します。 メッセージハンドラは、リクエスト処理パイプラインのかなり早い段階で実行されるため、WebAPIで横断的関心事を実装するのに最適な場所です。 MessageHandlerは、パイプラインを介したHTTPリクエストとレスポンスのプロセスの隣にあるクラスのチェーン(システムで定義されてい

  2. ASP.NET マシン アカウントとは何ですか?削除する方法は?

    Windows のローカル ユーザー アカウントは、複数のユーザーが同じ PC を使用し、プライバシーを維持したい場合に最適な機能です。しかし、ASP.NET Machine という新しいアカウントが PC に表示されるなど、多くのユーザーで奇妙な現象が発生しているようです。この問題に遭遇し、家族の誰かがいたずらをしたのではないかと心配している場合は、安心してください。このガイドは、ASP.NET マシン アカウントとはを理解するのに役立ちます また、PC でこの新しいユーザー アカウントに取り組む方法についても説明します。 ASP.NET マシン アカウントとは? 問題の原因がウイ