目標
Razor Engine を使用して、HTML でイメージ タイプの入力をレンダリングします。
問題
構文がわかりません(ありますか?)。
シナリオ
これは、通常の HTML を使用して画像タイプの入力をレンダリングする方法です。
<input type="file" name="image" />
しかし、Razor では、これをどのように処理できるでしょうか?
知識
Webで検索しましたが、結果がありません。
このような小さなスクリプトを追加するという点でhelpers.cshtml
、ジェネリックがあります。App_Code
オブジェクトにバインドしている場合、または uri を持っている場合は、オーバーロード/書き換えることができます。
helpers.cshtml
@helper ImageInput(string image, string name = null) {
<input type="image" src="@image" name="@name" />
}
あなたの見解での使用
@helpers.ImageInput("/images/mypic.png")
以下のように静的ヘルパーと TagBuilder を使用してレンダリングできます。
public static MvcHtmlString InputFile()
{
TagBuilder builder = new TagBuilder("input");
builder.MergeAttribute("type", "file");
builder.MergeAttribute("name", "image");
return MvcHtmlString.Create(builder.ToString(TagRenderMode.SelfClosing));
}
属性TextBoxFor
で簡単に使用できますtype
あなたはモデルです
public HttpPostedFileBase MyImageFile { get; set; }
イン・ユア・ビュー
@Html.TextBoxFor(m => m.MyImageFile , new { type = "file" })