2012-11-04 80 views
1

我在asp.net mvc3中使用實體框架,當我嘗試向表中添加新記錄時出現此錯誤。這裏是我的代碼對象引用未設置爲對象的實例(2)

namespace CvGenerator.Models 
{ 
    public class LogInEntities:DbContext 
    { 
     public DbSet LogIn { get; set; } 


     protected override void OnModelCreating(DbModelBuilder modelBuilder) 
     { 
      modelBuilder.Conventions.Remove<IncludeMetadataConvention>(); 
      modelBuilder.Entity<LogIn>().ToTable("LogInData"); 
      base.OnModelCreating(modelBuilder); 
     } 
    } 

} 

模擬控制器:

public class LogIn 
{ 
    public int LogInId { get; set; } 
    public string NameAndSurname { get; set; } 
    public string Email { get; set; } 
    public virtual ICollection<LogIn> LogInCol { get; set; } 
} 

方法我稱之爲使用AJAX來記錄數據:

public void LogIn(string email,string nameAndSurname) 
{ 
    LogInEntities logIndb = new LogInEntities(); 
    LogIn logIn = new LogIn(); 

    if(ModelState.IsValid) 
    { 
     logIn.Email = email; 
     logIn.NameAndSurname = nameAndSurname; 
     ***logIndb.LogIn.Add(logIn);*** 
     logIndb.SaveChanges(); 
    } 
} 

對標行我得到的exeption

回答

1

嘗試DbSet <登錄>而不是登錄

+0

DbSet LogIns是解決方案,謝謝所有人 – user1797770

0

有看看我只是在你的LogIn屬性和構造函數LogInEntities

希望你現在不會在提到的線上得到豁免。

namespace CvGenerator.Models 
{ 
    public class LogInEntities:DbContext 
    { 
     List<DbSet> lgn; 
     public LogInEntities() 
     { 
      lgn = new List<DbSet>(); 
     } 
     public List<DbSet> LogIn { get{return lgn;} set{lgn=value;} } 

     protected override void OnModelCreating(DbModelBuilder modelBuilder) 
     { 
      modelBuilder.Conventions.Remove<IncludeMetadataConvention>(); 
      modelBuilder.Entity<LogIn>().ToTable("LogInData"); 
      base.OnModelCreating(modelBuilder); 
     } 
    } 

} 

模擬控制器:

public class LogIn 
{ 
    public int LogInId { get; set; } 
    public string NameAndSurname { get; set; } 
    public string Email { get; set; } 
    public virtual ICollection<LogIn> LogInCol { get; set; } 
} 

方法我稱之爲使用AJAX來記錄數據:

public void LogIn(string email,string nameAndSurname) 
{ 
    LogInEntities logIndb = new LogInEntities(); 
    LogIn logIn = new LogIn(); 

    if(ModelState.IsValid) 
    { 
     logIn.Email = email; 
     logIn.NameAndSurname = nameAndSurname; 
     ***logIndb.LogIn.Add(logIn);*** 
     logIndb.SaveChanges(); 
    } 
} 

對標行我得到的exeption

相關問題