我在一些非常简单的代码上遇到了对象引用错误:
private void LoadJobs(int? selectedJobID = null)
{
using (var db = new ERP3Entities())
{
incompleteJobs = db.Jobs.Where(j => j.Complete == false).ToArray();
}
}
incompleteJobs是类中其他地方使用的数组。当我在我的开发环境中运行它并且在生产中大部分时间都能正常工作时,代码工作正常。但是用户有时会得到对象引用错误。我正在使用EF 6.1.3 Code First。
Object reference not set to an instance of an object.
Stack Trace: at System.Data.Entity.Internal.RetryLazy`2.GetValue(TInput input)
at System.Data.Entity.Internal.LazyInternalContext.InitializeContext()
at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType)
at System.Data.Entity.Internal.Linq.InternalSet`1.Initialize()
at System.Data.Entity.Internal.Linq.InternalSet`1.get_InternalContext()
at System.Data.Entity.Infrastructure.DbQuery`1.System.Linq.IQueryable.get_Provider()
at System.Linq.Queryable.Where[TSource](IQueryable`1 source, Expression`1 predicate)
at SaveParts.TaskManagerTab.LoadJobs(Nullable`1 selectedJobID)
at SaveParts.TaskManagerTab.LoadData(IModelDoc2 doc)
at SaveParts.AssemblyEventHandler.RegenPostNotify2(Object stopFeature)