2009-07-30 21 views
1

私は部分ビューの一部であるフォームを持っており、フォームを含むビューのコンテキストに基づいて別の場所にフォームを送信する必要があります。私はHtml.BeginFormを使用することはできません。フォームにmultipart/form-dataのenctypeがあるので、自動的に入力されたアクションがドアの外に出てしまいます。ASP.NET MVC - 暗黙的なフォーム操作

フォームアクションとして現在のコントローラ/アクションを記入するために呼び出すことができる単純な変数はありますか? ViewContext.RouteData.Values ["action"]、ViewContext.RouteData.Values ["controller"]はこれらの値を返しますが、アクセサーはそれより優れていますか?

ありがとうございます!

答えて

2

方法HtmlHelper.BeginForm()が自動的アクションとコントローラを充填Request.RawUrlを使用することです。だからあなたはちょうど書くことができる:

<form action="<%= Request.RawUrl %>" method="post" enctype="multipart/form-data"> 
    .... 
</form> 
+0

恐ろしいソース。これは私のためにやった。 –

0

これは私が

最初の完全なビューをやったことです:

<% using (Html.BeginForm("Edit", "Admin",FormMethod.Post, 
       new { enctype = "multipart/form-data" })){%> 
      <% Html.RenderPartial("MerchandiseEditDetail", Model); %> 
    <%}%>> 

秒のフルビュー:

<% using (Html.BeginForm("Create", "Admin",FormMethod.Post, 
     new { enctype = "multipart/form-data" })){%> 
    <% Html.RenderPartial("MerchandiseEditDetail", Model); %> 
<%}%> 

、私はまだ良い解決策を探していますが、これは部分的に私の問題を解決今のところ。

関連する問題