[解決済み] MVC2のHtml.Partial(view, model)とHtml.RenderPartial(view,model)の違いは何ですか?
2022-05-31 10:57:26
質問
もちろん、返す型と呼び方が違うということ以外に
<% Html.RenderPartial(...); %>
<%= Html.Partial(...) %>
異なるものであるなら、なぜ片方ではなく、もう片方を呼び出すのでしょうか?
定義があるからです。
// Type: System.Web.Mvc.Html.RenderPartialExtensions
// Assembly: System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
// Assembly location: C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 2\Assemblies\System.Web.Mvc.dll
using System.Web.Mvc;
namespace System.Web.Mvc.Html
{
public static class RenderPartialExtensions
{
public static void RenderPartial(this HtmlHelper htmlHelper, string partialViewName);
public static void RenderPartial(this HtmlHelper htmlHelper, string partialViewName, ViewDataDictionary viewData);
public static void RenderPartial(this HtmlHelper htmlHelper, string partialViewName, object model);
public static void RenderPartial(this HtmlHelper htmlHelper, string partialViewName, object model,
ViewDataDictionary viewData);
}
}
// Type: System.Web.Mvc.Html.PartialExtensions
// Assembly: System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
// Assembly location: C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 2\Assemblies\System.Web.Mvc.dll
using System.Web.Mvc;
namespace System.Web.Mvc.Html
{
public static class PartialExtensions
{
public static MvcHtmlString Partial(this HtmlHelper htmlHelper, string partialViewName);
public static MvcHtmlString Partial(this HtmlHelper htmlHelper, string partialViewName,
ViewDataDictionary viewData);
public static MvcHtmlString Partial(this HtmlHelper htmlHelper, string partialViewName, object model);
public static MvcHtmlString Partial(this HtmlHelper htmlHelper, string partialViewName, object model,
ViewDataDictionary viewData);
}
}
どのように解決するのですか?
唯一の違いは
Partial
は
MvcHtmlString
の中で呼び出されなければならない。
<%= %>
の中で呼ばれなければなりません。
RenderPartial
は
void
を返し、ビューに直接レンダリングします。
を見ると ソースコード を見ると、どちらも同じ内部メソッドを呼び出して、レンダリング先として StringWriter を渡していることがわかります。
を呼び出すとします。
Partial
を呼び出すことになります。これは、生成されたHTMLをページに書き込むのではなく、表示、保存、操作したい場合です。
関連
-
.netcoreプロジェクトでIStartupFilterを使用するためのチュートリアル
-
認証プロセスの記録にjwtを使用したネット
-
asp.net core3.1 cookieとjwtのハイブリッド認証による多様な認証ソリューションの実現
-
[解決済み] C#では、public、private、protected、アクセス修飾子がないことの違いは何ですか?
-
[解決済み] ASP.NET MVCでビューをコンパイルする
-
[解決済み] Server.MapPath("."), Server.MapPath("~"), Server.MapPath(@"\"), Server.MapPath("/"). この違いは何ですか?
-
[解決済み] ASP.NETの新しいセキュリティ脆弱性の深刻度と回避方法について教えてください。
-
[解決済み] Visual Studio 新しいブラウザを開けない
-
[解決済み] IIS7.5とASP.NET v2によるWebアプリケーションの問題(web.configエラー)HTTP 500.19
-
[解決済み] ASP.NET_SessionId + OWIN Cookieがブラウザに送信されない。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
NET6新機能 新構造体の最適化
-
NETガベージコレクション GC診断ツール dotnet-gcmon 使用方法
-
ASP.NETでのRadioButton(ラジオボタン)の使用について
-
デバッグエラー蓄積
-
[解決済み] ファイルまたはアセンブリ 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821' を読み込めません でした。
-
[解決済み】Html.PartialとHtml.RenderPartial、Html.ActionとHtml.RenderActionの比較
-
[解決済み】ASP.NET IdentityのIUserSecurityStampStore<TUser>インターフェースとは何ですか?
-
[解決済み] ASP.NET MVCのAjaxポストでantiforgerytokenを含める。
-
[解決済み] Razorとインラインコードブロックによるif文の使用方法
-
[解決済み] コンテンツ」項目が重複して含まれていました。.NET SDKは、デフォルトでプロジェクトディレクトリの'Content'アイテムを含めます。