0

我使用 Visual Studio 2010、MVC 3 和 Entity Framework 4.1(数据库优先)使用现有数据库创建 Web 应用程序。换句话说,数据库的结构用于生成模型的基本代码。我使用“具有读/写操作和视图的控制器,使用 EntityFrameword”作为脚手架选项创建了控制器。但是,当我访问 Web 应用程序时,我看不到数据库中已经存在的数据,如果我插入新数据,我可以使用 Web 应用程序看到它,但在我的数据库中看不到它。我现在想知道我的 Web 应用程序在哪里获取和存储其数据。就好像在其他地方创建了一个具有相同结构的新数据库,但我不知道在哪里。

顺便说一句,我在创建第一个控制器时将“新数据上下文...”指定为数据上下文类。

4

1 回答 1

0

我想你应该开始创建数据库(或另一个场景来创建新数据库并删除前)

DropCreateDatabaseAlways<OhMyContext> initDb = 
                             new DropCreateDatabaseAlways<OhMyContext>();

在那之后

using (OhMyContext context = new OhMyContext())
{
    initDb.InitializeDatabase(context);
}

现在你可以使用你的数据库了。它将按照定义的配置创建 SQL 服务器。

当然你应该使用你DbSet<T>的收藏。但数据将在context.SaveChanges().

冰川

于 2011-08-13T17:37:43.157 回答