我有一个表单,可以将照片上传到我的数据库中,并且我使用视图模型来辅助完成这个过程。
视图模型:
当我调试代码时,我发现在我的控制器中的post方法中,表单中的所有信息都被更新到视图模型中,除了上传文件uploadFile为空。在表单中,我使用enctype =“multipart / form-data”。当我使用我的主页面时,uploadFile为空,但是当我使用默认的MVC主页面时,一切正常。
这是我的主页面:
这是默认的asp.net mvc主页面。
任何想法?
视图模型:
public class GalleryViewModel
{
//Members:
public Gallery _photo { get; set; }
public string _title { get; set; }
public string _description { get; set; }
public string _photographer { get; set; }
public HttpPostedFileBase uploadFile { get; set; }
// Ctor
public GalleryViewModel(Gallery photo)
{
_photo = photo;
}
public GalleryViewModel()
{
_photo = null;
}
}
当我调试代码时,我发现在我的控制器中的post方法中,表单中的所有信息都被更新到视图模型中,除了上传文件uploadFile为空。在表单中,我使用enctype =“multipart / form-data”。当我使用我的主页面时,uploadFile为空,但是当我使用默认的MVC主页面时,一切正常。
这是我的主页面:
<%@ Master Language="C#" MasterPageFile="~/views/Shared/GeneralMaster.master" Inherits="System.Web.Mvc.ViewMasterPage" %>
<asp:Panel ID="notifiactions" runat="server">
<% if (ViewData["notifications"] != null)
{ %>
<br />
<table width="100%">
<tr>
<td align="center">
<div id="messages" style="width: 90%; border: solid 1px #A3A3A3">
<br />
<%= Html.Encode(ViewData["notifications"])%>
<br /><br />
</div>
</td>
</tr>
</table>
<% } %>
</asp:Panel>
<br />
<table width="100%" cellpadding="0" cellspacing="0">
<tr>
<td width="30%" align="center">
<img src="\Content\SiteDesign\wine_in_frame2.JPG" alt="lk" />
</td>
<td width="40%">
<asp:ContentPlaceHolder ID="PageContent" runat="server" />
</td>
<td width="30%" align="right">
<img src="\Content\SiteDesign\set_with_frame.jpg" alt="Alon" />
</td>
</tr>
</table>
这是默认的asp.net mvc主页面。
<%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %>
<div id="header">
<div id="title">
<h1>My MVC Application</h1>
</div>
<div id="logindisplay">
<% Html.RenderPartial("LogOnUserControl"); %>
</div>
<div id="menucontainer">
<ul id="menu">
<li><%= Html.ActionLink("Home", "Index", "Home")%></li>
<li><%= Html.ActionLink("About", "About", "Home")%></li>
</ul>
</div>
</div>
<div id="main">
<asp:ContentPlaceHolder ID="MainContent" runat="server" />
<div id="footer">
</div>
</div>
</div>
任何想法?