ASP.NET MVC では、プロパティViewBag
は動的タイプです。
コードを通じて、さまざまな「プロパティ」が次のViewBag
ように割り当てられます。
ViewBag.Message = "Hello world";
ViewBag.Title = "Page title";
これはどのように作動しますか?ドキュメントを読むと、ViewBag
それ自体は何でもできることがわかりますが、動的型の「メンバー」に何かを割り当てるのはなぜ(またはどのように)機能するのでしょうか?
クラスでの定義方法ViewBag
は次のとおりです。public abstract class ControllerBase : IController
[Dynamic]
public dynamic ViewBag { get; }
//
// Summary:
// Gets or sets the dictionary for view data.
//
// Returns:
// The dictionary for the view data.
public ViewDataDictionary ViewData { get; set; }
ちょっと興味があるんだけど。