实体框架(添加/创建)对象引用未设置为对象的实例...但它是?

时间:2012-10-22 08:23:55

标签: entity-framework entity-framework-4 entity

我正在使用实体框架来访问现有数据库。我可以访问数据,但是当我尝试添加新数据时,我得到一个NullReferenceException“对象引用未设置为对象的实例”,但它是?

数据库连接没问题,我可以正常访问数据:List<log> logs = db.log.ToList();

使用“添加”或“创建”时抛出异常:

db.log.Add(new log());
db.log.Create();

堆栈跟踪:

at System.Data.Entity.DbSet`1.Create()

更新:

错误仅发生在包含数据库上下文的命名空间之外。我可以通过包装类来解决它,以便在DBHandler命名空间中使用“添加到DB上下文”方法。但我想解释为什么会发生这种情况。这是一个错误还是我违反了一些神圣的.net法?

谢谢你的时间!

1 个答案:

答案 0 :(得分:0)

试试这个:

using (db = new xxxxxEntities())
        {
           List<log> logs = db.log.ToList();
           db.log.Add(new log());
           db.log.Create();
        }