ASP.NET_动态网页怎么连接数据库

ASP.NET_动态网页怎么连接数据库近期本人在关注实体设计的过程中一直在了解“ADO.NETEntityFramework数据模型”,从中结识了.NETFramework4中的ASP.NET动态数据,ASP.NET动态数据允许您通过在运行时从数据库架构推断数据实体的外观和行为并从中派生UI行为,创建可扩展的、数据驱动的Web应用程序。         动态数据的一个重要功能是基架机制

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定
  近期本人在关注实体设计的过程中一直在了解“ADO.NET Entity Framework 数据模型”,从中结识了.NET Framework 4中的ASP.NET 动态数据,ASP.NET 动态数据允许您通过在运行时从数据库架构推断数据实体的外观和行为并从中派生 UI 行为,创建可扩展的、数据驱动的 Web 应用程序。

  

 

       动态数据的一个重要功能是基架机制。 在动态数据网站中启用基架机制后,ASP.NET 会对数据模型进行分析,并基于数据模型中的数据动态地生成网页。 这些自动生成的网页为每个表提供了显示、插入、删除及编辑功能。同时,您也可以轻松地自定义基架元素,或者创建新元素以重写默认行为。

  

 

       下面通过一个实例来演示基于实体设计动态数据网站,包括以下内容:

  

l  创建ADO.NET Entity Framework数据模型

  

l  创建实体框架,包括:实体、继承关系

  

l  根据数据模型自动生成数据库对象

  

l  创建一个基于ADO.NET Entity FrameworkASP.NET动态数据网站

  

第一步:新建ASP.NET Dynamic Data 实体网站 

打开Visual Studio 2010,新增一个ASP.NET Dynamic Data 实体网站,如下图所示:

  

 ASP.NET_动态网页怎么连接数据库


 

 

·         若要使用 LINQ to SQL 模型,请选择动态数据 LINQ to SQL 网站

 

·         若要使用 ADO.NET Entity Framework 模型,请选择“Dynamic Data 实体网站

  

第二步:创建 Entity Framework 创建数据模型

1.       创建数据模型

1.         首先右击 App_Code 文件夹,然后单击添加新项

  

 

2.         新增“ADO.NET 实体数据模型,如下图所示:

  

 ASP.NET_动态网页怎么连接数据库


 

 

 

3.         选择模型内容

  

可以选择“从数据库生成”模型中的实体,即一个表对应一个实体。

  

也可以选择“空模型”,通过可视化界面设计概念模型,再通过概念模型生成物理模型,即数据库对象。

  

当前实例以“空模型”为例,我们将选择设计概念模型再通过模型生成数据库对象,如下图所示:

  

ASP.NET_动态网页怎么连接数据库


 

 

 

2.        创建实体及关系

1.         首先打开新增的数据模型的设计窗口。

  

 

2.         通过工具箱,在增加“实体”:

  

 ASP.NET_动态网页怎么连接数据库

 

 

从工具箱中拖动一个实体到设计窗口

  

 ASP.NET_动态网页怎么连接数据库


 

 

 

3.         设置实体的“实体名”与“实体集名称”

  

实体名:即实体的名称,系统会自动生成代码时,会根据此名称生成对应的类名

  

实体集名称:即实体对应的数据库对象名称,系统通过模型生成数据库时,会根据此名称生成对应的表名

  

ASP.NET_动态网页怎么连接数据库

 

 

  

 

4.         添加实体的属性

  

接下来可以增加实体的属性,如下图所示:

 

ASP.NET_动态网页怎么连接数据库


 

增加实体的“属性”时,可以设置相关属性,如是否为null、类型等,这些属性会影响:

 

l  生成的数据库表的字段属性。

 

l  动态数据网站的编辑界面的校验、控件等。

 

ASP.NET_动态网页怎么连接数据库

 

根据具体业务的分析,我们增加如下二个实体:

 

ASP.NET_动态网页怎么连接数据库

 

5.         设置实体关系

 

首先在可视化设计窗口点击右键,添加“关联”:

 

ASP.NET_动态网页怎么连接数据库

 

 

  然后设置关联的各种属性,如下图:

 

ASP.NET_动态网页怎么连接数据库

             

              设置后的数据模型:

 

              ASP.NET_动态网页怎么连接数据库


 


3.       根据模型生成数据库

 

首先在可视化设计窗口点击右键,点击“根据模型生成数据库”:

 

ASP.NET_动态网页怎么连接数据库

 

       其次设置好您的数据库连接,如下图:

 

       ASP.NET_动态网页怎么连接数据库

 

 

       系统后自动生成SQL脚本,并且会存储在指定的SQL脚本文件中,如下图:

 

ASP.NET_动态网页怎么连接数据库

 

       打开此SQL脚本文件,执行SQL即可:

 

ASP.NET_动态网页怎么连接数据库
 

第三步:注册数据上下文

 

1.         首先打开Global.asax.cs文件。

 

2.         RegisterRoutes 方法中,根据注释说明取消对下列行的注释并对其进行修改:

 

ASP.NET_动态网页怎么连接数据库

    其中通过设置ScaffoldAllTables属性为true,注册数据上下文时为所有表启用基架,只有为数据模型注册数据上下文才能使用动态数据功能。

Jetbrains全家桶1年46,售后保障稳定

 

第四步:运行动态数据网站

 

1.         选择Default.aspx页面点击右键,点击“在浏览哭中查看”。

 

 ASP.NET_动态网页怎么连接数据库

 

 

2.         主界面会将通过列表展示创建的数据模型中所有实体

 

ASP.NET_动态网页怎么连接数据库

 

3.         选择表名称可以展示所有的记录,以及新增、修改、删除记录

 

ASP.NET_动态网页怎么连接数据库

 

       综上所示:通过ADO.NET Entity Framework数据模型与动态数据网站结合,可以方便实现基于实体设计与编码,自动生成网页为每个表提供了显示、插入、删除及编辑功能。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231283.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 介绍6款热门的SpringCloud微服务开源项目,总有适合你的!

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 今天介绍六款比较热门的SpringCloud微服务项目,感兴趣的可以clone下来研究一下,相信对你学习微服务架构很…

    2021年6月28日
    118
  • 加多宝首度披露"换头手术"的详细内幕

    加多宝首度披露"换头手术"的详细内幕12月下旬,加多宝与王老吉的“改名案”和“怕上火案”判决结果先后出台,两大凉茶巨头之间的官司纠纷再起波澜。而加多宝集团品牌管理部负责人王月贵,在出席活动时首度披露了加多宝“换头手术”的详细内幕——由此,加多宝打赢凉茶之战的始末得以首次公开。以下为发言及访谈摘要:  快速出击,跟时间赛跑  在2012年,就在我们红罐凉茶迅速成长的时候,加多宝突然遭遇品牌地震,我们被迫放弃了使用和推广了17

    2025年6月30日
    3
  • python常用库大全一览_python常用扩展库

    python常用库大全一览_python常用扩展库转载地址:原文地址链接Python常用库大全-尹成的技术博客-CSDN博客window._ty_rum&&window._ty_rum.server||function(t){functione(t){J&&(W.e[t]||(W.e[t]=[])).push(u())}func

    2025年7月26日
    2
  • c++枚举类型enum输出_python中的枚举

    c++枚举类型enum输出_python中的枚举enum枚举的含义?enum枚举的声明?enum枚举的特点?enum枚举的作用?enum枚举的注意事项?

    2022年9月8日
    1
  • C++线程池QueueUserWorkItem

    C++线程池QueueUserWorkItem在计算机程序中,线程是一种很重要的资源,使用的恰当可以极大的提高程序的效率,也就是多线程的使用,但是多线程会让应用程序变得异常复杂,会占用大量的系统资源。就像QQ表情一样,每一个QQ表情的闪动都需要构建一个线程,如果用户使用了大量的表情(GIF),将会有多少个线程在运行,系统的性能将大大减少,甚至导致死机。在这种情况下,多线程变得不太合适了,那么什么机制适用于这种情况下呢,这就是线程池。通

    2025年8月7日
    1
  • sql-connectionStrings「建议收藏」

    sql-connectionStrings「建议收藏」<connectionStrings><addname=”ClassReservatConnectionString”connectionString=”server=localhost;userid=root;password=123456;database=classreservat;”providerName=”System.Data.SqlClient…

    2022年5月11日
    39

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号