Je reçois ci-dessous erreur de la propriété objContext.warrantys du cadre de l'entitéModèle .Net MVC Repository avec EF lancer erreur (local a lancé une exception du type 'System.InvalidOperationException'
Message d'erreur:. Une valeur NULL a été retourné après appelant la méthode 'get_ProviderFactory' sur une instance de fournisseur de magasin de type 'System.Data.OleDb.OleDbConnection'. le fournisseur de magasin peut ne pas être fonctionne correctement.
Local 'objContext.warrantys.Local' threw an exception of type 'System.InvalidOperationException' System.Collections.ObjectModel.ObservableCollection<DSGWarrantyServiceRep.Core.warranty> {System.InvalidOperationException}
en 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()
{
}
}
Maintenant, je vais ajouter la classe dbcontext.
public class WarrantyContext:DbContext
{
public WarrantyContext() : base("name=warrantyConnectionString")
{
}
public DbSet<warranty> warrantys { get; set; }
}
maintenant de ma classe de service de garantie mis en œuvre ici
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;**
}
}
Vous n'utilisez pas 'objContext.warrantys.Local' dans le le code que vous affichez, ni le code qui provoque l'erreur. –
Je n'utilise pas objContext.warrantys.Local. Je suis au-dessus de cette erreur de objContext.warrantys sous la fonction GetAllWarranty(). –
Je vais essayer de reformuler ma question. 'GetAllWarranty()' renvoie uniquement une requête. Il ne l'exécute pas *. Donc ma question est: où appelez-vous la méthode 'GetAllWarranty()' d'une manière que l'erreur est levée? Il semble assez absurde qu'un appel à 'objContext.warrantys' essaye aussi d'accéder à la collection' Local'. –