zoukankan      html  css  js  c++  java
  • P1 准备工作
















    三者的依赖关系

    创建api项目




    上面输入Asp.net core进行搜索



    3.0的api模板现在比较简洁,以前博主是倾向于直接选择Empty的项目。

    创建后的项目比较简洁,带了一个Controller还有一个modle





    这是一个modle类

    它是一个简单的Controller


    这两个都是用来演示的,我们不需要直接删掉就可以了

    Program类

    这个类比较重要。

    Main方法负责配置和运行整个web程序
    下面这个方法会实现IHosetBuilder的对象。

    实际创建出来的就是HostBuilder的实例

    有了HostBuilder以后,再使用它的Build方法,就可以创建出来这个数组,

    创建的这个数组,实现了IHost这个接口。

    最后调用数组上的Run方法来运行我们这个web程序。这里的代码就暂时先不改了。
    项目在建立之后,实际上是进行了一些默认的配置。在源码中可以看到。这里就先不看了。

    我们主要注重看这一行代码。这里使用到了Startup这个类。

    Startup类主要就两个方法

    它有一个构造函数,注入了IConfiguration。有了IConfiguration我们就可以使用配置信息了。例如Appsetting.json里面的配置信息就可以用。



    .net core有服务的容器,这个方法就是向服务的容器注入服务。已经注册的服务就可以通过依赖注入的方式,在整个应用程序的其他地方进行使用。

    AddController仅仅是包含了构建API的服务。在.net core 2.0的时候我们这里是写的AddMvc()但是在3.0里面包含了很多的东西,我们并不需要。

    configure方法

    主要指定.net core程序是如何响应http请求的,换句话就是我们在这里配置请求的管道。怎么配置呢,就是在这里添加很多的中间件。

    这里的每一个Use就相当于添加了一个中间件

    IsDevelopment判断当前是不是开发环境。如果是的话,在发生异常的时候就会返回一个错误页面,

    UseAuthorization为整个应用程序添加了授权的能力。通常授权的配置是在ConfiureServices方法里面来完成的




    修改启动


    相当于是点了项目右键属性,然后找到dubug


    这是默认的配置

    都删除就剩下这些

    运行程序

    页面是404,这是因为我们把默认的Controller给删掉了。

    我们先不改了 因为我们还没有创建Controller

    数据库

    使用sqlite然后使用EF
    现在需要在项目里面添加EF core和 sqlite




    Tools是用来做迁移用的

    创建model

    创建文件夹entities


    创建Comnany的类

    公司类,里面有员工Employee。

    创建Employee类。用的是Resharp的快捷键

    用Resharp的快捷键移动到单独的类里面。

    代码提前写好,放进来

    性别是一个枚举类。

    关联 的导航属性

    创建DbContext

    创建一个Data文件夹,然后创建RoutineDbContext


    对实体的属性值进行一些 限制,重写OnModelCreating方法

    指向Company这个实体,它的name属性,首先是必填的 。然后长度是100

    其他的属性写完这段代码 ,

    手动指明了这两个实体的一对多的关系

    在删除的时候,如果Employee下有员工的话就没法删除。

    DbContext需要DbContextOptions这个参数才能工作。在构造函数里面,将这个配置传递进去。

    把这两个实体映射到数据库的表内。


    还可以初始化数据

    Repository

    首先是创建Services文件夹

    先创建接口类

    这段代码没录,写好放进去

    最后保存的动作也在了Repository里面了。

    Repository实现类



    构造函数内注入DbContext







    更新,不写也行,EF Core是争对实体进行跟踪的,



    员工部分


    获取公司下面的某一个员工

    添加员工

    更新员工,因为属性是动态跟踪的,所以不用写这行代码了。

    删除和保存

    保存通常不写子啊Repository里面

    注册



    注册DbContext。在里面我们可以有一些配置

    使用Sqlite然后里面放上链接字符串。


    每次运行删除数据库并重新迁移。

    加入异常

    迁移





    生成了两个类,一个是迁移的变化,再就是当前数据库的快照。

    运行

    可以看到控制台输出了一些代码这里的日志都是绿色的info级别的log,说明都成功了。



    根目录出现了一个db文件,数据库出来了 说明迁移已经成功了。




    打开后添加一个数据源

    找到这个db文件



    测试连接



    已经有三条数据了

    结束

  • 相关阅读:
    python使用 db.select 返回的数据只能遍历一次
    redis学习主从配置
    php操作EXCLE(通过phpExcle实现读excel数据)
    php操作EXCLE(通过phpExcle实现向excel写数据)
    Redis 源码安装
    MongoDb环境安装
    php下载
    漂亮的jQuery tab选项卡插件
    jquery禁用右键、文本选择功能、复制按键的实现
    jquery中邮箱地址 URL网站地址正则验证实例
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/12542233.html
Copyright © 2011-2022 走看看