チュートリアル MVC Music Store v3.0b で mvc を学び始めています。mvcmusicstore.codeplex.com からのコードのダウンロードは問題なく動作します。今、同じ例を試していますが、独自のモデルを使用しています。
私の web.config ファイルの接続文字列は次のとおりです。
<connectionStrings>
<add name="PlanetStampEntities"
connectionString="Data Source=|DataDirectory|MvcPlanetStamp.sdf" providerName="System.Data.SqlServerCe.4.0"/>
</connectionStrings>
問題は、Models フォルダーの下のクラス SampleData.cs に格納されているデータにアクセスできないことです。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using MvcPlanetStamp.Models;
namespace MvcPlanetStamp.Controllers
{
public class StoreController : Controller
{
PlanetStampEntities storeDB = new PlanetStampEntities();
public ActionResult Index()
{
var tematicas = storeDB.Tematicas.ToList();
return View(tematicas);
}
}
}
var tematicas は結果を取得しません。しかし、クラスSampleData.csにレコードがあります
public class SampleData : DropCreateDatabaseIfModelChanges<PlanetStampEntities>
{
protected override void Seed(PlanetStampEntities context)
{
var tematicas = new List<Tematica>
{
new Tematica { Nombre = "Modernismo" },
new Tematica { Nombre = "Alhambra" },
new Tematica { Nombre = "Hollywood" },
new Tematica { Nombre = "Dibujos" },
new Tematica { Nombre = "Montañas" },
};
----
最後に、私のクラス PlanetStampsEntities.cs のコードは次のとおりです。
System.Data.Entity の使用;
namespace MvcPlanetStamp.Models
{
public class PlanetStampEntities : DbContext
{
public DbSet<Sello> Sellos { get; set; }
public DbSet<Tematica> Tematicas { get; set; }
public DbSet<Pais> Paises { get; set; }
}
}
ツリーのテーブル Sellellos が間違っているようです。私のクラスは Sello.cs です。このSelloesという名前はどこで作成できましたか?
ありがとうございました