2014-01-09 3 views
0

Привет, в моем проекте мои данные не вставляются в базу данных при использовании EF.Its проект ASP.NET MVC3 Razor. Так что я пытался отлаживать программу, но ее не работает. Когда мы нажимаем кнопку «Сохранить», она просто перезагружает страницу.ASP.Net MVC3 Вставка данных Razor не работает при использовании EF

Здесь используется код EF для сохранения данных.

View Code

<p>Welcome To @ViewBag.User</p> 
@using (Html.BeginForm()) 
{ 
<fieldset class="default-fieldset"> 
<div></div> 
<legend>Employee Registration Form</legend> 
<div class="form-group"> 
<label class="col-lg-2 control-label">First Name</label> 
<div class="col-lg-10" >@Html.TextBoxFor(model => model.FirstName, new { @class = "form-control" })</div> 


<label class="col-lg-2 control-label">Middle Name</label> 

<div class="col-lg-10" >@Html.TextBoxFor(model => model.MiddleName, new { @class = "form-control" })</div> 
<label class="col-lg-2 control-label">Last Name</label> 

<div class="col-lg-10" >@Html.TextBoxFor(model => model.LastName, new { @class ="form-control" })</div> 

<label class="col-lg-2 control-label">Age</label> 

<div class="col-lg-10" >@Html.TextBoxFor(model => model.Age, new { @class = "form-control" })</div> 

<label class="col-lg-2 control-label">Date Of Birth</label> 

<div class="col-lg-10" >@Html.TextBoxFor(model => model.DateOfBirth, new { @class = "form-control",@id="dp1" })</div> 

<label class="col-lg-2 control-label">Address</label> 

<div class="col-lg-10" >@Html.TextAreaFor(model => model.Address, new { @class = "tinymce-simple span12",@row="25",@cols="45",@width="30%" })</div> 


<label class="col-lg-2 control-label">Position</label> 

<div class="col-lg-10" >@Html.TextBoxFor(Model => Model.Position, new { @class = "form-control" })</div> 

<label class="col-lg-2 control-label">Department</label> 

<div class="col-lg-10" >@Html.TextBoxFor(Model => Model.Department, new { @class = "form-control" })</div> 


<label class="col-lg-2 control-label">Date of joining</label> 

<div class="col-lg-10" >@Html.TextBoxFor(model => model.DateOfJoining, new { @class = "form-control",@id="dp2" })</div> 

<label class="col-lg-2 control-label">Qualification</label> 

<div class="col-lg-10" >@Html.TextBoxFor(Model => Model.EducationalQuali, new { @class = "form-control" })</div> 

<label class="col-lg-2 control-label">Experience :If any</label> 

<div class="col-lg-10" >@Html.TextBoxFor(Model => Model.Experience, new { @class = "form-control" })</div> 

<label class="col-lg-2 control-label">Others</label> 

<div class="col-lg-10" >@Html.TextBoxFor(Model => Model.Others, new { @class = "form-control" })</div> 
<div class="Button-Div-Sepa"></div> 
<div class="Button-Div"> 
@*<input type="button" class="" />*@ 
<button type="submit" class="btn btn-success"> @Html.ActionLink("Save","EmployeeRegistration","Employee")</button> 
<button class="btn btn-success">Clear</button> 
<button class="btn btn-success">Cancel</button> 
</div> 
</div> 
</fieldset> 
} 
</div> 

Controller Код

[HttpPost] 
     public ActionResult EmployeeRegistration(Employee emp) 
     { 
      if (ModelState.IsValid) 
      { 
       db.EmpData.Add(emp); 
       db.SaveChanges(); 
       return RedirectToAction("Index", "Home"); 
      } 

      return View(); 
     } 

Модель

[Table("tbl_Employee")] 
    public class Employee 
    { 
     [Key] 
     public int EmpId { get; set; } 
     public string FirstName { get; set; } 
     public string MiddleName { get; set; } 
     public string LastName { get; set; } 
     public int Age{get;set; } 
     public DateTime DateOfBirth { get; set; } 
     public string Address { get; set; } 
     public string Position { get; set; } 
     public string Department { get; set; } 
     public DateTime DateOfJoining { get; set; } 
     public string EducationalQuali { get; set; } 
     public string Experience { get; set; } 
     public string Others { get; set; } 

База данных Контекст

public class ElixirERPContext :DbContext 
    { 
     public DbSet<Menus> DataMenu { get; set; } 
     public DbSet<Employee> EmpData { get; set; } 
    } 

ответ

1

Попробуйте

db.EmpData.AddObject(emp); 
db.SaveChanges(); 
db.AcceptAllChanges(); 

Изменено Ответ, как проблема, которая описана в комментариях:

Its означает, что ваш db and entity model db is different, first update entity model затем попытаться сохранить

+0

Нет, до сих пор ее не работает – Nidheesh

+0

@Nidheesh Можете ли вы отлаживать «ModelState is valid» – Amit

+0

Это не попадание в Loop. Это означает, что Modelstate не valid.isn't? – Nidheesh

Смежные вопросы