我得到下面的错误从实体框架的objContext.warrantys财产净MVC库模式与EF抛出错误(本地扔类型的异常“System.InvalidOperationException”
错误消息:空被退回后,调用类型“System.Data.OleDb.OleDbConnection”的存储提供实例的“get_ProviderFactory”的方法。存储提供可能无法正常工作。
Local 'objContext.warrantys.Local' threw an exception of type 'System.InvalidOperationException' System.Collections.ObjectModel.ObservableCollection<DSGWarrantyServiceRep.Core.warranty> {System.InvalidOperationException}
在web.config中,
public class warranty
{
public int WarrantyId
{
get;
set;
}
[Required(ErrorMessage =" Please provide Warrranty Name")]
[MinLength(4)]
public string WarrantyName
{
get;
set;
}
[Required(ErrorMessage = " Please provide Warrranty Period")]
public string WarrantyPeriod
{
get;
set;
}
[Required(ErrorMessage = " Please provide UPC Nbr")]
public string UpcNbr
{
get;
set;
}
public warranty()
{
}
}
现在,我要添加dbcontext类。
public class WarrantyContext:DbContext
{
public WarrantyContext() : base("name=warrantyConnectionString")
{
}
public DbSet<warranty> warrantys { get; set; }
}
现在从我的保修服务类在这里
public class WarrantyService : IWarrantyService
{
WarrantyContext objContext = new WarrantyContext();
public void AddWarranty(warranty ws)
{
objContext.warrantys.Add(ws);
objContext.SaveChanges();
}
public IEnumerable<warranty> GetAllWarranty()
{
**return objContext.warrantys;**
}
}
您不要在使用'objContext.warrantys.Local'您显示的代码,也不显示导致错误的代码。 –
我没有使用objContext.warrantys.Local。我在GetAllWarranty()函数下获取objContext.warrantys的上述错误。 –
我会尝试重述我的问题。 'GetAllWarranty()'只返回一个查询。它不执行*它。所以我的问题是:你在哪里调用'GetAllWarranty()'方法来引发错误?对'objContext.warrantys'的调用也尝试访问'Local'集合似乎很荒谬。 –