我已经看了以前一些关于这个问题,但我有连接简单的数据库MVC项目问题我解决不了我的问题MVC4无法连接到SQL Server 2008中的远程数据库
。这是非常困难的,我正在使用VS2010,SQL Server 2008(远程数据库)。我有一个已经创建的数据库,我想先用Entity Framework使用代码。听起来很容易,因为我只是按照教程,但没有教程,我曾经工作过。这些教程使用较旧的MVC和较旧的实体框架。我有MVC4和EF 5
下面是我使用
的步骤创建新的MVC项目,并在引用我看到实体框架
创建类,这将对应一个表尚未在DB创建
添加连接字符串
web.config
添加额外的行
global.asax
避免出错的实体5抛出了与DB添加控制器的DbContext
跑项目,你可以猜测的问题(从其他民族问题与此发现了这一点)与控制器称为视频出现
错误:
Exception Details: System.Data.SqlClient.SqlException: Invalid object name 'dbo.videos'.
我不知道和这个MVC似乎比web表单更加不稳定,因为我可以在没有问题的情况下连接到webforms中的同一个数据库。
<add name="videoDBContext"
connectionString="Data Source=xxxxxxx;Initial Catalog=xx;Persist Security Info=True;User ID=xx; Password=xxx"
providerName="System.Data.SqlClient" />
类:
public class video
{
public int ID { get; set; }
public string Title { get; set; }
public DateTime ReleaseDate { get; set; }
public string Genre { get; set; }
public decimal Price { get; set; }
}
的DbContext:
public class videoDBContext : DbContext
{
public DbSet<video> videos{ get; set; }
}
控制器动作
public ActionResult Index()
{
return View(db.videos.ToList()); //
Exception Details: System.Data.SqlClient.SqlException: Invalid object name 'dbo.videos'.
}
这不是一个ASP.NET MVC问题,它是一个实体框架问题。假设这些是新表,在某些时候SQL表必须实际生成。我从来没有用EF代码第一,但我会猜你的问题,我读为“从代码第一模型添加表和现有数据库的关系”可能与Code First Migrations有关:http:// msdn。 microsoft.com/en-us/data/jj591621.aspx – JayC