Я новичок в использовании ASP.NET MVC, и у меня возникли некоторые трудности с ним. Я создал свою модель, используя Entity Data Model только для записи.
Моя проблема в том, что я пытаюсь вставить изображение на сервер MS SQL 2008, используя мою новую страницу ASP.NET. Изображение является частью информации, которую мне нужно хранить о сотрудниках в моей базе данных. В моем домашнем файле HomeController.cs я щелкнул правой кнопкой мыши по методу Create и решил создать представление, что он и сделал. Однако загрузка изображения не была частью автоматически сгенерированного кода.
В представлении «Создать» есть несколько текстовых полей, соответствующих столбцам моей таблицы, и одна кнопка отправки, которая каким-то образом создает новую строку в моей базе данных. Я думал, что кнопка будет запускать код для другого метода Create в файле HomeController.cs, который принимает Employee в качестве параметра, но я предполагаю, что моя проблема заключается в том, что я не знаю, что происходит между мной, нажав кнопку Submit и создание объекта Employee для метода Create.
Для справки вот код, с которым я работаю. Первый код для Homecontroller.cs, а затем код для Create.aspx (обратите внимание, что переменная _db является копией моей модели данных сущностей):
public ActionResult Create()
{
return View();
}
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create([Bind(Exclude = "employeeNumber")] Employee employeeToCreate)
{
try
{
_db.AddToEmployee(employeeToCreate);
_db.SaveChanges();
return RedirectToAction("Index");
}
catch
{
return View();
}
}
Я не знаю, почему вышеприведенный код работает именно так.
Я также не знаю почему, но код ниже не показывает первые несколько строк правильно, поэтому я удалил несколько <> вокруг кода C # и кода asp, чтобы код стал видимым. ( FIXED )
<Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<LaunakerfiASP_MVC.Models.Employee>"
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
Create
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<h2>Create</h2>
<%= Html.ValidationSummary("Create was unsuccessful. Please correct the errors and try again.") %>
<% using (Html.BeginForm()) { %>
<fieldset>
<legend>Fields</legend>
<p>
<label for="name">name:</label>
<%= Html.TextBox("name")%>
<%= Html.ValidationMessage("name", "*")%>
</p>
<p>
<label for="email">email:</label>
<%= Html.TextBox("email")%>
<%= Html.ValidationMessage("email", "*")%>
</p>
<p>
<label for="department">department:</label>
<%= Html.TextBox("department")%>
<%= Html.ValidationMessage("department", "*")%>
</p>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
<% } %>
<div>
<%=Html.ActionLink("Back to List", "Index") %>
</div>
</asp:Content>
Итак, я хотел бы добавить элемент в представление Create.aspx, который позволит мне загрузить изображение в столбец «изображение» в таблице «Сотрудник».