顧客情報を表示したいと思います。 その後、いくつかのクラスを作成しました。 Customer、Delivery、Order、OrderLine、Product、およびrentalDBが含まれます。 rentalDBクラスは、Product、Customer、Order、OrderLine、およびDeliveryの5つのDbSetを設定します。 私はリストビューでUserControllerで作るとき、私は顧客情報を表示することができない、それがエラーを取りますASP.NET MVC 3 EntityTypeにキーが定義されていません
One or more validation errors were detected during model generation:
System.Data.Edm.EdmEntityType: : EntityType 'OrderLine' has no key defined. Define the key for this EntityType.
System.Data.Edm.EdmEntityType: : EntityType 'Delivery' has no key defined. Define the key for this EntityType.
System.Data.Edm.EdmEntitySet: EntityType: EntitySet �OrderLine� is based on type �OrderLine� that has no keys defined.
System.Data.Edm.EdmEntitySet: EntityType: EntitySet �Delivery� is based on type �Delivery� that has no keys defined.
これらのエンティティは、キーを必要となぜ私にはわかりませんか? このエラーは考えられません。 私を助けることができますか?
--UserController.cs--
namespace MvcApplication2.Controllers
{
public class UserController : Controller
{
//
// GET: /User/
rentalDB _db = new rentalDB();
public ActionResult Index()
{
var model = _db.Customer;
return View(model);
}
}
}
--Delivery.csモデルでモデルにおけるfolder--
namespace MvcApplication2.Models
{
public class Delivery
{
public int trackId { get; set; }
public String address { get; set; }
public String postCode { get; set; }
public decimal deliveryPrice { get; set; }
public DateTime deliveryDate { get; set; }
public DateTime returnDate { get; set; }
}
}
--OrderLine.csが
namespace MvcApplication2.Models
{
public class OrderLine
{
public int basketId { get; set; }
public int productId { get; set; }
public int quantity { get; set; }
}
}
をfolder--
これは特別なケースで私のために働いた。モデルのコードを記述した後にコントローラを追加しましたが、エラーは発生しませんでした。その時点で、モデルは私が望んだものではないことがわかりました。生成されたビューはすべて間違っていたので、コントローラ/ビューを削除しました。その後、モデルを修正してコントローラを追加すると、エラーが表示されました。 1時間ぐるぐる回した後、私は[Key]を追加して機能しました。たぶん、ビジュアルスタジオのMvcの奇妙さやキャッシュ、知らない... – isitdanny