0

チュートリアル 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>

sdfファイルで接続するための設定

問題は、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という名前はどこで作成できましたか?

ありがとうございました

4

1 に答える 1