• MVC学习之数据库开发模式:模型优先实例介绍


    数据库开发模型之模型优先的步骤如下

    1、在数据库中建立一个空的数据库【不需要建立任何表】
         如果不事先创建一个新的数据库,如果在连接数据库那步不选着数据库,默认是在Master数据库中生成表的
    2、添加ADO.NET实体数据模型
         选中Models文件夹。添加--新建项--数据--ADO.NET实体数据模型--取名【文中取名为ModelFirst】--控模型--完成
    3、修改实体容器名称
        双击ModelFirst.edmx,在左边的空白页面上单击右键--属性---修改实体容器名称【该名称就是web.config中添加的数据库连接字符串的名字。可以随意取的】
    4、添加实体,并修改实体集名称
        ModelFirst.edmx的空白页面上右键--新添--实体--修改实体集的名字【改名字是数据库中表的名字】--确定
    5、给新建的表添加属性
       选中属性--右键--新增--标量属性。这样就可以给新建的表添加需要的属性字段了
       如果有需要,通过空白处右键单击—》新增—》关联—》设置自己想要的关联关系—》确定 来关联关系
    6、生成表
       6-1、在空白处--右键--根据模型生成数据库---完成
       6-2、在sql文件页面--右键--连接--连接,
       6-3、在sql文件页面--右键--执行
    7、查看结果
       7-1、打开数据库,在之前的建立好的数据库中,已经有了一张空白表了
       7-2、在web.config文件中,已经生成好了数据库连接字符串的节点,节点名字就是之前设置的实体容器名称
       7-3、在Models文件下的XXX.tt文件下已经生成好了表对应的类。
       7-4、在Models文件下的XXX.Context.tt文件下已经生成好了数据上下文类。类名和实体容器名称一样
    8、创建控制器和对应的视图页面
        8-1、在控制器中创建数据上下文类的实例
        8-2、通过实例操作数据

    具体操作如下所示:

    1、在数据库中建立一个空的数据库【不需要建立任何表】

    2、添加ADO.NET实体数据模型

    3、修改实体容器名称

    4、添加实体,并修改实体集名称

    5、给新建的表添加属性

    6、生成数据库【实际上就是生成表】

    注意:在这一步,如果之前没有创建数据库Computer,也不选择连接到数据库这个选项吗,测试连接也是可以连接成功的,那么生成的表就是默认在Master数据库里面。

    如果在这个过程中出现上面这个警告,直接点击确定即可!

    到此为止,根据模型生成数据库已经完成了!

    7、查看结果

    数据库:

    web.config配置文件自动生成了连接数据库的节点:

    在Models文件下的XXX.tt文件下已经生成好了表对应的类。

    在Models文件下的XXX.Context.tt文件下已经生成好了数据上下文类。类名和实体容器名称一样

    8、创建控制器和对应的视图页面

       在控制器中创建数据上下文类的实例,通过实例操作数据。

    控制器类:

    using ModelFirst.Models;
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Mvc;
    
    namespace ModelFirst.Controllers
    {
        public class ConputerController : Controller
        {
            //
            // GET: /Conputer/
            private ModelFirstComputer db = new ModelFirstComputer();
            public ActionResult Index()
            {
                return View(db.ComputerInfo.ToList());
            }
        }
    }

    视图类:

    @model IEnumerable<ModelFirst.Models.ComputerInfo>
    @{
        ViewBag.Title = "Index";
    }
    
    <h2>Index</h2>
    <ul>
        @foreach (var item in Model)
        {
            <li>
                <strong>@Html.DisplayNameFor(model => model.Name):</strong>
                @Html.DisplayFor(modelItem => item.Name)<br />
                <strong>@Html.DisplayNameFor(model => model.Price)</strong><br />
                @Html.DisplayFor(modelItem => item.Price)
            </li>
        }
    </ul>

    结果展示:

  • 相关阅读:
    centos7.6 redis
    centos7.5 rabbitmq3.7.4
    centos7.6 nfs
    nginx跨域
    Linux进阶教程丨第1章:访问命令行
    Representation Learning for Event-based Visuomotor Policies
    Goland 2019下载和安装(带破解补丁和汉化包)
    Adobe XD CC 2020中文破解版(附破解教程)
    SSH 三步解决免密登录
    cygwin命令行安装
  • 原文地址:https://www.cnblogs.com/Yisijun/p/4673550.html
Copyright © 2020-2023  润新知