La BD a une table PackagingInfo
. J'ai un Package
et une ShopEntities : DbContext
.
// Entity (ex. Package.cs)
[Table("PackagingInfo")]
public class Package
{
public decimal PackageID { get; set; }
public decimal Title { get; set; }
public decimal Cost { get; set; }
public bool isFree { get; set; }
}
// Entity Context (ex. ShopEntities.cs)
public class ShopEntities : DbContext
{
public DbSet<Package> Packages { get; set; }
}
// Controller Action (ex. HomeController.cs)
public ActionResult Index()
{
ShopEntities _db = new ShopEntities();
var q = _db.Packages.ToList();
return View(q);
}
Après avoir instancié le _db
et inspecter son Packages
la propriété et l'exception est remarquée :
The entity type Package is not part of the model for the current context.
Mise à jour
J'ai édité cette question et demandé sa réouverture parce que la situation se produit également dans une approche Modèle d'abord où le mappage de la table est fait dans le fichier EDMX au lieu de l'annotation remarquée ici :
La fenêtre du navigateur de modèles montre les Package
dans les types d'entités Model et Store, et le mappage de la table de l'entité montre chaque propriété correctement mappée à la colonne de la table. Il s'agit du même mappage réalisé par le style annotation code-first.