我正在使用实体框架来访问现有数据库。我可以访问数据,但是当我尝试添加新数据时,我得到一个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法?
谢谢你的时间!
答案 0 :(得分:0)
试试这个:
using (db = new xxxxxEntities())
{
List<log> logs = db.log.ToList();
db.log.Add(new log());
db.log.Create();
}