私のビューにはすべて同じようなデータがあるので、私の_Layoutに私のViewBagを使用したいと思います。だからここに私は何をすべきか:ViewBag返り値null拡張クラスでnull
私の見解では:
ViewBag.MetaKeywords = Model.MetaKeywords
私はHtmlHelperの
public static string MetaKeywords(this HtmlHelper helper)
{
return helper.ViewContext.Controller.ViewBag.MetaKeyWords;
}
そして、私の_layout中にバインドさ拡張クラスを持っている:
@Html.MetaKeywords()
問題は私の拡張メソッドがnullを返すことです。 @ViewBag.MetaKeyWords
の代わりに拡張メソッドを使用する理由他の機能にはロジックがあり、私たち自身の間で共有したいからです。
ありがとうございました。
あなたは 'ViewBag.MetaDescription'を設定していますが、あなたのヘルパーで' ViewBag.MetaKeyWords'にアクセスしようとすると、サンプルコードの入力ミスですか?プロパティ名が一致する必要があるためです。 – nemesv
申し訳ありませんが、投稿に誤りがありました。私はそれを修正しましたので、問題は解決しません。 – dlanglois6