ADO.NET Entity Framework插入和更新数据(实体框架快速入门)

ADO.NET Entity Framework插入和更新数据(实体框架快速入门)

这是 实体框架快速入门的最后一项任务。 在此任务中,您将对与 DataGridView 控件绑定的 Course 对象所做的更改保存到数据库中。 还将运行已完成的 Course Manager 应用程序。

保存对对象所做的更改

  1. “工具箱”中,展开 “公共控件”,将 “按钮”控件拖到 CourseViewer 窗体设计器,将控件的名称更改为 saveChanges,并将 Text 值更改为 Update

  2. CourseViewer 窗体设计器中,双击 saveChanges 控件。

    此时将创建 saveChanges_Click 事件处理程序方法。

  3. 粘贴以下代码,这些代码将对象更改保存到数据库中。

    VB
    C#
    C++
    F#
    JScript

    Try    ' Save object changes to the database,     ' display a message, and refresh the form.
        schoolContext.SaveChanges()
        MessageBox.Show(
                        "Changes saved to the database.")
        
                        Me.Refresh()
    
                        Catch ex 
                        As Exception
        MessageBox.Show(ex.Message)
    
                        EndTry
    

    Try    ' Save object changes to the database,     ' display a message, and refresh the form.
        schoolContext.SaveChanges()
        MessageBox.Show(
                        "Changes saved to the database.")
        
                        Me.Refresh()
    
                        Catch ex 
                        As Exception
        MessageBox.Show(ex.Message)
    
                        EndTry

    try
    {
        
                        // Save object changes to the database, // display a message, and refresh the form.
        schoolContext.SaveChanges();
        MessageBox.Show(
                        "Changes saved to the database.");
        
                        this.Refresh();
    }
    
                        catch(Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
    
    
                      
    

    try
    {
        
                        // Save object changes to the database, // display a message, and refresh the form.
        schoolContext.SaveChanges();
        MessageBox.Show(
                        "Changes saved to the database.");
        
                        this.Refresh();
    }
    
                        catch(Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
    
    
                      

    
    

    
    

    
    

    
    

    
    

    
    

通过释放长时间运行的对象上下文关闭连接

  • closeForm_Click 事件处理程序方法中,键入以下代码。 此代码在关闭窗体之前释放对象上下文。

    VB
    C#
    C++
    F#
    JScript

    ' Dispose the object context.
    schoolContext.Dispose()
    
    
                      
    

    ' Dispose the object context.
    schoolContext.Dispose()
    
    
                      

    //Dispose the object context.
    schoolContext.Dispose();
    
    
                      
    

    //Dispose the object context.
    schoolContext.Dispose();
    
    
                      

    
    

    
    

    
    

    
    

    
    

    
    

生成并运行类计划应用程序

  1. “调试”菜单中,单击 “开始调试”“开始执行(不调试)”

    此时将生成并启动应用程序。

  2. 当加载窗体时,从 ComboBox 控件中选择一个系。

    此时将显示属于该系的课程。

  3. DataGridView 中,更新课程信息或添加新课程,然后单击 Update

    此时会将更改保存到数据库中,并显示一个消息框,指示已保存了更改。

后续步骤

您已成功地创建并运行了 Course Manager 应用程序。您还完成了这一实体框架快速入门。

请参见

概念

其他资源

转载于:https://www.cnblogs.com/bmate/archive/2010/12/29/1920448.html

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

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

(0)
上一篇 2021年8月9日 下午5:00
下一篇 2021年8月9日 下午6:00


相关推荐

  • Batchnorm原理详解「建议收藏」

    Batchnorm原理详解「建议收藏」Batchnorm原理详解前言:Batchnorm是深度网络中经常用到的加速神经网络训练,加速收敛速度及稳定性的算法,可以说是目前深度网络必不可少的一部分。本文旨在用通俗易懂的语言,对深度学习的常用算法–batchnorm的原理及其代码实现做一个详细的解读。本文主要包括以下几个部分。Batchnorm主要解决的问题 Batchnorm原理解读 Batchnorm的优点 Batc…

    2022年4月29日
    44
  • “养龙虾”红火了,OpenClaw破圈了,打工人天塌了?

    “养龙虾”红火了,OpenClaw破圈了,打工人天塌了?

    2026年3月13日
    3
  • 使用51单片机驱动航模无刷电机

    使用51单片机驱动航模无刷电机话不多说直接上图 nbsp nbsp nbsp 使用的是 89c52rc 单片机 电调驱动使用 50 500Hz 的脉冲 我用的 400Hz 脉冲 P2 0 作为输出 电调驱动脉冲高电平时间 0 7 1 9ms 开始做一个油门行程 输出 1 9ms 高电平脉冲 听到电机 哔哔 两声 然后输出 0 7ms 高电平脉冲 听到电机 哔 的一声 表示它准备好了 然后就可以转啦 输出 0 7ms 高电平电机停止 往上加 电机转得就越

    2026年3月26日
    3
  • java中method方法_java修改字体大小

    java中method方法_java修改字体大小LocalDateaThousandDaysLater=hello.plusDays(1000);这个调用后hello会有什么变化?他会改为1000天之后的日期吗?事实上,并没有。plusDays()方法会生成一个新的LocalDate对象,然后将这个新对象赋值给aThousandDaysLater。原来的对象在堆中不会有任何改变。我们说的plusDays方法没有更改调用plusDays方法的

    2025年9月12日
    7
  • EagleEye论文+代码

    EagleEye论文+代码EagleEye论文+代码论文代码论文代码论文原作者的代码GitHub链接为EagleEye。下载数据集下载ILSVRC2012数据集。需要先注册账号并登陆。也可以直接用ImageNet数据集代替。如果觉得从官网下载的速度太慢,可以使用迅雷链接或百度云链接,网上都有很多。在这里,我推荐使用一个Linux多线程命令行下载工具aria2,可以达到稳定在5MB/s。安装python包问题一exportGIT_PYTHON_REFRESH=quiet这好像是一个和git有关的问题。解决

    2022年8月16日
    12
  • 191. Number of 1 Bits Leetcode Python

    191. Number of 1 Bits Leetcode Python

    2022年1月14日
    39

发表回复

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

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