mvc4でSQLServer2008に接続できないために提供されたソリューションの1つを調べました。私はあなたの答えに従いましたが、エラーが発生しました。
public class videoDBContext : DbContext
{
static videoDBContext()
{
Database.SetInitializer<videoDBContext>(null);
}
public videoDBContext()
: base("Name=videoDBContext")
{
}
public DbSet<Video> Videos { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Configurations.Add(new VideoMap());
}
}
ドメインクラス
public class Video
{
public int Id { get; set; }
public string Description { get; set; }
}
マッピングクラス
public class VideoMap : EntityTypeConfiguration<Video>
{
public VideoMap()
{
// Primary Key
this.HasKey(t => t.Id);
// Properties
this.Property(t => t.Description)
.IsRequired()
.HasMaxLength(50);
// Table & Column Mappings
this.ToTable("Video");
this.Property(t => t.Id).HasColumnName("Id");
this.Property(t => t.Description).HasColumnName("Description");
}
}
コントローラーアクションとして
public ActionResult Index()
{
ViewBag.Message = "Welcome to ASP.NET MVC!";
using (videoDBContext context = new videoDBContext())
{
var list = **context.Videos.ToList();**
}
return View();
}
行の近くでエラーが発生しています:
Line 20: var s = context.Videos.ToList();
web.config
ファイルは
<add name="videoDBContext"
connectionString="metadata=res://*/Models.xx.csdl|res://*/Models.xx.ssdl|res://*/Models.xx.msl;provider=System.Data.SqlClient;provider connection string="data source=servername;initial catalog=xx.mdf;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
解決策を提供してください。どこが間違っているのですか?そして、それがばかげているか、あなたを不便にさせているならば、申し訳ありません。