2023年5月

Query选框

编写queryRun方法,

public QueryRun queryRun()
{
    QueryRun ret;

    ret = New Query(queryStr(QueryName));

    return ret;
}

.NetCore MVC项目的启动大致有以下流程:

  • 创建AppBuilder;
  • 注册服务;
  • 添加中间件到管线;
  • 运行;

但在不同版本中,实现上略有差异:

.Net5

.Net5 中,在Main方法里调用 CreateHostBuilder 方法执行 StartUp类,在其中注册服务并添加中间件,后再 Build 与 Run。

.Net6

.Net6中,运行类直接使用顶级语句,先将App Build好,再注册服务与添加中间件,最后Run。

Lambda 表达式描述了一个代码块(或者叫匿名方法),可以将其作为参数传递给构造方法或者普通方法以便后续执行,可用于创建委托,例如:

( parameter-list ) -> { expression-or-statements }

java中的一段实例代码:

public class LamadaTest {
    public static void main(String[] args) {
        new Thread(new Runnable() {
            @Override
            public void run() {
                System.out.println("沉默王二");
            }
        }).start();
    }
}

等价于

public class LamadaTest {
    public static void main(String[] args) {
        new Thread(() -> System.out.println("沉默王二")).start();
    }
}

参考:
Lambda 表达式入门,看这篇就够了

restrict和cascade都是在外码定义时指定的关键字。
当有restrict时,

设有两张表:student和class,表定义语句为:

create table class(cno int primary key, cname varchar(20))

create table student(sno int primary key, sname varchar(10), cno int, foreign key(cno) references class(cno) on delete restrict)

第一张表class中,cno是主码,第二张表student中,sno是主码,cno是外码,外码的取值必须在class的主码cno中出现过,或者取空值。注意,在外码定义时指定了restrict关键字,此时,如果从class表中删除一条数据(即删除一个班级),student表中恰好有该班级的学生,则会报错,不允许删除。

如果在student表的外码定义时指定的是cascade,即

create table student(sno int primary key, sname varchar(10), cno int, foreign key(cno) references class(cno) on delete cascade)

则表示级联删除,删除class表中的一条数据时,会把student表中对应的数据一起删除掉。此外,在外码定义时还可以指定on delete set null,表示删除class表中的一条数据时,如果student表中有对应的数据,则把这些对应的数据的cno设置为空值NULL。
————————————————
版权声明:本文为CSDN博主「刘喵喵」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_32716541/article/details/113216244