2010-05-03 5 views
1

appel de mon contrôleur à la méthode d'insertion du référentiel toutes les valeurs sont transmises, mais il ne sont pas insérés dans ma table ..insert asp.net mvc ne marche pas semble fonctionner pour moi

Ma méthode de commande,

[AcceptVerbs(HttpVerbs.Post)] 
     public ActionResult Create([Bind(Exclude = "Id")]FormCollection collection) 
     { 
      try 
      { 
       MaterialsObj materialsObj = new MaterialsObj(); 
       materialsObj.Mat_Name = collection["Mat_Name"]; 
       materialsObj.Mes_Id = Convert.ToInt64(collection["MeasurementType"]); 
       materialsObj.Mes_Name = collection["Mat_Type"]; 
       materialsObj.CreatedDate = System.DateTime.Now; 
       materialsObj.CreatedBy = Convert.ToInt64(1); 
       materialsObj.IsDeleted = Convert.ToInt64(1); 
       consRepository.createMaterials(materialsObj); 

       return RedirectToAction("Index"); 
      } 
      catch 
      { 
       return View(); 
      } 
     } 

et mon dépôt,

public MaterialsObj createMaterials(MaterialsObj materialsObj) 
{ 
    Material mat = new Material(); 
    mat.Mat_Name = materialsObj.Mat_Name; 
    mat.Mat_Type = materialsObj.Mes_Name; 
    mat.MeasurementTypeId = materialsObj.Mes_Id; 
    mat.Created_Date = materialsObj.CreatedDate; 
    mat.Created_By = materialsObj.CreatedBy; 
    mat.Is_Deleted = materialsObj.IsDeleted; 
    db.Materials.InsertOnSubmit(mat); 
    return materialsObj; 
} 

Qu'est-ce que je manque ici toute suggestion ....

+0

BTW, quand vous vous ennuyez d'écrire 'mat.Mat_Name = materialsObj.Mat_Name,', jetez un oeil à Automapper http://automapper.codeplex.com/ – R0MANARMY

Répondre

2

Pour autant que je puisse voir, il vous manque un db.SubmitChanges(); pour enregistrer dans la base de données.

+0

oh mon dieu comment @ Chris ne me manque ! –

+0

c'est facile, j'ai eu le même problème ce matin! :-) – Chris

+0

Linq-to-sql première fois pour moi ... Ne faites plus jamais cette erreur ... –

1
db.Materials.InsertOnSubmit(mat); 
db.SubmitChanges(); // <--------------- 
return materialsObj; 
1

Ne manquez-vous pas un appel à SubmitChanges?

db.Materials.InsertOnSubmit(mat); 
db.SubmitChanges(); 
Questions connexes