2009-07-09 4 views
0

Je suis novice dans l'utilisation d'ASP.NET MVC et j'y ai rencontré quelques difficultés. J'ai créé mon modèle en utilisant le modèle de données d'entité juste pour l'enregistrement.Téléchargement d'une image dans ASP.NET MVC à l'aide d'EDM

Mon problème est que j'essaie d'insérer une image dans mon serveur MS SQL 2008 en utilisant ma nouvelle page ASP.NET. L'image fait partie des informations que je dois stocker sur les employés de ma base de données. À partir de mon fichier HomeController.cs à la maison, j'ai cliqué avec le bouton droit sur la méthode Create et j'ai choisi de créer une vue, ce qu'elle a fait. Cependant, le téléchargement d'une image ne faisait pas partie du code généré automatiquement.

Dans la vue Créer, il y a quelques zones de texte qui correspondent à mes colonnes de tableau et un bouton de soumission unique qui crée ma nouvelle ligne de base de données en quelque sorte. Je pensais que le bouton exécuterait le code pour l'autre méthode Create dans le fichier HomeController.cs qui prend un employé en paramètre mais je suppose que mon problème réside dans le fait que je ne sais pas ce qui se passe entre moi en appuyant sur le bouton Soumettre et la création d'un objet Employee pour la méthode Create.

Pour référence, voici le code que je travaille avec le code .Premier pour HomeController.cs puis code pour Create.aspx (notez que la _db variable est une copie de mon Entity Data Model):

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(); 
    } 
} 

Je ne sais pas pourquoi le code ci-dessus indent comme il le fait. Je ne sais pas non plus pourquoi, mais le code ci-dessous ne montre pas correctement les premières lignes donc j'en ai supprimé quelques uns autour du code C# et du code ASP pour que le code devienne visible. (FIXE)

<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> 

Donc ce que je voudrais faire est d'ajouter un élément à la vue Create.aspx que me laisse télécharger une image sur la colonne « image » dans le tableau « employé '.

Répondre

Questions connexes