云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 使用Entity Framework 4进行代码优先开发

使用Entity Framework 4进行代码优先开发

  • 62 次阅读
  • 3 次下载
  • 2025/6/7 1:34:52

迄今为止,我们已经写好了网站里实现列出餐会清单和创建餐会信息的控制器和视图的所有代码。

第四步: 数据库

代码已经写好了。现在让我们来运行程序。 但数据库呢?

我们现在还没有数据库呢——其实到目前为止也没有必要,因为我们“代码优先”的开发流程并不要求数据库来定义和使用我们的模型类。

但当我们实际运行我们的应用程序时,我们要存储Dinner和 RSVP对象的。我们可以用下面的两种方式之一去创建数据库:

1. 使用数据库工具(如SQL Management Studio或 Visual Studio)去手动创建和定义数据库结构; 2. 使用EF代码优先类库根据我们定义好的模型自动创建和生成数据库结构。 第二种方式非常酷,而且我们要把它用在我们的NerdDinner程序中。 配置数据库连接字符串

在开始前,我们要设置好指向将要创建的数据库的连接字符串。我们把数据库连接字符串“NerdDinners”添加到应用程序的web.config文件中,如下所示:

在默认情况下,当你用EF的代码优先类库创建一个DbContext类的时候,它会自动查找和Context类名匹配的连接字符串。因为我们将Context类命名为“NerdDinners”,所以,当ASP.NET应用程序初始化它的时候,默认会找到前面添加好的“NerdDinners”数据库连接字符串。 使用SQL CE 4

EF 代码优先类库可以支持多个不同的数据库——包括 SQL Server、 SQL Express和 MySQL。

两个星期前,我写了一篇在ASP.NET中使用嵌入式SQL CE 4 数据库引擎的博客。SQL CE 4 是一个轻量级的基于文件的数据库,安装简便,且可以嵌入在ASP.NET应用程序中。它支持低成本的宿主环境,又能够轻松地迁移到SQL Server 数据库当中。

在定义(和重新定义) 你的数据模型层的前期阶段,SQL CE可以是一个很不错的选择——另外,只要你想,还可以快速地创建和重新创建数据库。在开发NerdDinner应用程序时,我们将以SQL CE 4 作为数据库。后面,我们可以选择更改连接字符串去将产品部署到SQL Express或者SQL Server上——无需修改任何一行代码。 我前面设置的数据库连接字符串,指定了NerdDinners.sdf 数据库文件,并使用SQL CE 4 数据库驱动程序。要使它正常工作,你还需要安装SQL CE 4——安装它可以通过标准的SQL CE安装程序或WebMatrix(已内置SQL CE)。SQL CE 4 很小,只要几秒钟就可以安装好。

重要事项:上面的连接字符串中,我们指定将NerdDinners.sdf文件创建在\\DataDirectory\\文件夹下——在ASP.NET应用程序中对应的就是其根目录下的\\App_Data\\文件夹。默认情况下,新建\空ASP.NET MVC Web应用程序\项目模板不会创建此目录。所以你需要显式在项目中创建此文件夹(右键单击该项目并选择\添加ASP.NET文件夹-> Add_Data->\菜单项)。 自动创建数据库结构(Schema)

EF 代码优先类库支持自动地从数据模型类生成数据库结构和数据库的能力——免除用户必须手动去执行这些步骤。

如果您的连接字符串指定的SQL CE 或 SQL Express 数据库文件在磁盘中不存在,默认就会发生。你根本不需要执行任何手动步骤。

要看到效果,我们可以按 F5 键运行我们的NerdDinner应用程序。它会启动浏览器,并访问我们应用程序的根目录\。你应该可以看到下面所示的画面:

访问应用程序的根目录会调用到HomeController.Index()这个函数——它会实例化并查询我们的NerdDinners context类,来从数据库获取即将举办的餐会列表。因为我们在连接字符串中指定的NerdDinners.sdf数据库文件并不存在,所以EF 代码优先类库将自动地为我们创建该数据库。它会根据NerdDinners context类,推断出数据库结构,最后生成数据库。

你可以通过在Visual Studio解决方案管理器上点击“显示所有文件”图标,然后点击“刷新”按钮,展开App_Data文件夹查看那个自动生成的SQL CE数据库文件。

搜索更多关于: 使用Entity Framework 4进行代码优先开发 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

迄今为止,我们已经写好了网站里实现列出餐会清单和创建餐会信息的控制器和视图的所有代码。 第四步: 数据库 代码已经写好了。现在让我们来运行程序。 但数据库呢? 我们现在还没有数据库呢——其实到目前为止也没有必要,因为我们“代码优先”的开发流程并不要求数据库来定义和使用我们的模型类。 但当我们实际运行我们的应用程序时,我们要存储Dinner和 RSVP对象的。我们可以用下面的两种方式之一去创建数据库: 1. 使用数据库工具(如SQL Management Studio或 Visual Studio)去手动创建和定义数据库结构; 2. 使用EF代码优先类库根据我们定义好的模型自动创建和生成数据库结构。 第二种方式非常酷,而且我们要把它用在我们的NerdDinner程序中。 配置数据库连

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com