0
iamがmvcのfileUploadで作業しています。site.masterに<scriptmanager>が含まれている場合、MVCのfileUploadで問題が発生します。
ビュー/クライアント/ AddClient.aspx
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<Auditz.UI.Web.Automation.ClientService.ClientDto>" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<h1>
Add A Client</h1>
<% using (Html.BeginForm("AddClient","Client",FormMethod.Post,new {enctype = "multipart/form-data" }))
{ %>
<%: Html.ValidationSummary(true) %>
<div class="tabcontrol">
<asp:Panel ID="pnlClientDtls" runat="server">
<asp:TabContainer ID="TabContainer" runat="server" Width="100%" ActiveTabIndex="1">
<asp:TabPanel ID="tb1" runat="server">
<HeaderTemplate>
Client Details
</HeaderTemplate>
<ContentTemplate>
<div class="formelements">
.....................
..............
</div>
コントローラ/ FileUploadController.cs
namespace FileUploadTest.Controllers
{
public class FileUploadController : Controller
{
//
// GET: /FileUpload/
public ActionResult FileUpload()
{
return View();
}
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult FileUpload(HttpPostedFileBase uploadFile)
{
if (uploadFile.ContentLength > 0)
{
string filePath = Path.Combine(HttpContext.Server.MapPath("~/Uploads"),
Path.GetFileName(uploadFile.FileName));
uploadFile.SaveAs(filePath);
}
return View();
}
}
}
Evrythingこのコードで、必要に応じて動作しますが、次のよう 私のコードです。 しかし、私が配置し、Shared/Site.Masterの場合、iamは "HttpPostedFileBase uploadFile"でnull値を取得しています。
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
</form>
<div>
<asp:ContentPlaceHolder ID="MainContent" runat="server">
</asp:ContentPlaceHolder>
</div>
私はいくつかのAjaxコントロールを追加したいので、私のコードから削除することはできません。
「タイプのコントロール 『MainContent_TabContainer』 『タブコンテナは』にrunat =サーバーとのformタグの内側に配置されなければなりません。」このエラーが表示される前にフォームタグを閉じる場合 – Santosh
どこが間違っていますか – Santosh
おめでとう@ダーリン:https://twitter.com/#!/marcgravell/status/179944638772281344 –