-
Notifications
You must be signed in to change notification settings - Fork 1
/
script.sql
1146 lines (1131 loc) · 473 KB
/
script.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
USE [Online_Learn]
GO
/****** Object: Table [dbo].[Account] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Account](
[account_id] [int] IDENTITY(1,1) NOT NULL,
[username] [varchar](150) NOT NULL,
[password] [varchar](max) NOT NULL,
[fulll_name] [nvarchar](max) NULL,
[role_id] [int] NULL,
[gender] [bit] NULL,
[dob] [date] NULL,
[address] [varchar](max) NULL,
[phone] [varchar](10) NULL,
[language] [varchar](max) NULL,
[image] [nvarchar](max) NULL,
[email] [nvarchar](max) NULL,
[amount] [float] NULL,
[desc] [nvarchar](max) NULL,
CONSTRAINT [PK_Account] PRIMARY KEY CLUSTERED
(
[account_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
/****** Object: Table [dbo].[Account_Course] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Account_Course](
[account_id] [int] NOT NULL,
[course_id] [int] NOT NULL,
CONSTRAINT [PK_Account_Course] PRIMARY KEY CLUSTERED
(
[account_id] ASC,
[course_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[Account_Lesson] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Account_Lesson](
[account_id] [int] NOT NULL,
[lesson_id] [int] NOT NULL,
[course_id] [int] NOT NULL,
CONSTRAINT [PK_Account_Lesson] PRIMARY KEY CLUSTERED
(
[account_id] ASC,
[lesson_id] ASC,
[course_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[Account_Token] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Account_Token](
[at_id] [int] IDENTITY(1,1) NOT NULL,
[email] [nvarchar](max) NULL,
[token] [nvarchar](50) NULL,
[create_token] [datetime] NULL,
[status] [bit] NULL,
CONSTRAINT [PK_Account_Token] PRIMARY KEY CLUSTERED
(
[at_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
/****** Object: Table [dbo].[Blog] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Blog](
[blog_id] [int] IDENTITY(1,1) NOT NULL,
[title] [nvarchar](max) NULL,
[content] [nvarchar](max) NULL,
[update_at] [date] NOT NULL,
[department_id] [int] NOT NULL,
[account_id] [int] NOT NULL,
CONSTRAINT [PK_Blog] PRIMARY KEY CLUSTERED
(
[blog_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
/****** Object: Table [dbo].[Course] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Course](
[course_id] [int] IDENTITY(1,1) NOT NULL,
[course_name] [varchar](max) NOT NULL,
[price] [float] NOT NULL,
[department_id] [int] NOT NULL,
[image] [nvarchar](max) NULL,
[rate] [int] NULL,
[language] [varchar](max) NULL,
[account_id] [int] NOT NULL,
[description] [nvarchar](max) NULL,
[is_sale] [int] NULL,
[update_at] [date] NOT NULL,
[level_id] [int] NOT NULL,
CONSTRAINT [PK_Course] PRIMARY KEY CLUSTERED
(
[course_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
/****** Object: Table [dbo].[Department] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Department](
[department_id] [int] IDENTITY(1,1) NOT NULL,
[department_name] [varchar](max) NOT NULL,
CONSTRAINT [PK_Department] PRIMARY KEY CLUSTERED
(
[department_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
/****** Object: Table [dbo].[Exam] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Exam](
[exam_id] [int] IDENTITY(1,1) NOT NULL,
[exam_name] [varchar](max) NOT NULL,
[quantity] [int] NOT NULL,
[time] [int] NOT NULL,
[start_date] [date] NOT NULL,
[lecture_id] [int] NOT NULL,
CONSTRAINT [PK_Exam] PRIMARY KEY CLUSTERED
(
[exam_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
/****** Object: Table [dbo].[Feedback] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Feedback](
[feedback_id] [int] IDENTITY(1,1) NOT NULL,
[blog_id] [int] NULL,
[message] [nvarchar](max) NULL,
[rate] [int] NULL,
[create_date] [date] NULL,
CONSTRAINT [PK_Feedback] PRIMARY KEY CLUSTERED
(
[feedback_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
/****** Object: Table [dbo].[Feedback_Account] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Feedback_Account](
[feedback_id] [int] NOT NULL,
[account_id] [int] NOT NULL,
CONSTRAINT [PK_Feedback_Account] PRIMARY KEY CLUSTERED
(
[feedback_id] ASC,
[account_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[Lecture] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Lecture](
[lecture_id] [int] IDENTITY(1,1) NOT NULL,
[lecture_name] [varchar](max) NOT NULL,
[course_id] [int] NULL,
[create_at] [date] NULL,
[description] [varchar](max) NULL,
CONSTRAINT [PK_Lecture] PRIMARY KEY CLUSTERED
(
[lecture_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
/****** Object: Table [dbo].[Lecture_Account] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Lecture_Account](
[account_id] [int] NOT NULL,
[lecture_id] [int] NOT NULL,
CONSTRAINT [PK_Lecture_Account] PRIMARY KEY CLUSTERED
(
[account_id] ASC,
[lecture_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[Lesson] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Lesson](
[lesson_id] [int] IDENTITY(1,1) NOT NULL,
[lesson_name] [varchar](max) NOT NULL,
[video] [nvarchar](max) NOT NULL,
[main] [nvarchar](max) NULL,
[lecture_id] [int] NULL,
CONSTRAINT [PK_Lesson_1] PRIMARY KEY CLUSTERED
(
[lesson_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
/****** Object: Table [dbo].[Level] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Level](
[level_id] [int] IDENTITY(1,1) NOT NULL,
[level] [varchar](max) NULL,
CONSTRAINT [PK_Level] PRIMARY KEY CLUSTERED
(
[level_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
/****** Object: Table [dbo].[Order] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Order](
[order_id] [int] IDENTITY(1,1) NOT NULL,
[order_date] [date] NULL,
[account_id] [int] NULL,
[total_price] [float] NULL,
CONSTRAINT [PK_Order] PRIMARY KEY CLUSTERED
(
[order_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[Order_Detail] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Order_Detail](
[orderdetail_id] [int] IDENTITY(1,1) NOT NULL,
[course_id] [int] NULL,
[order_id] [int] NULL,
[quantity] [int] NULL,
CONSTRAINT [PK_Order_Detail] PRIMARY KEY CLUSTERED
(
[orderdetail_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[Program] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Program](
[program_id] [int] IDENTITY(1,1) NOT NULL,
[program_name] [varchar](max) NULL,
CONSTRAINT [PK_Program] PRIMARY KEY CLUSTERED
(
[program_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
/****** Object: Table [dbo].[Question] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Question](
[question_id] [int] IDENTITY(1,1) NOT NULL,
[quiz] [nvarchar](max) NOT NULL,
[op1] [nvarchar](max) NOT NULL,
[op2] [nvarchar](max) NOT NULL,
[op3] [nvarchar](max) NOT NULL,
[op4] [nvarchar](max) NOT NULL,
[solution] [varchar](4) NOT NULL,
[lecture_id] [int] NOT NULL,
CONSTRAINT [PK_Question] PRIMARY KEY CLUSTERED
(
[question_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
/****** Object: Table [dbo].[Result] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Result](
[result_id] [int] IDENTITY(1,1) NOT NULL,
[exam_id] [int] NOT NULL,
[account_id] [int] NULL,
[score] [float] NULL,
[correctAnswer] [int] NOT NULL,
[status] [varchar](50) NOT NULL,
[time] [int] NOT NULL,
CONSTRAINT [PK_Result_1] PRIMARY KEY CLUSTERED
(
[result_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[Technology] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Technology](
[course_id] [int] NOT NULL,
[program_id] [int] NOT NULL,
CONSTRAINT [PK_Technology] PRIMARY KEY CLUSTERED
(
[course_id] ASC,
[program_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
/****** Object: Table [dbo].[WhistList] Script Date: 7/21/2022 11:15:25 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[WhistList](
[account_id] [int] NOT NULL,
[course_id] [int] NOT NULL,
CONSTRAINT [PK_WhistList] PRIMARY KEY CLUSTERED
(
[account_id] ASC,
[course_id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
GO
SET IDENTITY_INSERT [dbo].[Account] ON
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (1, N'admin', N'202cb962ac59075b964b07152d234b70', N'admin', 1, 1, CAST(N'2001-05-12' AS Date), N'VN', N'0123456789', N'VN', NULL, N'admin@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (2, N'HNT', N'e10adc3949ba59abbe56e057f20f883e', N'Tran Hai Nam', 2, 1, CAST(N'2002-08-09' AS Date), N'Chua Lang - Dong Da - Ha Noi', N'0912123131', N'Viet Nam', NULL, N'khach@gmail.com', 1000, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (3, N'phuvinh1010', N'123456', N'Le Phu Vinh', 2, 1, CAST(N'2000-10-10' AS Date), N'Hoang Hoa Tham- Tay Ho - Ha Noi', N'0812483929', N'Viet Nam', NULL, N'vinhqphu1010@gmail..com', 560, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (4, N'duckienvippro123', N'123456', N'Nguyen Duc Kien', 4, 0, CAST(N'2003-01-07' AS Date), N'Dai Lo - Dong Tay', N'0122131243', N'EngList', NULL, N'kiencuong12@gmail.com', 999, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (9, N'Mr.A', N'12345', N'PN', 1, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (21, N'tuan', N'0a49dd9af0104d505403a2aba1f1293a', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'tuan@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (22, N'test1', N'e10adc3949ba59abbe56e057f20f883e', NULL, 2, NULL, NULL, NULL, NULL, NULL, NULL, N'test1@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (23, N'test2', N'e10adc3949ba59abbe56e057f20f883e', NULL, 2, NULL, NULL, NULL, NULL, NULL, NULL, N'test2@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (24, N'test3', N'e10adc3949ba59abbe56e057f20f883e', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'test3@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (25, N'user', N'e10adc3949ba59abbe56e057f20f883e', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'chieuvhhe151117@fpt.edu.vn', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (26, N'user', N'e10adc3949ba59abbe56e057f20f883e', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'chieuvhhe151117@fpt.edu.vn', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (27, N'user', N'be2c9c01514c2bc6729c5c254478f97d', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'tuannvhe151098@fpt.edu.vn', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (28, N'user', N'e10adc3949ba59abbe56e057f20f883e', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'tuan22420011@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (29, N'user', N'e10adc3949ba59abbe56e057f20f883e', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'tuanht22042001@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (30, N'user', N'e10adc3949ba59abbe56e057f20f883e', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'tuan4@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (31, N'user', N'827ccb0eea8a706c4c34a16891f84e7b', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'tuanht22042001a@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (32, N'user', N'e10adc3949ba59abbe56e057f20f883e', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'chieuvhhe15a1117@fpt.edu.vn', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (33, N'tuannvhe151098', N'e10adc3949ba59abbe56e057f20f883e', NULL, 2, NULL, NULL, NULL, NULL, NULL, NULL, N'tuanht220420101@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (34, N'hoang', N'e10adc3949ba59abbe56e057f20f883e', NULL, 2, NULL, NULL, NULL, NULL, NULL, NULL, N'hoang@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (35, N'vinh', N'e10adc3949ba59abbe56e057f20f883e', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'vinh@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (36, N'vinh', N'0a49dd9af0104d505403a2aba1f1293a', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'vinh1@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (37, N'tuan123', N'0a49dd9af0104d505403a2aba1f1293a', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'tuan@1121', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (38, N'tuannguyen', N'0a49dd9af0104d505403a2aba1f1293a', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'tuan224@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (39, N'TH', N'e10adc3949ba59abbe56e057f20f883e', N'Tung Hoang', 1, NULL, NULL, NULL, NULL, NULL, N'https://phonghopamway.com.vn/hinh-anh-trai-dep-viet-nam/imager_172537.jpg', N'hehe@gmail.com', NULL, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (40, N'hieuhieuhieu12', N'acb82456019437d51e61e2bef808b085', N'Acc cua Hieu 2', 1, NULL, CAST(N'2022-07-11' AS Date), N'Texas', N'123123123', N'Viet Nam', NULL, N'hieu123@gmail.com', 772.02, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (41, N'hieu001', N'acb82456019437d51e61e2bef808b085', N'Acc cua Hieu', 1, NULL, CAST(N'2001-12-17' AS Date), N'Ha Noi', N'0916058692', N'Viet Nam', NULL, N'hieu001@gmail.com', 199999151.03999996, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (42, N'customer1', N'becfb907888c8d48f8328dba7edf6969', NULL, 1, NULL, CAST(N'0001-01-01' AS Date), NULL, NULL, NULL, NULL, N'customer1@gmail.com', 938.04, NULL)
INSERT [dbo].[Account] ([account_id], [username], [password], [fulll_name], [role_id], [gender], [dob], [address], [phone], [language], [image], [email], [amount], [desc]) VALUES (43, N'customer2', N'0b0216b290922f789dd3efd0926d898e', NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, N'customer2@gmail.com', 445.01, NULL)
SET IDENTITY_INSERT [dbo].[Account] OFF
GO
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (4, 5)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (4, 7)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (4, 10)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (4, 11)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (4, 12)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (4, 13)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (4, 16)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (4, 27)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (4, 30)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (4, 31)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (4, 32)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (4, 36)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (4, 38)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 3)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 4)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 8)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 10)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 13)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 16)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 18)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 21)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 24)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 28)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 29)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 30)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 33)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 34)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (40, 38)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 3)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 5)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 6)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 7)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 12)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 14)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 22)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 24)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 25)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 27)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 28)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 30)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 34)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 35)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (41, 38)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 3)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 4)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 6)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 7)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 9)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 10)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 11)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 14)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 18)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 24)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 29)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 30)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 32)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (42, 38)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (43, 14)
INSERT [dbo].[Account_Course] ([account_id], [course_id]) VALUES (43, 26)
GO
SET IDENTITY_INSERT [dbo].[Account_Token] ON
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (1, N'tuannvhe151098@fpt.edu.vn', N'zPtamL6lBJivAsMGfBUFpXrvFJqK4E', CAST(N'2022-06-19T21:58:52.460' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (2, N'tuannvhe151098@fpt.edu.vn', N'PoQCVEW1I60XE0tgX8cbvIBM5fCd5R', CAST(N'2022-06-19T21:58:58.430' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (3, N'tuannvhe151098@fpt.edu.vn', N'Y6AndwDPBBcZr9yjWujEBBjMLkU61t', CAST(N'2022-06-19T21:59:21.273' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (4, N'tuannvhe151098@fpt.edu.vn', N'VlH3VIBUGvIIPz3mHETpX3vmuFqSXS', CAST(N'2022-06-19T22:15:26.263' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (5, N'tuanht22042001@gmail.com', N'VuYQnW5N0d0Z1Kk7reoF3u7sJTxxtI', CAST(N'2022-06-19T22:19:50.907' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (6, N'tuanht220420011@gmail.com', N'flSNKwaJ4XYh0O8yrA6jfiAB2OdV0f', CAST(N'2022-06-19T22:20:56.963' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (7, N'tuannvhe151098@fpt.edu.vn', N'9b61hJcLFa9yYthCqmNpwuNmNDJ4ss', CAST(N'2022-06-19T23:22:25.203' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (8, N'tuannvhe151098@fpt.edu.vn', N'wlEvkWkW3pEncwLZuN9ZcjfmOMLAZV', CAST(N'2022-06-19T23:26:39.673' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (9, N'tuannvhe151098@fpt.edu.vn', N'4ZUl1m7DxpMzlxv1amzPUYSPwDXmDn', CAST(N'2022-06-19T23:34:00.547' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (10, N'tuannvhe151098@fpt.edu.vn', N'wraP93Nse7hxP878qIzX3C9TfqTzng', CAST(N'2022-06-19T23:39:12.743' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (11, N'tuannvhe151098@fpt.edu.vn', N'KPmqFFvkyq5lMwfF21FihEKA1IpD19', CAST(N'2022-06-19T23:40:26.640' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (12, N'tuannvhe151098@fpt.edu.vn', N'9sWU8n8jDjLRESXqQs1Ut67Ne7ycfp', CAST(N'2022-06-19T23:44:04.533' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (13, N'tuannvhe151098@fpt.edu.vn', N'WpKWInP2unpOpQ0SjVwRxm5c7kESOw', CAST(N'2022-06-19T23:47:18.157' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (14, N'tuannvhe151098@fpt.edu.vn', N'1bJ4HTTwqkNzxg2ll9hKLlxvAtWYC8', CAST(N'2022-06-19T23:49:08.087' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (15, N'tuannvhe151098@fpt.edu.vn', N'ZSR4u9OiN8xhnG1Em8qr8FiweZVLuQ', CAST(N'2022-06-19T23:52:28.203' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (16, N'tuannvhe151098@fpt.edu.vn', N'vu5zJmEnoCz2kpJR4onPptkPGwTJ9M', CAST(N'2022-06-19T23:56:53.163' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (17, N'tuannvhe151098@fpt.edu.vn', N'JzEzXIH4fx0bGGwBrSFWRaa1TYWkio', CAST(N'2022-06-19T23:59:09.330' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (18, N'tuannvhe151098@fpt.edu.vn', N'lvzFk29JCgHG5Ibxb5KSK9DvVbt8GY', CAST(N'2022-06-20T00:00:51.863' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (19, N'tuannvhe151098@fpt.edu.vn', N'at23aHLk72UMUzta8Homg6dzjL9E6a', CAST(N'2022-06-20T00:03:17.053' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (20, N'tuannvhe151098@fpt.edu.vn', N'rcpK4HdSm6C4xQFlgmLnbI7SMKC1Bo', CAST(N'2022-06-20T00:08:26.120' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (21, N'tuannvhe151098@fpt.edu.vn', N'xkFTbej7ZIPXeJVPxeeIJ6NTXU2LiK', CAST(N'2022-06-20T00:11:34.013' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (22, N'tuannvhe151098@fpt.edu.vn', N'4FmVrqGAJdMFCv5FV4GOGtXVCT8b7u', CAST(N'2022-06-20T00:14:25.987' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (23, N'tuannvhe151098@fpt.edu.vn', N'gcXJRLcQJf3Mib1AscHZDpPaeXPZy5', CAST(N'2022-06-20T00:14:28.723' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (24, N'tuannvhe151098@fpt.edu.vn', N'LYNPDQZwidMOVYupVAey6pkHnKJnif', CAST(N'2022-06-20T00:33:33.370' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (25, N'tuannvhe151098@fpt.edu.vn', N'FaiYkZaQ8FZVjvLq1D6LbOFf1Ww5FI', CAST(N'2022-06-20T00:33:36.877' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (26, N'tuanht22042001@gmail.com', N'OVA8iPF7EZM3koCesgrW51XakKpvqP', CAST(N'2022-06-20T07:51:34.813' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (27, N'tuanht22042001@gmail.com', N'xNP9VPtbL5YOVsUa44za36ikBS03Yk', CAST(N'2022-06-20T07:51:50.830' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (28, N'tuanht22042001@gmail.com', N'yHK0CrSKUxic15UrR0NrU5wAEIrPtO', CAST(N'2022-06-20T07:53:01.957' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (29, N'tuanht22042001@gmail.com', N'4u9cphCPF0VTcFD9L12frYebmyq5P6', CAST(N'2022-06-20T07:53:03.970' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (30, N'tuannvhe151098@fpt.edu.vn', N'UxCZ3ufnD5Lg8yOf3JQ1ZFf1YxRs1n', CAST(N'2022-06-20T07:54:35.450' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (31, N'tuanht22042001@gmail.com', N'JRh3pk4DUzalKOjxhNMIsYzW3pJjFS', CAST(N'2022-06-20T08:01:16.290' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (32, N'tuanht22042001@gmail.com', N'qxdPrg3sc8i2cgEihcl1P0eVm21siI', CAST(N'2022-06-20T08:02:35.357' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (33, N'tuanht22042001@gmail.com', N'HbWMEBBeEUbVC5ma6DbWURcyQMSmQD', CAST(N'2022-06-20T08:05:00.233' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (34, N'tuanht22042001@gmail.com', N'ODB1HaTB9XY9AkWT1HceOQAdq6s63Y', CAST(N'2022-06-20T08:08:02.720' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (35, N'tuanht22042001@gmail.com', N'pit1bGOkYp6oT2vu13wLSdoaqjh5Hw', CAST(N'2022-06-20T08:08:28.693' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (36, N'tuanht22042001@gmail.com', N'g194YuhXZ5dRhepgKYNLhPyjFWlNoY', CAST(N'2022-06-20T08:10:10.100' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (37, N'tuannvhe151098@fpt.edu.vn', N'5APkt4CNoB0Kx8sWPGBRCtMyW3KKDb', CAST(N'2022-06-20T08:11:11.373' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (38, N'tuanht22042001@gmail.com', N'Uj5E3b3AofhCWw3x38gB97XuyMw7Tv', CAST(N'2022-06-20T08:13:25.033' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (39, N'tuanht22042001@gmail.com', N'z0HDwWGzVKaHGgDDoTqr4WWCwvCqQg', CAST(N'2022-06-20T08:16:13.920' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (40, N'tuanht22042001@gmail.com', N'aMsgbOcmgp8yZjjbSBz1ddoZlzjHMl', CAST(N'2022-06-20T08:21:10.987' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (41, N'tuannvhe151098@fpt.edu.vn', N'd6Y1etCn75HILOjzzazCLOnUXq9NqQ', CAST(N'2022-06-20T08:23:53.660' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (42, N'tuannvhe151098@fpt.edu.vn', N'fblVJHwsIhlMw3L31KWYtiMuiYIkZG', CAST(N'2022-06-20T08:28:47.910' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (43, N'tuannvhe151098@fpt.edu.vn', N'F6FcJy7JQjUH5S8bsvP6vu79KSHrGe', CAST(N'2022-06-20T08:34:45.287' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (44, N'vinhlqhe153037@fpt.edu.vn', N'BDsVxPn7Yy21O8bucTenRrpF2vCHZY', CAST(N'2022-06-20T08:39:22.983' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (45, N'vinhlqhe153037@fpt.edu.vn', N'D6WuesuqXUWx9zqLOy50hiNiLRVQDF', CAST(N'2022-06-20T08:40:19.040' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (46, N'vinhlqhe153037@fpt.edu.vn', N'3DrRgbAvdZV1q0T83w5Q2i34pLByWX', CAST(N'2022-06-20T08:42:09.613' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (47, N'tuanht22042001@gmail.com', N'85yZIK4nuI88JiOaUKEL1l2TS93loL', CAST(N'2022-06-20T08:43:19.720' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (48, N'tuanht22042001@gmail.com', N'2uprbGUSFvFD0IjBcTnv3Ukidvf8JL', CAST(N'2022-06-20T08:46:53.613' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (49, N'tuanht22042001@gmail.com', N'RZzfTWCfirkwJesYVXkrO9aSyHHVRw', CAST(N'2022-06-20T08:52:18.017' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (50, N'tuanht22042001@gmail.com', N'fPJa4JgWH1mzhN8cBj7BYzAhfqa3nK', CAST(N'2022-06-20T08:58:53.690' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (51, N'tuanht22042001@gmail.com', N'QveZNTVdKiCmzxyXl3kBhnXuZEmEMo', CAST(N'2022-06-20T11:18:02.713' AS DateTime), 0)
INSERT [dbo].[Account_Token] ([at_id], [email], [token], [create_token], [status]) VALUES (52, N'asds', N'Gwcsemw1VNQKMwB88tauwdomA0nPXI', CAST(N'2022-06-25T16:29:44.253' AS DateTime), 0)
SET IDENTITY_INSERT [dbo].[Account_Token] OFF
GO
SET IDENTITY_INSERT [dbo].[Blog] ON
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (1, N'How Much Does it Cost to Hire React Developer?', N'<h2 class="page-section " id="1" style="margin-bottom: 20px; line-height: 40px; color: rgb(34, 34, 34); border: 0px; vertical-align: baseline;"><span style="font-size: 16px;"><font face="Arial" style=""><span style="font-size: 14px;"><span style="font-size: 16px;"><b style=""><span style="font-size:16px;">Introduction</span></b></span></span></font></span></h2><div>ReactJS is widely preferred for developing interactive UI components that are fast and simple to understand. React is front end open-source library. However, it is widely considered a framework. React has a record-breaking download count of 58.99 M, and its rising popularity has attracted many industry giants such as Facebook, Twitter, Amazon, and many more.</div><div>The first step for successful project development is to consider onboarding a skilled developer with the right budget to develop the desired application. Let’s dig into the factors that affect the React app development cost.</div><span style="font-size:16px;"><br><b><font face="Arial">
<span style="font-size:16px;">Factors That Affect React App Development Cost</span><span style="font-size:16px;"></span><span style="font-size:14px;"></span></font></b></span><div>If you want to have a web application development using React, check out the factors below affecting the React app development cost, such as project size, recruitment model, complex features, and third-party integrations.</div>', CAST(N'2022-05-01' AS Date), 1, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (2, N'Building a middleware pipeline with WebApplication', N'<div>This post follows on directly from <a href="https://andrewlock.net/exploring-dotnet-6-part-3-exploring-the-code-behind-webapplicationbuilder/" style="position: relative; animation-duration: 1s; animation-fill-mode: both; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border-width: 0px 0px 0.5px; border-top-style: initial; border-right-style: initial; border-bottom-style: solid; border-left-style: initial; border-top-color: initial; border-right-color: initial; border-bottom-color: rgb(32, 109, 168); border-left-color: initial; border-image: initial; color: rgb(32, 109, 168); transition: all 0.5s ease 0s; overflow-wrap: break-word; word-break: break-word;">the previous post about <code style="padding-top: 2px; padding-right: 4px; padding-left: 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">WebApplicationBuilder</code></a>, as well as <a href="https://andrewlock.net/exploring-dotnet-6-part-2-comparing-webapplicationbuilder-to-the-generic-host/" style="position: relative; animation-duration: 1s; animation-fill-mode: both; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border-width: 0px 0px 0.5px; border-top-style: initial; border-right-style: initial; border-bottom-style: solid; border-left-style: initial; border-top-color: initial; border-right-color: initial; border-bottom-color: rgb(32, 109, 168); border-left-color: initial; border-image: initial; color: rgb(32, 109, 168); transition: all 0.5s ease 0s; overflow-wrap: break-word; word-break: break-word;">the introduction to <code style="padding-top: 2px; padding-right: 4px; padding-left: 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">WebApplication</code></a>, so I suggest you start with those posts if you haven''t already read them. That said, I''m not going to be as deep in the code in this post compared to the previous one!</div><div>As I described <a href="https://andrewlock.net/exploring-dotnet-6-part-2-comparing-webapplicationbuilder-to-the-generic-host/#webapplication-wears-many-hats" style="position: relative; animation-duration: 1s; animation-fill-mode: both; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border-width: 0px 0px 0.5px; border-top-style: initial; border-right-style: initial; border-bottom-style: solid; border-left-style: initial; border-top-color: initial; border-right-color: initial; border-bottom-color: rgb(32, 109, 168); border-left-color: initial; border-image: initial; color: rgb(32, 109, 168); transition: all 0.5s ease 0s; overflow-wrap: break-word; word-break: break-word;">in my previous post</a>, <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">WebApplicationBuilder</code> is where you do <em style="font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">most</em> of your application configuration, while <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">WebApplication</code> is used for three separate things:</div><ul style="padding-left: 0px; margin: 0px 0px 20px 40px; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-stretch: inherit; line-height: inherit; font-family: Raleway, sans-serif; font-size: 16px; vertical-align: baseline; border: 0px; list-style-position: initial; list-style-image: initial; color: rgb(102, 102, 102);"><li style="margin-bottom: 4px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 25px; font-family: inherit; vertical-align: baseline; border: 0px;">It''s where you configure your middleware pipeline, because it implements <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">IApplicationBuilder</code>.</li><li style="margin-bottom: 4px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 25px; font-family: inherit; vertical-align: baseline; border: 0px;">It''s where you configure your <em style="font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">endpoints</em> using <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">MapGet()</code>, <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">MapRazorPages()</code> etc, because it implements <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">IEndpointRouteBuilder</code>.</li><li style="margin-bottom: 4px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 25px; font-family: inherit; vertical-align: baseline; border: 0px;">It''s what you <em style="font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">run</em> to actually start your application by calling <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Run()</code> because it implements <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">IHost</code>.</li></ul><div>At <a href="https://andrewlock.net/exploring-dotnet-6-part-3-exploring-the-code-behind-webapplicationbuilder/#building-a-webapplication-with-webapplicationbuilder-build-" style="position: relative; animation-duration: 1s; animation-fill-mode: both; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border-width: 0px 0px 0.5px; border-top-style: initial; border-right-style: initial; border-bottom-style: solid; border-left-style: initial; border-top-color: initial; border-right-color: initial; border-bottom-color: rgb(32, 109, 168); border-left-color: initial; border-image: initial; color: rgb(32, 109, 168); transition: all 0.5s ease 0s; overflow-wrap: break-word; word-break: break-word;">the end of the previous post</a>, we saw that when you call <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Build()</code> on a <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">WebApplicationBuilder</code> instance, a private instance of the generic host <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Host</code> is created, and passed to the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">WebApplication</code> constructor. It''s from this point that this post continues, to give a little insight into <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">WebApplication</code> before we start looking at middleware pipelines</div><h2 id="webapplication-a-relatively-thin-wrapper-around-three-types-" class="heading-with-anchor" style="margin-top: 2rem; margin-right: 12px; margin-bottom: 2rem; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-weight: lighter; font-stretch: inherit; line-height: 2.2rem; font-family: "Roboto Slab", Georgia, serif; font-size: 1.7rem; vertical-align: baseline; border: 0px; -webkit-font-smoothing: antialiased;"><code style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 27.2px; vertical-align: baseline; border: 0px;">WebApplication</code>: a relatively thin wrapper around three types.<a href="https://andrewlock.net/exploring-dotnet-6-part-4-building-a-middleware-pipeline-with-webapplication/#webapplication-a-relatively-thin-wrapper-around-three-types-" style="position: absolute; animation-duration: 1s; animation-fill-mode: both; margin-left: 6px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 27.2px; vertical-align: middle; border: 0px; transition: all 0.5s ease 0s; overflow-wrap: break-word; word-break: break-word; opacity: 0; visibility: hidden;"><img aria-hidden="true" src="https://andrewlock.net/assets/img/icons-link.svg" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; height: 1.04401rem;"></a></h2><div>In comparison to the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">WebApplicationBuilder</code> constructor, the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">WebApplication</code> constructor is relatively simple:</div><pre class="language-csharp" style="overflow-wrap: normal; padding: 1em; margin-top: 1em; margin-bottom: 1em; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-stretch: inherit; line-height: 1.2em; font-family: Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace; font-size: 0.95em; vertical-align: baseline; border: 1px solid rgb(221, 221, 221); color: rgb(57, 58, 52); border-radius: 3px; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-shadow: rgb(255, 255, 255) 0px 1px; word-break: normal; tab-size: 4; hyphens: none;"><code class="language-csharp" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 1.2em; font-family: Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace; font-size: 0.95em; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52); background: 0px 0px; text-shadow: rgb(255, 255, 255) 0px 1px; overflow-wrap: normal; word-spacing: normal; tab-size: 4; hyphens: none;"><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">public</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">sealed</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">class</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">WebApplication</span> <span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">:</span> <span class="token type-list" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;"><span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">IHost</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">,</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">IApplicationBuilder</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">,</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">IEndpointRouteBuilder</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">,</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">IAsyncDisposable</span></span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">{</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">private</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">readonly</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">IHost</span> _host<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">private</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">readonly</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">List<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);"><</span>EndpointDataSource<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);">></span></span> _dataSources <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">new</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">internal</span> <span class="token return-type class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">IDictionary<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);"><</span><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">string</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);">,</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">object</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);">?</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);">></span></span> Properties <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=></span> ApplicationBuilder<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span>Properties<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">internal</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">static</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);"><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">string</span></span> GlobalEndpointRouteBuilderKey <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=</span> <span class="token string" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(163, 21, 21);">"__GlobalEndpointRouteBuilder"</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">internal</span> <span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">WebApplication</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">IHost</span> host<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">{</span>
_host <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=</span> host<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
ApplicationBuilder <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">new</span> <span class="token constructor-invocation class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">ApplicationBuilder</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span>host<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span>Services<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
Properties<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">[</span>GlobalEndpointRouteBuilderKey<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">]</span> <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">this</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">}</span>
<span class="token comment" style="font-style: italic; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: green;">// ...</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">}</span>
</code></pre><div>The constructor and field initializers do 4 primary things:</div><ul style="padding-left: 0px; margin: 0px 0px 20px 40px; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-stretch: inherit; line-height: inherit; font-family: Raleway, sans-serif; font-size: 16px; vertical-align: baseline; border: 0px; list-style-position: initial; list-style-image: initial; color: rgb(102, 102, 102);"><li style="margin-bottom: 4px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 25px; font-family: inherit; vertical-align: baseline; border: 0px;">Save the provided <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Host</code> in the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">_host</code> field. This is the same <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Host</code> type as when you use the generic host directly, as in the ASP.NET Core 3.x/5.</li><li style="margin-bottom: 4px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 25px; font-family: inherit; vertical-align: baseline; border: 0px;">Create a new list of <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">EndpointDataSource</code>. These are used to configure the <em style="font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">endpoints</em> in your application, including Razor Pages, Controllers, API endpoints, and the new "minimal" APIs.</li><li style="margin-bottom: 4px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 25px; font-family: inherit; vertical-align: baseline; border: 0px;">Create a new instance of <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">ApplicationBuilder</code>. This is used to build the middleware pipeline, and is essentially the same type that''s been used since version 1.0!</li><li style="margin-bottom: 4px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 25px; font-family: inherit; vertical-align: baseline; border: 0px;">Set the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">__GlobalEndpointRouteBuilder</code> property on the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">ApplicationBuilder</code>. This property is used to "communicate" to other middleware that we''re using the new <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">WebApplication</code>, which has some different defaults, as you''ll see a bit later.</li></ul><div><code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">WebApplication</code> mostly delegates the implementation of the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">IHost</code>, <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">IApplicationBuilder</code>, and <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">IEndpointRouteBuilder</code> to its private properties, and implements them explicitly. For example, for <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">IApplicationBuilder</code>, much of the implementation is delegated to the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">ApplicationBuilder</code> created in the constructor:</div><pre class="language-csharp" style="overflow-wrap: normal; padding: 1em; margin-top: 1em; margin-bottom: 1em; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-stretch: inherit; line-height: 1.2em; font-family: Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace; font-size: 0.95em; vertical-align: baseline; border: 1px solid rgb(221, 221, 221); color: rgb(57, 58, 52); border-radius: 3px; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-shadow: rgb(255, 255, 255) 0px 1px; word-break: normal; tab-size: 4; hyphens: none;"><code class="language-csharp" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 1.2em; font-family: Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace; font-size: 0.95em; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52); background: 0px 0px; text-shadow: rgb(255, 255, 255) 0px 1px; overflow-wrap: normal; word-spacing: normal; tab-size: 4; hyphens: none;"><span class="token return-type class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">IDictionary<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);"><</span><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">string</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);">,</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">object</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);">?</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);">></span></span> IApplicationBuilder<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span>Properties <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=></span> ApplicationBuilder<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span>Properties<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token return-type class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">IServiceProvider</span> IApplicationBuilder<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span>ApplicationServices
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">{</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">get</span> <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=></span> ApplicationBuilder<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span>ApplicationServices<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">set</span> <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=></span> ApplicationBuilder<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span>ApplicationServices <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">value</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">}</span>
<span class="token return-type class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">IApplicationBuilder</span> IApplicationBuilder<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span><span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">Use</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">Func<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);"><</span>RequestDelegate<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);">,</span> RequestDelegate<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);">></span></span> middleware<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">{</span>
ApplicationBuilder<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span><span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">Use</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span>middleware<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">return</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">this</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">}</span>
</code></pre><div>Where things get interesting, is when you call <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">RunAsync()</code>, which builds the middleware pipeline.</div>', CAST(N'2022-06-14' AS Date), 1, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (3, N'React Alternatives Frameworks- Lightweight Javascript Libraries', N'<b><span style="font-size:18px;">Why Not React JS?</span></b><span style="font-size:16px;"><br>
“Why do we need to look for alternative frameworks when we already have React.js?” you might be wondering this probably. And if truth be told, you are completely correct! However, there are some reasons why developers need to switch to React JS alternatives at a point. Why Do You Need Alternatives To React Js? This is a million-dollar question among various newbies because no one wants to abandon React JS at once upon discovering its benefits. However, developers continue to request trustworthy React JS alternatives. Below are the reasons that drive developers worldwide to seek out the most basic ReactJS alternatives.</span><div><span style="font-size: 1rem;"></span></div>', CAST(N'2022-06-14' AS Date), 1, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (6, N'Why Should You Learn Java?', N'<span style="font-size:18px;">Firstly, Java is one of the most readable and easy to write programming languages. Therefore, even in this decade, the prevalence of Java is continuously expanding. <br>
<br>
Secondly, Java is an object-oriented, high-level programming language. The syntax of Java is similar to C and C++. Hence, it has become one of the most beginner-friendly programming languages out there. <br>
<br>
Thirdly, with its advanced memory allocation and built-in tools, Java offers portability and versatility. Another incredible thing about Java is that most of its features are open-source. Therefore, it''s useful for beginner-level or small projects. <br>
<br>
Lastly, Java constantly updates its features with its API and EE (Enterprise Edition), making it more accessible, compulsive, and efficient.</span><div><span style="font-size: 1rem;"></span></div>', CAST(N'2022-06-14' AS Date), 1, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (7, N'A Guide to Building a Food Ordering & Delivery App', N'<b>Why Food Businesses Should Invest in Mobile Apps? </b><div>Mobile apps promise great benefits for food businesses. They can drastically change the way businesses operate. It is recommended that business owners leverage the mobile app trend to boost customer engagement and improve the bottom line of their business. It not only streamlines managing the business but also helps build a strong brand resonance image in the customers’ minds.
With a food ordering and delivery mobile app, businesses can:
Improve reach
Eliminate friction
Generate more revenue
Enhance customer experience
Increase brand awareness
Improve order accuracy
Offer loyalty and referral programs
Increase returning customers
Minimize operational costs
Vital Features of an Online Food Ordering and Delivery App
Building an exceptional food delivery app for your business requires first understanding the fundamental aspects of a food ordering app. Below discussed are some of the essential features of a food ordering and delivery app.
Easy Ordering System
People these days are most of the time on the go or out and about. Having a mobile app that allows ordering food seamlessly is a blessing for customers. An easy food ordering system in the app increases the likelihood of customers placing an order as they want to call up the restaurant and order their food.
Real-Time Tracking of Food Delivery
This essential feature enables the customers to track the location of their food through real-time GPS. It provides two-way tracking and operation and even assists in determining the customer’s location to deliver food. The key players in the industry use this feature to offer an outstanding experience to the users.</div>', CAST(N'2022-06-14' AS Date), 5, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (8, N'React Alternatives Frameworks- Lightweight Javascript Libraries
', N'aaaaaaaaaaaa', CAST(N'2022-06-14' AS Date), 2, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (9, N'Introduction to Power Query', N'<div><h2 style="box-sizing: inherit; border: 0px; font-family: Raleway, sans-serif; font-size: 28px; margin-bottom: 0.65em; vertical-align: baseline; clear: both; line-height: 1em; overflow-wrap: normal;"><font color="#000000">What does Power Query do?</font></h2><div><font color="#000000">Power Query is an ETL tool (<i style="box-sizing: inherit;">“a what?” </i>I hear you say)<em style="box-sizing: inherit; border: 0px; font-family: inherit; font-weight: inherit; vertical-align: baseline;">. </em>ETL stands for Extract, Transform and Load. Let us look at each of those words individually to get a better understanding of what it means.</font></div><ul style="box-sizing: inherit; border: 0px; font-family: Lato, sans-serif; font-size: 15px; margin: 0px 0px 1.5em 3em; padding-left: 0px; vertical-align: baseline; list-style-position: initial; list-style-image: initial;"><li style="box-sizing: inherit; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; vertical-align: baseline;"><font color="#000000"><strong style="box-sizing: inherit; border: 0px; font-family: inherit; font-style: inherit; font-weight: bold; vertical-align: baseline;">Extract</strong> – Data can be extracted from a variety of sources; databases, CSV files, text files, Excel workbooks, specific cells on the same worksheet, websites and even some PDFs. Basically, if there is data stored somewhere in a structured or semi-structured format, Power Query can get to it and pull it out.</font></li><li style="box-sizing: inherit; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; vertical-align: baseline;"><font color="#000000"><strong style="box-sizing: inherit; border: 0px; font-family: inherit; font-style: inherit; font-weight: bold; vertical-align: baseline;">Transform</strong> – Once the data has been extracted in the previous step, it can be cleaned up (e.g., remove spaces, split columns, change date formats, fill blanks, find and replace) and reshaped (e.g., unpivot, remove columns). When data is extracted from different sources it is unlikely to be consistent, the transform process optimizes the shape of the data so it is ready for use.</font></li><li style="box-sizing: inherit; border: 0px; font-family: inherit; font-style: inherit; font-weight: inherit; vertical-align: baseline;"><font color="#000000"><strong style="box-sizing: inherit; border: 0px; font-family: inherit; font-style: inherit; font-weight: bold; vertical-align: baseline;">Load</strong> – Once the data has been extracted and transformed, it needs to be put somewhere so that you can use it. From an Excel perspective, it can be pushed into a worksheet, a data model, or another query.</font></li></ul><div><font color="#000000">In short, Power Query as an ETL tool, takes data from different sources and turns it into something which we can use.</font></div><div><font color="#000000">So. Power Query sounds pretty useful already. But here is the best part. Once the ETL process has been created, it can be run over and over again with a single click. Which can save hours of work every week.</font></div></div>', CAST(N'2022-06-14' AS Date), 2, 1)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (10, N'How Much Does it Cost to Hire React Developer?', N'vvvvvvvv', CAST(N'2022-06-14' AS Date), 1, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (11, N'Why Should You Learn Java?', N'<h2 style="color: rgb(21, 31, 51); line-height: 1.3; -webkit-font-smoothing: antialiased; font-size: 23px; margin-bottom: 0.75em; font-family: Arial, Helvetica, sans-serif; white-space: pre-wrap; --card-border-radius:10px !important;">Ok, I want to be a software developer. What should I do first?</h2><span style="color: rgb(23, 43, 83); font-family: Arial, Helvetica, sans-serif; font-size: 18px; white-space: pre-wrap;">First reasonable step is a choice of proper technologies and programming language to start with and to have a good job in the future.
If you google what language is the best, you’ll face many controversial opinions. Every developer tries to “push” you their own choice, it’s typical for human psychology. Anyway, there’s no such thing as “the best language in the Universe”, because different languages serve different purposes.
There are at least half a dozen programming languages in the highest positions of different rankings for years. According to </span><a href="https://www.tiobe.com/tiobe-index/" rel="nofollow" target="_blank" style="color: rgb(18, 103, 166); text-decoration-line: underline; cursor: pointer; font-family: Arial, Helvetica, sans-serif; font-size: 18px; white-space: pre-wrap; --card-border-radius:10px !important;">TIOBE Programming Community</a><span style="color: rgb(23, 43, 83); font-family: Arial, Helvetica, sans-serif; font-size: 18px; white-space: pre-wrap;"> ranking, Java keeps the first place with the largest number of searches through the most popular search engines. It is followed by C, Python and C++ languages. As for GitHub’s Octoverse ranking, the top three most popular languages of all time are Javascript, Java, and Python.
</span><span style="color: rgb(21, 31, 51); font-family: Arial, Helvetica, sans-serif; font-size: 23px; white-space: pre-wrap;"><br></span><div><span style="color: rgb(21, 31, 51); font-family: Arial, Helvetica, sans-serif; font-size: 23px; white-space: pre-wrap;">Why Java is so popular and why I should learn it</span></div><div><span style="color: rgb(23, 43, 83); font-family: Arial, Helvetica, sans-serif; font-size: 18px; white-space: pre-wrap;"><br></span></div><div><span style="color: rgb(23, 43, 83); font-family: Arial, Helvetica, sans-serif; font-size: 18px; white-space: pre-wrap;">Well, Java IS extremely popular, but not the only popular language in the world. Now you’re probably thinking: “why exactly do I need Java of all options”? As we told before, there is no programming language with unchallenged authority. Still, you can choose easely, if you analyze the long-term benefits of mastering a certain language. Let’s try to get what makes Java so popular and why to learn it is a good point.</span><h3 style="color: rgb(21, 31, 51); line-height: 1.3; -webkit-font-smoothing: antialiased; font-size: 21px; margin-top: 1.5em; margin-bottom: 0.75em; font-family: Arial, Helvetica, sans-serif; white-space: pre-wrap; --card-border-radius:10px !important;">Java is beginner friendly</h3><span style="color: rgb(23, 43, 83); font-family: Arial, Helvetica, sans-serif; font-size: 18px; white-space: pre-wrap;">You definitely can find languages that initially are easier than Java. First of all, it’s Python, a language with concise and understandable syntax. However there are more real-world tasks that are easier to solve in Java than in Python.
Java is easy to learn because it is relatively high-level. This means that you don''t have to dive deep into the weeds as you do with lower-level languages. For example in Java garbage collection (i.e. killing "unused objects taking up space in memory") happens without your involvement, unlike in C++. But at the same time, Java is low-level enough to handle most tasks.
</span><h3 style="color: rgb(21, 31, 51); line-height: 1.3; -webkit-font-smoothing: antialiased; font-size: 21px; margin-top: 1.5em; margin-bottom: 0.75em; font-family: Arial, Helvetica, sans-serif; white-space: pre-wrap; --card-border-radius:10px !important;">Java is everywhere so you may choose what to do</h3><span style="color: rgb(23, 43, 83); font-family: Arial, Helvetica, sans-serif; font-size: 18px; white-space: pre-wrap;">What is Java used for? It is used for everything! Java is almost everywhere and here is a short list: </span><ul style="padding-left: 2em; margin-bottom: 20px; color: rgb(23, 43, 83); font-family: Arial, Helvetica, sans-serif; font-size: 18px; --card-border-radius:10px !important;"><li style="line-height: 1.4; margin-bottom: 0.3em; --card-border-radius:10px !important;">Big Enterprise server side apps</li><li style="line-height: 1.4; margin-bottom: 0.3em; --card-border-radius:10px !important;">Android Applications</li><li style="line-height: 1.4; margin-bottom: 0.3em; --card-border-radius:10px !important;">Different Web and desktop applications</li><li style="line-height: 1.4; margin-bottom: 0.3em; --card-border-radius:10px !important;">Server Apps at Financial Services Industry</li><li style="line-height: 1.4; margin-bottom: 0.3em; --card-border-radius:10px !important;">Internet of Things (IoT), blockchain</li><li style="line-height: 1.4; margin-bottom: 0.3em; --card-border-radius:10px !important;">Big Data technologies</li><li style="line-height: 1.4; margin-bottom: 0.3em; --card-border-radius:10px !important;">AI, Machine Learning</li></ul><span style="color: rgb(23, 43, 83); font-family: Arial, Helvetica, sans-serif; font-size: 18px; white-space: pre-wrap;">So if you want to work for a huge company, on a big complicated project, Java is a good choice.</span></div>', CAST(N'2022-06-14' AS Date), 1, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (12, N'A Guide to Building a Food Ordering & Delivery App', N'sssssss', CAST(N'2022-05-01' AS Date), 1, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (13, N'1 hour CSS', N'2021-05-01', CAST(N'2021-05-01' AS Date), 1, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (14, N'Why Use React Js: A Complete Guide', N'<div><b>ggggggg</b></div>', CAST(N'2022-06-24' AS Date), 1, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (15, N'Excel Microsoft', N'hihihihi', CAST(N'2022-06-25' AS Date), 1, 39)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (16, N'React Alternatives Frameworks- Lightweight Javascript Libraries
', NULL, CAST(N'2022-06-25' AS Date), 2, 39)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (17, N'How Much Does it Cost to Hire React Developer?', N'<div>dddddđ</div>', CAST(N'2022-06-25' AS Date), 3, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (18, N'Cancelling await calls in .NET 6 with Task.WaitAsync()', N'<div><a href="https://andrewlock.net/finding-the-urls-of-an-aspnetcore-app-from-a-hosted-service-in-dotnet-6/" style="position: relative; animation-duration: 1s; animation-fill-mode: both; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border-width: 0px 0px 0.5px; border-top-style: initial; border-right-style: initial; border-bottom-style: solid; border-left-style: initial; border-top-color: initial; border-right-color: initial; border-bottom-color: rgb(32, 109, 168); border-left-color: initial; border-image: initial; color: rgb(32, 109, 168); transition: all 0.5s ease 0s; overflow-wrap: break-word; word-break: break-word;">In a recent post</a>, I described how to use a <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">TaskCompletionSource</code> with <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">IHostApplicationLifetime</code> as a way of "pausing" a background service until the application starts up. In that code I used the following function that waits for a <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">TaskCompletionSource.Task</code> to complete, but also supports cancellation via a <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">CancellationToken</code>:</div><pre class="language-csharp" style="overflow-wrap: normal; padding: 1em; margin-top: 1em; margin-bottom: 1em; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-stretch: inherit; line-height: 1.2em; font-family: Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace; font-size: 0.95em; vertical-align: baseline; border: 1px solid rgb(221, 221, 221); color: rgb(57, 58, 52); border-radius: 3px; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-shadow: rgb(255, 255, 255) 0px 1px; word-break: normal; tab-size: 4; hyphens: none;"><code class="language-csharp" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 1.2em; font-family: Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace; font-size: 0.95em; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52); background: 0px 0px; text-shadow: rgb(255, 255, 255) 0px 1px; overflow-wrap: normal; word-spacing: normal; tab-size: 4; hyphens: none;"><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">static</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">async</span> <span class="token return-type class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">Task<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);"><</span><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">bool</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);">></span></span> <span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">WaitForAppStartup</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">IHostApplicationLifetime</span> lifetime<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">,</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">CancellationToken</span> stoppingToken<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">{</span>
<span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);"><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">var</span></span> startedSource <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">new</span> <span class="token constructor-invocation class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">TaskCompletionSource</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);"><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">var</span></span> cancelledSource <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">new</span> <span class="token constructor-invocation class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">TaskCompletionSource</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">using</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);"><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">var</span></span> reg1 <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=</span> lifetime<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span><span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">Register</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span> <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=></span> startedSource<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span><span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">SetResult</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">using</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);"><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">var</span></span> reg2 <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=</span> stoppingToken<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span><span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">Register</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span> <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=></span> cancelledSource<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span><span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">SetResult</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">Task</span> completedTask <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">await</span> Task<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span><span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">WhenAny</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span>
startedSource<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span>Task<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">,</span>
cancelledSource<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span>Task<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span><span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">ConfigureAwait</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token boolean" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(54, 172, 170);">false</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token comment" style="font-style: italic; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: green;">// If the completed tasks was the "app started" task, return true, otherwise false</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">return</span> completedTask <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">==</span> startedSource<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span>Task<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">}</span></code></pre><div>Andreas is referring to a new API introduced to the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Task</code> (and <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Task<T></code>) API, which allows you to <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">await</code> a <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Task</code> while <em style="font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">also</em> making that <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">await</code> cancellable:</div><pre class="language-csharp" style="overflow-wrap: normal; padding: 1em; margin-top: 1em; margin-bottom: 1em; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-stretch: inherit; line-height: 1.2em; font-family: Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace; font-size: 0.95em; vertical-align: baseline; border: 1px solid rgb(221, 221, 221); color: rgb(57, 58, 52); border-radius: 3px; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-shadow: rgb(255, 255, 255) 0px 1px; word-break: normal; tab-size: 4; hyphens: none;"><code class="language-csharp" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 1.2em; font-family: Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace; font-size: 0.95em; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52); background: 0px 0px; text-shadow: rgb(255, 255, 255) 0px 1px; overflow-wrap: normal; word-spacing: normal; tab-size: 4; hyphens: none;"><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">namespace</span> <span class="token namespace" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; opacity: 0.7;">System<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">.</span>Threading<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">.</span>Tasks</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">public</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">class</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">Task</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">{</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">public</span> <span class="token return-type class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">Task</span> <span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">WaitAsync</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">CancellationToken</span> cancellationToken<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">public</span> <span class="token return-type class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">Task</span> <span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">WaitAsync</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">TimeSpan</span> timeout<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">public</span> <span class="token return-type class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">Task</span> <span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">WaitAsync</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">TimeSpan</span> timeout<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">,</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">CancellationToken</span> cancellationToken<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">}</span>
</code></pre><div>As you can see, there are three new methods added to <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Task</code>, all are overloads of <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">WaitAsync()</code>. This is useful for the exact scenario I described earlier—you want to await the completion of a <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Task</code>, but want that <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">await</code> to be cancellable by a <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">CancellationToken</code>.</div><div>Based on this new API, we could rewrite the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); color: rgb(102, 102, 102); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">WaitForAppStartup</code> function as the following:</div><pre class="language-csharp" style="overflow-wrap: normal; padding: 1em; margin-top: 1em; margin-bottom: 1em; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-stretch: inherit; line-height: 1.2em; font-family: Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace; font-size: 0.95em; vertical-align: baseline; border: 1px solid rgb(221, 221, 221); color: rgb(57, 58, 52); border-radius: 3px; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; text-shadow: rgb(255, 255, 255) 0px 1px; word-break: normal; tab-size: 4; hyphens: none;"><code class="language-csharp" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 1.2em; font-family: Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace; font-size: 0.95em; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52); background: 0px 0px; text-shadow: rgb(255, 255, 255) 0px 1px; overflow-wrap: normal; word-spacing: normal; tab-size: 4; hyphens: none;"><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">static</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">async</span> <span class="token return-type class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">Task<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);"><</span><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">bool</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(57, 58, 52);">></span></span> <span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">WaitForAppStartup</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">IHostApplicationLifetime</span> lifetime<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">,</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">CancellationToken</span> stoppingToken<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">{</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">try</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">{</span>
<span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);"><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">var</span></span> tcs <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=</span> <span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">new</span> <span class="token constructor-invocation class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">TaskCompletionSource</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">using</span> <span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);"><span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">var</span></span> _ <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=</span> lifetime<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span>ApplicationStarted<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span><span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">Register</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span> <span class="token operator" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; background: rgba(255, 255, 255, 0.5);">=></span> tcs<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span><span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">SetResult</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">await</span> tcs<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span>Task<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span><span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">WaitAsync</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span>stoppingToken<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">.</span><span class="token function" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">ConfigureAwait</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token boolean" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(54, 172, 170);">false</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">return</span> <span class="token boolean" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(54, 172, 170);">true</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">}</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">catch</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">(</span><span class="token class-name" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(43, 145, 175);">TaskCanceledException</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">)</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">{</span>
<span class="token keyword" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(0, 0, 255);">return</span> <span class="token boolean" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px; color: rgb(54, 172, 170);">false</span><span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">;</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">}</span>
<span class="token punctuation" style="font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-size: 14.44px; vertical-align: baseline; border: 0px;">}</span>
</code></pre><div>I think this is much easier to read, so thanks Andreas for pointing it out!</div>', CAST(N'2022-06-26' AS Date), 1, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (19, N'Understanding PathBase in ASP.NET Core', N'<div><font color="#000000"><code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">PathBase</code> is a property on the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">HttpRequest</code> object in ASP.NET Core, and is <em style="font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">similar</em> to <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Path</code>. <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">PathBase</code> contains <em style="font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">part</em> of the original HTTP request''s path, while <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Path</code> contains the remainder. As an <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">HttpRequest</code> moves through the ASP.NET Core middleware pipeline, middleware can move segments from the original <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">HttpRequest.Path</code> property to <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">HttpRequest.PathBase</code>. This can be useful in some routing and link generation scenarios.</font></div><div><font color="#000000">That''s all a bit abstract, so let''s look at an example. Let''s say you have a middleware pipeline that consists of the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">PathBaseMiddleware</code> (more on this later), a <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Map</code> "side-branch", and some terminal middleware (which always return a response describing the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Path</code> and <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">PathBase</code> values)</font></div><div><div><font color="#000000">As shown in the diagram, the rules for <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">PathBase</code> in this situation are:</font></div><ul style="padding-left: 0px; margin: 0px 0px 20px 40px; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-stretch: inherit; line-height: inherit; font-family: Raleway, sans-serif; font-size: 16px; vertical-align: baseline; border: 0px; list-style-position: initial; list-style-image: initial;"><li style="margin-bottom: 4px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 25px; font-family: inherit; vertical-align: baseline; border: 0px;"><font color="#000000">The <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">PathBaseMiddleware</code> moves the specified prefix from <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Path</code> to <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">PathBase</code> if the request has the prefix. If the request does <em style="font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">not</em> have the prefix, the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">PathBaseMiddleware</code> does nothing.</font></li><li style="margin-bottom: 4px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: 25px; font-family: inherit; vertical-align: baseline; border: 0px;"><font color="#000000">When a request takes a <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Map()</code> branch in the pipeline, it moves the prefix from <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">Path</code> to <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">PathBase</code></font></li></ul><div><font color="#000000">Branching middleware pipelines <em style="font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; vertical-align: baseline; border: 0px;">can</em> be very useful, but I haven''t seen it used a huge amount these days outside of multi-tenant or specialised scenarios.</font></div><div><font color="#000000">I also don''t see the <code style="padding: 2px 4px; font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif; font-size: 0.85em; vertical-align: baseline; border: 1px solid rgb(217, 217, 217); background: rgb(247, 250, 251); white-space: pre-wrap; border-radius: 3px;">PathBaseMiddleware</code> mentioned much, but I have found it useful in the past.</font></div></div>', CAST(N'2022-06-27' AS Date), 6, 2)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (20, N'Why Use React Js: A Complete Guide', N'<h2 class="page-section " id="1" style="margin-bottom: 20px; line-height: 40px; font-size: 32px; color: rgb(34, 34, 34); border: 0px; vertical-align: baseline; font-family: Lato;"><span style="font-size: 16px;"><b>Introduction</b></span><b><span style="font-size:18px;"></span></b></h2><div>New technologies are always introduced as an innovative solution and an alternative to swapping the old ones. The original idea of application development has been completely revamped. It all began when Facebook introduced the JavaScript library into their newsfeed in 2011 and later Instagram in 2012. The purpose of the JavaScript library is to build interactive user interfaces as it lets build large web applications that change over time in a fast and reliable way, without reloading the page.</div><div><i style="border: 0px; vertical-align: baseline;">Why is react so popular, you may wonder? Well, the rich, multifaceted, and dynamically hyped, React is one of the most popular front end development library amongst entrepreneurs.</i></div><div>While there are other best Reactjs alternatives as Angular, JQuery, Vue, etc. React has emerged to be the clear winner and entrepreneur’s first choice to use Reactjs for web development.</div><span style="font-size:16px;"><br><b>
Why Use ReactJs For Front-end Development?</b></span><div><div>As per SimilarTech, there are total 667,754 unique domains and 1,259,877 additional websites are using React.js, there should be a good reason for it. Here are the top benefits of React for frontend development that have encouraged so many businesses and globally renowned top companies to use React js for front-end development.</div></div><div><br></div><div><br></div>', CAST(N'2022-06-27' AS Date), 1, 39)
INSERT [dbo].[Blog] ([blog_id], [title], [content], [update_at], [department_id], [account_id]) VALUES (32, N'aaaaaaaa', N'<div><br></div>', CAST(N'2022-07-04' AS Date), 1, 2)
SET IDENTITY_INSERT [dbo].[Blog] OFF
GO
SET IDENTITY_INSERT [dbo].[Course] ON
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (3, N'.NET Core Microservices - The Complete Guide (.NET 6 MVC)', 19.99, 1, N'https://img-b.udemycdn.com/course/240x135/4349122_1eb3_2.jpg', 5, N'English', 1, N'abhdjf', 0, CAST(N'2021-10-13' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (4, N'.NET Core Microservices - The Complete Guide (.NET 6 MVC)', 19.99, 1, N'https://img-c.udemycdn.com/course/240x135/4062064_c372.jpg', 5, N'English', 21, N'.NET is a free, cross-platform, open-source developer platform for building many different types of applications.', NULL, CAST(N'2022-06-17' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (5, N'Complete ASP.NET Core ', 119, 1, N'https://img-c.udemycdn.com/course/240x135/2725016_0ae7_2.jpg', 4, N'English', 1, N'Lorem abasj jasdfmskd jsafkasdf ajsfksadnf jasfksdm ajsdfksadnf asfksanf jasnfnksa kasfasdfk asdjfksdafnsakfnaskf jasnfksafsanfksanasdfkdfn', 20, CAST(N'2022-06-12' AS Date), 2)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (6, N'Complete ASP.NET Core and Entity Framework Development', 119.99, 1, N'https://img-c.udemycdn.com/course/240x135/2725016_0ae7_2.jpg', 4, N'English', 21, N'ASP.NET extends the .NET developer platform with tools and libraries specifically for building web apps.', NULL, CAST(N'2022-06-17' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (7, N'.NET Core Microservices - The Complete Guide (.NET 6 MVC)', 19.99, 2, N'https://img-c.udemycdn.com/course/240x135/2725016_0ae7_2.jpg', 5, N'VietNamese', 2, N'Lorem afsdaj kjadsfmisda kasdfmsdafmksafms asidfsdafmska aksfmosdafmkafmas smfisdamfisdamfsdam iasdfismdafisadmf iasdfismadfis', 10, CAST(N'2022-06-12' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (8, N'JavaScript - The Complete Guide 2022 (Beginner + Advanced)', 84, 1, N'https://img-c.udemycdn.com/course/240x135/2508942_11d3_3.jpg', 4, N'English', 1, N'orem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet, libero ducimus doloribus temporibus dolorem nostrum ea, nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa, obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut sed ipsam quidem? Aliquid, reiciendis harum', 15, CAST(N'2022-06-12' AS Date), 2)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (9, N'Next.js & React - The Complete Guide', 50, 1, N'https://img-c.udemycdn.com/course/240x135/3873464_403c.jpg', 4, N'English', 2, N'Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 70, CAST(N'2022-06-12' AS Date), 2)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (10, N'Advanced React and Redux', 99, 1, N'https://img-c.udemycdn.com/course/240x135/781532_8b4d_6.jpg', 5, N'VietNamese', 1, N'Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 99, CAST(N'2022-06-12' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (11, N'The Complete React Developer Course (w/ Hooks and Redux)', 79, 3, N'https://img-c.udemycdn.com/course/240x135/1286908_1773_6.jpg', 4, N'English', 3, N'Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 25, CAST(N'2022-06-12' AS Date), 2)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (12, N'React Front To Back 2022', 85, 1, N'https://img-c.udemycdn.com/course/240x135/2018828_41a9_3.jpg', 4, N'English', 2, N'Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 0, CAST(N'2022-06-12' AS Date), 2)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (13, N'React, NodeJS, Express & MongoDB - The MERN Fullstack Guide', 99, 1, N'https://img-c.udemycdn.com/course/240x135/2640372_5b44_5.jpg', 4, N'English', 1, N'Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 0, CAST(N'2022-06-12' AS Date), 2)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (14, N'JavaScript - The Complete Guide 2022 (Beginner + Adced)', 30, 1, N'https://img-b.udemycdn.com/course/240x135/2813723_c3e2.jpg', NULL, NULL, 1, NULL, NULL, CAST(N'2022-06-17' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (15, N'.NET Core Microservices - The Complete Guide (.NEVC)', 25, 1, N'https://img-b.udemycdn.com/course/240x135/551498_7081.jpg', 5, NULL, 1, NULL, NULL, CAST(N'2022-06-17' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (16, N'Agular for beginner', 100, 1, N'https://img-c.udemycdn.com/course/240x135/1455016_0b2d_2.jpg', 5, N'English', 2, N'Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 0, CAST(N'2022-06-12' AS Date), 3)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (18, N'Flutter - Beginners Course', 149, 3, N'https://img-c.udemycdn.com/course/240x135/1632804_aa69_4.jpg', 5, N'English', 3, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 10, CAST(N'2022-06-12' AS Date), 2)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (19, N'Fluter - Intermediate', 84, 3, N'https://img-c.udemycdn.com/course/240x135/1671196_037e_3.jpg', 5, N'English, Vietnamese', 3, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 0, CAST(N'2022-06-12' AS Date), 3)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (21, N'Dart - Advanced', 49, 2, N'https://img-c.udemycdn.com/course/240x135/1548958_ad47_4.jpg', 4, N'English, France', 2, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 11, CAST(N'2022-06-12' AS Date), 2)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (22, N'Dart - Beginners Course', 99, 2, N'https://img-c.udemycdn.com/course/240x135/1599220_c25d_4.jpg', 5, N'Vietnamese', 3, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 0, CAST(N'2022-06-12' AS Date), 2)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (23, N'JavaScript - The Complete Guide 2022 (Beginner + Advanced)', 84.99, 4, N'https://img-c.udemycdn.com/course/240x135/2508942_11d3_3.jpg', NULL, N'English', 1, N'For years JavaScript frameworks have dominated the front end/client side development! But things are about to change with Blazor!Blazor is an exciting new part of .NET Core (.NET 6) designed for building rich web user interfaces in C#. This course will help developers transition from building basic sample apps to implementing more real world concepts, design patterns, and features.', NULL, CAST(N'0001-01-01' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (24, N'Become a Game Designer the Complete Series Coding to Design', 69, 1, N'https://img-c.udemycdn.com/course/240x135/526534_04bb_4.jpg', 4, N'English', 1, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 0, CAST(N'2022-06-12' AS Date), 3)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (25, N'Advanced React and Redux', 9.99, 1, N'https://img-c.udemycdn.com/course/240x135/781532_8b4d_6.jpg', 5, N'English', 1, N'Good news is, with well written unit test''s this would be a thing of the past.
Automated testing has been a buzz word for a while but many times developers struggle to find a course that covers the fundamentals of unit testing while implementing what they learned in a real world project! That is the main focus of this course.', NULL, CAST(N'2022-06-05' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (26, N'The Complete React Developer Course (w/ Hooks and Redux)', 24.99, 2, N'https://img-c.udemycdn.com/course/240x135/1286908_1773_6.jpg', NULL, N'English', 1, N'These are pretty common questions and I will answer them all but most of the times manual testing is much more time consuming and it is not as through as unit test. Unit tests take time once to write and can be executed for free every time! As application grows, the cost of manual testing grows exponentially. And manual testing will never give 100% confidence with all the edge cases.. Automated tests help you to catch the bugs while it is in development phase, because of which they would be easier to resolve.', NULL, CAST(N'0001-01-01' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (27, N'A Gentle Introduction To ASP.NET Web Forms For Beginners', 99, 2, N'https://img-c.udemycdn.com/course/240x135/1780798_1bfc.jpg', 3, N'Vietnamese', 1, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 0, CAST(N'2022-06-12' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (28, N'Step-by-step HTML and CSS for Absolute Beginners', 49, 1, N'https://img-c.udemycdn.com/course/240x135/73080_7783_6.jpg', 5, N'France', 2, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 0, CAST(N'2022-06-12' AS Date), 2)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (29, N'Build Responsive Real-World Websites with HTML and CSS', 68, 1, N'https://img-c.udemycdn.com/course/240x135/437398_46c3_10.jpg', 4, N'English', 3, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 0, CAST(N'2022-06-12' AS Date), 2)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (30, N'Complete guide to building an app with .Net Core and React', 199, 3, N'https://img-c.udemycdn.com/course/240x135/2472180_0143.jpg', 5, N'Vietnamese', 2, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 5, CAST(N'2022-06-12' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (31, N'Sketch from A to Z (2022): Become an app designer', 58, 2, N'https://img-c.udemycdn.com/course/240x135/371074_6c73_2.jpg', 5, N'English', 1, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 0, CAST(N'2022-06-12' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (32, N'1 Hour CSS', 10, 2, N'https://img-c.udemycdn.com/course/240x135/64605_e18f_4.jpg', 5, N'France', 3, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 0, CAST(N'2022-06-12' AS Date), 3)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (33, N'Learn HTML and CSS from Scratch - Build Responsive Websites', 84, 1, N'https://img-c.udemycdn.com/course/240x135/2146254_ca25_4.jpg', 4, N'English', 2, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 9, CAST(N'2022-06-12' AS Date), 2)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (34, N'ASP.NET MVC Interview Questions with Answers', 79, 2, N'https://img-c.udemycdn.com/course/240x135/4081184_b548.jpg', 5, N'English', 1, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 80, CAST(N'2022-06-12' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (35, N'The Complete ASP.Net Core Web APIs Course With JWT Security', 84, 3, N'https://img-c.udemycdn.com/course/240x135/2621174_c597_2.jpg', 4, N'Vietnamese', 1, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 20, CAST(N'2022-06-12' AS Date), 2)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (36, N'Design Patterns in C# and .NET', 99, 2, N'https://img-c.udemycdn.com/course/240x135/1148688_4313_5.jpg', 4, N'France, Vietnamese', 3, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 10, CAST(N'2022-06-12' AS Date), 3)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (38, N'1 Hour JavaScript', 129, 1, N'https://img-c.udemycdn.com/course/240x135/63612_8797_4.jpg', 5, N'English', 2, N'
Lorem ipsum dolor sit amet consectetur adipisicing elit. Fuga delectus molestiae, odio commodi minus eveniet,
libero ducimus doloribus temporibus dolorem nostrum ea,
nemo sapiente? Laudantium et rem modi blanditiis quia!
Aliquam voluptatem quaerat molestias provident nulla a, omnis aspernatur recusandae ipsa,
obcaecati sed, sunt dolorum. Odit beatae quasi veritatis harum, facere dolor nesciunt ut
sed ipsam quidem? Aliquid, reiciendis harum', 1, CAST(N'2022-06-12' AS Date), 1)
INSERT [dbo].[Course] ([course_id], [course_name], [price], [department_id], [image], [rate], [language], [account_id], [description], [is_sale], [update_at], [level_id]) VALUES (62, N'.NET Core Microservices - The Complete Guide (.NET 6 MVC)', 1999.99, 1, N'https://img-c.udemycdn.com/course/240x135/4062064_c372.jpg', NULL, N'English', 1, N'hen choosing a technology to build the APIs , organizations and teams mostly rely on their previous experience and/or pick the ones that are widely used . And more often than not they do not provide a precise solution for all business needs. Any third party vendor solutions or other workarounds adopted impact the performance of the API in a negative way.', NULL, CAST(N'2022-06-17' AS Date), 1)
SET IDENTITY_INSERT [dbo].[Course] OFF
GO
SET IDENTITY_INSERT [dbo].[Department] ON
INSERT [dbo].[Department] ([department_id], [department_name]) VALUES (1, N'Web Development')
INSERT [dbo].[Department] ([department_id], [department_name]) VALUES (2, N'Graphic Design')
INSERT [dbo].[Department] ([department_id], [department_name]) VALUES (3, N'Software Enigneering')
INSERT [dbo].[Department] ([department_id], [department_name]) VALUES (4, N'Mobile Development')
INSERT [dbo].[Department] ([department_id], [department_name]) VALUES (5, N'Mobile Development')
INSERT [dbo].[Department] ([department_id], [department_name]) VALUES (6, N'Programing Languages')
SET IDENTITY_INSERT [dbo].[Department] OFF
GO
SET IDENTITY_INSERT [dbo].[Exam] ON
INSERT [dbo].[Exam] ([exam_id], [exam_name], [quantity], [time], [start_date], [lecture_id]) VALUES (1, N'test', 10, 9, CAST(N'2022-07-03' AS Date), 1)
INSERT [dbo].[Exam] ([exam_id], [exam_name], [quantity], [time], [start_date], [lecture_id]) VALUES (2, N'TEst', 10, 5, CAST(N'2022-07-18' AS Date), 1)
INSERT [dbo].[Exam] ([exam_id], [exam_name], [quantity], [time], [start_date], [lecture_id]) VALUES (3, N'ad', 10, 1, CAST(N'2022-07-18' AS Date), 1)
INSERT [dbo].[Exam] ([exam_id], [exam_name], [quantity], [time], [start_date], [lecture_id]) VALUES (4, N'a', 1, 1, CAST(N'2022-07-18' AS Date), 23)
INSERT [dbo].[Exam] ([exam_id], [exam_name], [quantity], [time], [start_date], [lecture_id]) VALUES (5, N'1', 10, 1, CAST(N'2022-07-18' AS Date), 5)
INSERT [dbo].[Exam] ([exam_id], [exam_name], [quantity], [time], [start_date], [lecture_id]) VALUES (6, N'Test', 10, 10, CAST(N'2022-07-20' AS Date), 1)
INSERT [dbo].[Exam] ([exam_id], [exam_name], [quantity], [time], [start_date], [lecture_id]) VALUES (7, N'Testttttttt', 10, 10, CAST(N'2022-07-20' AS Date), 5)
SET IDENTITY_INSERT [dbo].[Exam] OFF
GO
SET IDENTITY_INSERT [dbo].[Feedback] ON
INSERT [dbo].[Feedback] ([feedback_id], [blog_id], [message], [rate], [create_date]) VALUES (1, 1, N'hhasdhashd', NULL, CAST(N'2022-07-21' AS Date))
INSERT [dbo].[Feedback] ([feedback_id], [blog_id], [message], [rate], [create_date]) VALUES (2, 1, N'hhasdhashd', NULL, CAST(N'2022-07-21' AS Date))
INSERT [dbo].[Feedback] ([feedback_id], [blog_id], [message], [rate], [create_date]) VALUES (3, 1, N'hhasdhashd', NULL, CAST(N'2022-07-21' AS Date))
INSERT [dbo].[Feedback] ([feedback_id], [blog_id], [message], [rate], [create_date]) VALUES (4, 1, N'adasdasdasd', NULL, CAST(N'2022-07-21' AS Date))
INSERT [dbo].[Feedback] ([feedback_id], [blog_id], [message], [rate], [create_date]) VALUES (5, 1, N'aaaaaaa', NULL, CAST(N'2022-07-21' AS Date))
INSERT [dbo].[Feedback] ([feedback_id], [blog_id], [message], [rate], [create_date]) VALUES (6, 1, N'yadsyyasdy', NULL, CAST(N'2022-07-21' AS Date))
INSERT [dbo].[Feedback] ([feedback_id], [blog_id], [message], [rate], [create_date]) VALUES (7, 1, N'hahsdhas', NULL, CAST(N'2022-07-21' AS Date))
SET IDENTITY_INSERT [dbo].[Feedback] OFF
GO
INSERT [dbo].[Feedback_Account] ([feedback_id], [account_id]) VALUES (1, 1)
INSERT [dbo].[Feedback_Account] ([feedback_id], [account_id]) VALUES (2, 1)
INSERT [dbo].[Feedback_Account] ([feedback_id], [account_id]) VALUES (3, 1)
INSERT [dbo].[Feedback_Account] ([feedback_id], [account_id]) VALUES (4, 1)
INSERT [dbo].[Feedback_Account] ([feedback_id], [account_id]) VALUES (5, 1)
INSERT [dbo].[Feedback_Account] ([feedback_id], [account_id]) VALUES (6, 1)
INSERT [dbo].[Feedback_Account] ([feedback_id], [account_id]) VALUES (7, 1)
GO
SET IDENTITY_INSERT [dbo].[Lecture] ON
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (1, N'test', 3, CAST(N'2022-07-08' AS Date), N'afsdasfsdafdsafasdfsdfasfsadfasdfsdafasdfasdfasdfsda')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (3, N'Introduction', 4, CAST(N'2022-07-08' AS Date), N'asdfsa asdfjasdjfn ajsdfnajsdfnasdf')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (4, N'', NULL, CAST(N'2022-07-08' AS Date), NULL)
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (5, N'Product API (Da Update lan 2)', 4, CAST(N'2022-07-08' AS Date), N'Bai nay rat la hay, api cac kieuDSFASFSDFSD')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (6, N'Product CRUD', 4, CAST(N'2022-07-08' AS Date), N'DSAFSADF ASDFASDF')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (7, N'Indentify Server', 4, CAST(N'2022-07-08' AS Date), N'asdfsa asdfsad sajdfnsdajfn asdkfkasd')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (8, N'Home Detail', 4, CAST(N'2022-07-08' AS Date), N'asdfsa asdfsad sajdfnsdajfn asdkfkasd')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (9, N'Shopping Cart API Service', 4, CAST(N'2022-07-08' AS Date), N'asdfsa asdfsad sajdfnsdajfn asdkfkasd')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (10, N'Shopping Cart UI', 4, CAST(N'2022-07-08' AS Date), N'asdfsa asdfsad sajdfnsdajfn asdkfkasd')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (11, N'Coupon API Service', 4, CAST(N'2022-07-08' AS Date), N'asdfsa asdfsad sajdfnsdajfn asdkfkasd')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (12, N'Consume Coupon API', 4, CAST(N'2022-07-08' AS Date), N'asdfsa asdfsad sajdfnsdajfn asdkfkasd')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (13, N'Azure Service Bus', 4, CAST(N'2022-07-08' AS Date), N'asdfsa asdfsad sajdfnsdajfn asdkfkasd')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (14, N'Order API', 4, CAST(N'2022-07-08' AS Date), N'asdfsa asdfsad sajdfnsdajfn asdkfkasd')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (15, N'next', NULL, CAST(N'2022-07-08' AS Date), N'ggfdssadasfadsf')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (19, N'GFFDSDFSG', NULL, CAST(N'2022-07-08' AS Date), N'DSFGDSFGSDF')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (23, N'Introduction', 5, CAST(N'2022-07-08' AS Date), N'Gioi thieu qua ve ASP.NET Core')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (26, N'1 min', 38, CAST(N'2022-07-08' AS Date), N'hello')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (27, N'new lesson', 38, CAST(N'2022-07-08' AS Date), N'how to master')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (28, N'Final Lesson', 4, CAST(N'2022-07-08' AS Date), N'Thanks you !')
INSERT [dbo].[Lecture] ([lecture_id], [lecture_name], [course_id], [create_at], [description]) VALUES (29, N'Introduction', 8, CAST(N'2022-07-09' AS Date), N'sadfsadfasfdsafadsf')
SET IDENTITY_INSERT [dbo].[Lecture] OFF
GO
SET IDENTITY_INSERT [dbo].[Lesson] ON
INSERT [dbo].[Lesson] ([lesson_id], [lesson_name], [video], [main], [lecture_id]) VALUES (1, N'1', N'https://www.youtube.com/embed/dVVfjjPfVUo', NULL, NULL)
INSERT [dbo].[Lesson] ([lesson_id], [lesson_name], [video], [main], [lecture_id]) VALUES (2, N'Lesson 1', N'https://www.youtube.com/embed/dVVfjjPfVUo', N'Lorem asda jadsj asjdjsad jasdnfwoqw qweiuna', 5)
INSERT [dbo].[Lesson] ([lesson_id], [lesson_name], [video], [main], [lecture_id]) VALUES (3, N'Lesson 2', N'https://www.youtube.com/embed/guqUX7uxwTM', N'Lorem asda jadsj asjdjsad jasdnfwoqw qweiuna', 5)
INSERT [dbo].[Lesson] ([lesson_id], [lesson_name], [video], [main], [lecture_id]) VALUES (4, N'Lesson 3', N'https://www.youtube.com/embed/rdWsTohpmVg', N'Lorem asda jadsj asjdjsad jasdnfwoqw qweiuna', 5)
INSERT [dbo].[Lesson] ([lesson_id], [lesson_name], [video], [main], [lecture_id]) VALUES (5, N'Lesson 3', N'https://www.youtube.com/embed/wVPdIhhvs-s', N'Lorem asda jadsj asjdjsad jasdnfwoqw qweiuna', 5)
INSERT [dbo].[Lesson] ([lesson_id], [lesson_name], [video], [main], [lecture_id]) VALUES (6, N'Lesson 3', N'https://www.youtube.com/embed/kcMtfvV1BNc', N'Lorem asda jadsj asjdjsad jasdnfwoqw qweiuna', 5)
INSERT [dbo].[Lesson] ([lesson_id], [lesson_name], [video], [main], [lecture_id]) VALUES (7, N'Lesson 3', N'https://www.youtube.com/embed/2iidlwQ-NfU', N'Lorem asda jadsj asjdjsad jasdnfwoqw qweiuna', 5)
INSERT [dbo].[Lesson] ([lesson_id], [lesson_name], [video], [main], [lecture_id]) VALUES (8, N'Lesson 4', N'https://www.youtube.com/embed/paHWTzxn5Qg', N'Lorem asda jadsj asjdjsad jasdnfwoqw qweiuna', 5)
SET IDENTITY_INSERT [dbo].[Lesson] OFF
GO
SET IDENTITY_INSERT [dbo].[Level] ON
INSERT [dbo].[Level] ([level_id], [level]) VALUES (1, N'easy')
INSERT [dbo].[Level] ([level_id], [level]) VALUES (2, N'medium')
INSERT [dbo].[Level] ([level_id], [level]) VALUES (3, N'hard')
SET IDENTITY_INSERT [dbo].[Level] OFF
GO
SET IDENTITY_INSERT [dbo].[Order] ON
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (1, CAST(N'2022-07-11' AS Date), 40, 249)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (2, CAST(N'2022-07-11' AS Date), 40, 283)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (3, CAST(N'2022-07-11' AS Date), 40, 99)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (4, CAST(N'2022-07-11' AS Date), 41, 9.99)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (5, CAST(N'2022-07-11' AS Date), 40, 19.99)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (6, CAST(N'2022-07-11' AS Date), 40, 178)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (7, CAST(N'2022-07-11' AS Date), 40, 19.99)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (8, CAST(N'2022-04-11' AS Date), 40, 49)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (9, CAST(N'2022-05-11' AS Date), 40, 183)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (10, CAST(N'2022-06-11' AS Date), 40, 79)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (11, CAST(N'2022-05-11' AS Date), 42, 327.99)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (12, CAST(N'2022-05-11' AS Date), 42, 119.99)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (13, CAST(N'2022-05-11' AS Date), 42, 613.98)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (14, CAST(N'2022-06-11' AS Date), 41, 119)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (15, CAST(N'2022-07-21' AS Date), 41, 119.99)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (16, CAST(N'2022-07-18' AS Date), 41, 19.99)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (17, CAST(N'2022-07-20' AS Date), 40, 68)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (18, CAST(N'2022-07-19' AS Date), 43, 24.99)
INSERT [dbo].[Order] ([order_id], [order_date], [account_id], [total_price]) VALUES (19, CAST(N'2022-07-20' AS Date), 43, 30)
SET IDENTITY_INSERT [dbo].[Order] OFF
GO
SET IDENTITY_INSERT [dbo].[Order_Detail] ON
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (1, 16, 1, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (2, 18, 1, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (3, 33, 2, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (4, 30, 2, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (5, 13, 3, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (6, 25, 4, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (7, 3, 5, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (8, 38, 6, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (9, 28, 6, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (10, 4, 7, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (11, 21, 8, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (12, 8, 9, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (13, 10, 9, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (14, 34, 10, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (15, 30, 11, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (16, 7, 11, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (17, 11, 11, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (18, 14, 11, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (19, 6, 12, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (20, 9, 13, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (21, 10, 13, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (22, 32, 13, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (23, 18, 13, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (24, 3, 13, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (25, 4, 13, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (26, 38, 13, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (27, 29, 13, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (28, 24, 13, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (29, 5, 14, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (30, 6, 15, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (31, 7, 16, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (32, 29, 17, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (33, 26, 18, 1)
INSERT [dbo].[Order_Detail] ([orderdetail_id], [course_id], [order_id], [quantity]) VALUES (34, 14, 19, 1)
SET IDENTITY_INSERT [dbo].[Order_Detail] OFF
GO
SET IDENTITY_INSERT [dbo].[Program] ON
INSERT [dbo].[Program] ([program_id], [program_name]) VALUES (1, N'C/C++')
INSERT [dbo].[Program] ([program_id], [program_name]) VALUES (2, N'Java')
INSERT [dbo].[Program] ([program_id], [program_name]) VALUES (3, N'Python')
INSERT [dbo].[Program] ([program_id], [program_name]) VALUES (4, N'Ruby')
INSERT [dbo].[Program] ([program_id], [program_name]) VALUES (5, N'C#')
INSERT [dbo].[Program] ([program_id], [program_name]) VALUES (6, N'SQL')
INSERT [dbo].[Program] ([program_id], [program_name]) VALUES (7, N'Spring boot')
INSERT [dbo].[Program] ([program_id], [program_name]) VALUES (8, N'ASP.NET')
INSERT [dbo].[Program] ([program_id], [program_name]) VALUES (9, N'Java script')
INSERT [dbo].[Program] ([program_id], [program_name]) VALUES (10, N'ReactJs')
INSERT [dbo].[Program] ([program_id], [program_name]) VALUES (11, N'VueJs')
INSERT [dbo].[Program] ([program_id], [program_name]) VALUES (12, N'Angular')
INSERT [dbo].[Program] ([program_id], [program_name]) VALUES (13, N'Django')
SET IDENTITY_INSERT [dbo].[Program] OFF
GO
SET IDENTITY_INSERT [dbo].[Question] ON
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (2, N'1+1', N'1', N'2', N'3', N'4', N'3', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (3, N'2+2', N'1', N'2', N'3', N'4', N'4', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (4, N'React', N'1', N'2', N'3', N'4', N'1', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (5, N'testttt', N'2', N'3', N'4', N'1', N'3', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (6, N'asd', N'aa', N'bbb', N'vvv', N'ddd', N'2', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (7, N'xxxxxxx', N'zzzzz', N'vvvvvvv', N'aaaaaaa', N'ccccccccc', N'4', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (8, N'adaqwe', N'ad', N'ad', N'zc', N'z', N'3', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (9, N'z ad', N'a', N'z', N'e', N'q', N'4', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (10, N'c', N'v', N'b', N'n', N'q', N'2', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (11, N'aaaaaaa', N'aaaaa', N'ass', N'zxc', N'aasdasd', N'1', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (12, N'test', N'test', N'test', N'test', N'test', N'3', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (13, N'1+1 + 2', N'1', N'2', N'3', N'4', N'2', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (14, N'2+2', N'1', N'2', N'3', N'4', N'3', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (15, N'asd', N'aa', N'bbb', N'vvv', N'ddd', N'2', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (16, N'xxxxxxx', N'zzzzz', N'vvvvvvv', N'aaaaaaa', N'ccccccccc', N'4', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (17, N'adaqwe', N'ad', N'ad', N'zc', N'z', N'4', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (18, N'z ad', N'a', N'z', N'e', N'q', N'4', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (19, N'c', N'v', N'b', N'n', N'q', N'2', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (20, N'aaaaaaa', N'aaaaa', N'ass', N'zxc', N'aasdasd', N'1', 1)
INSERT [dbo].[Question] ([question_id], [quiz], [op1], [op2], [op3], [op4], [solution], [lecture_id]) VALUES (21, N'aaasdsa', N'asd', N'asd', N'asd', N'asd', N'2', 1)
SET IDENTITY_INSERT [dbo].[Question] OFF
GO
INSERT [dbo].[Technology] ([course_id], [program_id]) VALUES (5, 2)
INSERT [dbo].[Technology] ([course_id], [program_id]) VALUES (5, 3)
INSERT [dbo].[Technology] ([course_id], [program_id]) VALUES (5, 6)
INSERT [dbo].[Technology] ([course_id], [program_id]) VALUES (7, 2)
INSERT [dbo].[Technology] ([course_id], [program_id]) VALUES (7, 6)
INSERT [dbo].[Technology] ([course_id], [program_id]) VALUES (7, 8)
GO
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (21, 4)
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (21, 6)
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (21, 7)
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (21, 13)
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (41, 10)
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (41, 12)
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (41, 14)
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (41, 21)
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (41, 25)
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (41, 26)
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (41, 28)
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (41, 29)
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (41, 31)
INSERT [dbo].[WhistList] ([account_id], [course_id]) VALUES (43, 30)
GO
ALTER TABLE [dbo].[Account_Token] ADD CONSTRAINT [DF_Account_Token_status] DEFAULT ((0)) FOR [create_token]
GO
ALTER TABLE [dbo].[Account_Token] ADD CONSTRAINT [DF_Account_Token_status_1] DEFAULT ((0)) FOR [status]
GO
ALTER TABLE [dbo].[Blog] ADD CONSTRAINT [DF_Blog_update_at] DEFAULT (getdate()) FOR [update_at]