10bet网址
MySQL Connector/NET开发者指南
相关的文档10bet官方网站 本手册下载

MySQL Connector/NET开发者指南/连接器/净教程/教程:使用实体框架实体作为Windows窗体数据源

6.3教程:使用实体框架实体作为Windows窗体数据源

本教程描述如何使用Microsoft Visual Studio从实体数据模型中的实体创建Windows窗体数据源。的步骤是:

要执行本教程中的步骤,首先安装世界数据库示例,您可以从MySQL文10bet官方网站档页面.您还可以在同一页面上找到关于如何安装数据库的详细信息。

创建一个新的Windows窗体应用程序

第一步是创建一个新的Windows窗体应用程序。

  1. 在Visual Studio中,选择文件,然后项目从主菜单。

  2. 选择Windows窗体应用程序安装模板。点击好吧.这样就创建了解决方案。

要获取最新的MySQL实体框架程序集,请下载NuGet包。或者,使用MySQL for Visual Studio 1.2.9(或更高版本)提供的MySQL应用程序配置工具来获取最新的包并协调配置。有关使用该工具的详细信息,请参见实体框架

添加实体数据模型

要向您的解决方案添加实体数据模型,请执行以下操作:

  1. 在解决方案资源管理器中,右键单击应用程序并选择添加然后新项目.从Visual Studio安装模板中,选择ADO。实体数据模型(见下图)。点击添加

    图6.11添加实体数据模型

    内容在周围的文本中描述。

  2. 现在,您将看到实体数据模型向导。控件生成实体数据模型世界数据库sample。选择的图标数据库中的EF Designer(或从数据库生成在较老版本的Visual Studio中)。点击下一个

  3. 现在可以选择本地主机(世界)前面与数据库建立的连接。选择以下项目:

    • 是的,在连接字符串中包含敏感数据。

    • 中保存实体连接设置App.config为:

      worldEntities

    如果还没有这样做,此时可以通过单击创建新连接新连接(见下图)。有关创建到数据库的连接的其他说明,请参见做一个连接

    图6.12实体数据模型向导-连接

    内容在周围的文本中描述。

    记录要在其中使用的实体连接设置App.Config,因为稍后将使用它们来编写必要的控制代码。点击下一个

  4. 实体数据模型向导连接到数据库。

    如下图所示,然后呈现给您的是数据库的树形结构。从这里您可以选择您想要包含在模型中的对象。如果您还创建了Views和Stored Routines,那么这些项将与任何表一起显示。在本例中,您只需要选择表。点击完成创建模型并退出向导。

    图6.13实体数据模型向导-对象和设置

    内容在周围的文本中描述。

    Visual Studio生成一个包含三个表(城市、国家和国家语言)的模型,然后显示它,如下图所示。

    图6.14实体数据模型图

    内容在周围的文本中描述。

  5. 从Visual Studio主菜单中选择构建然后构建解决方案以确保到目前为止所有内容都正确编译。

添加一个新的数据源

现在,您将向项目中添加一个新的Data Source,并查看如何使用它来读写数据库。

  1. 从Visual Studio主菜单中选择数据然后添加新的数据源.您将看到数据源配置向导。

  2. 选择对象图标。点击下一个

  3. 选择要绑定的对象。展开树,如下图所示。

    在本教程中,您将选择城市表。选择城市表之后,单击下一个

    图6.15数据源配置向导

    内容在周围的文本中描述。

  4. 向导将确认要添加城市对象。点击完成

  5. 城市对象现在将出现在数据源面板中。如果没有“数据源”面板,请选中数据然后显示数据源从Visual Studio主菜单。然后将显示停靠面板。

在Windows窗体中使用数据源

此步骤描述如何在Windows窗体中使用数据源。

  1. 在“数据源”面板中,选择刚刚创建的数据源,并将其拖放到表单设计器上。默认情况下,数据源对象将被添加为数据网格视图控件,如下图所示。

    请注意

    绑定到的数据网格视图控件cityBindingSource, Navigator控件绑定到cityBindingNavigator

    图6.16数据表单设计器

    内容在周围的文本中描述。

  2. 在继续之前,保存并重新构建解决方案。

添加代码以填充数据网格视图

现在可以添加代码,以确保Data Grid View控件将使用来自城市数据库表的数据填充。

  1. 双击表单以访问其代码。

  2. 添加以下代码来实例化实体数据模型EntityContainer对象并从数据库检索数据以填充控件。

    使用System.Windows.Forms;命名空间WindowsFormsApplication4{公共部分类Form1: Form {worldEntities we;公共Form1() {InitializeComponent();}私有void Form1_Load(对象发送者,EventArgs e){我们=新的世界实体();cityBindingSource。数据Source = we.city.ToList(); } } }
  3. 保存并重新构建解决方案。

  4. 运行的解决方案。确认填充了网格(参见下一个图中的示例),并且可以导航数据库。

    图6.17填充的网格控件

    内容在周围的文本中描述。

添加代码以将更改保存到数据库

此步骤说明如何添加使您能够将更改保存到数据库的代码。

绑定源组件确保数据网格视图控件中所做的更改也会对绑定到它的实体类进行更改。但是,需要将这些数据从实体保存回数据库本身。这可以通过启用Navigator控件中的Save按钮和添加一些代码来实现。

  1. 在窗体设计器中,单击窗体工具栏中的保存图标,并确认其启用属性设置为真正的

  2. 双击表单工具栏中的保存图标以显示其代码。

  3. 添加以下(或类似)代码,以确保当用户单击应用程序中的save按钮时,数据被保存到数据库中。

    公共Form1() {InitializeComponent();}私有void Form1_Load(对象发送者,EventArgs e){我们=新的世界实体();cityBindingSource。数据Source = we.city.ToList(); } private void cityBindingNavigatorSaveItem_Click(object sender, EventArgs e) { we.SaveChanges(); } } }
  4. 添加代码后,保存解决方案,然后重新构建它。运行应用程序并验证在网格中所做的更改是否被保存。