You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

20230303145041_Initial.Designer.cs 21KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601
  1. // <auto-generated />
  2. using System;
  3. using Diligent.WebAPI.Data;
  4. using Microsoft.EntityFrameworkCore;
  5. using Microsoft.EntityFrameworkCore.Infrastructure;
  6. using Microsoft.EntityFrameworkCore.Metadata;
  7. using Microsoft.EntityFrameworkCore.Migrations;
  8. using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
  9. #nullable disable
  10. namespace Diligent.WebAPI.Data.Migrations
  11. {
  12. [DbContext(typeof(DatabaseContext))]
  13. [Migration("20230303145041_Initial")]
  14. partial class Initial
  15. {
  16. protected override void BuildTargetModel(ModelBuilder modelBuilder)
  17. {
  18. #pragma warning disable 612, 618
  19. modelBuilder
  20. .HasAnnotation("ProductVersion", "6.0.10")
  21. .HasAnnotation("Relational:MaxIdentifierLength", 128);
  22. SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);
  23. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.AppRole", b =>
  24. {
  25. b.Property<int>("Id")
  26. .ValueGeneratedOnAdd()
  27. .HasColumnType("int");
  28. SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
  29. b.Property<string>("ConcurrencyStamp")
  30. .IsConcurrencyToken()
  31. .HasColumnType("nvarchar(max)");
  32. b.Property<string>("Name")
  33. .HasMaxLength(256)
  34. .HasColumnType("nvarchar(256)");
  35. b.Property<string>("NormalizedName")
  36. .HasMaxLength(256)
  37. .HasColumnType("nvarchar(256)");
  38. b.HasKey("Id");
  39. b.HasIndex("NormalizedName")
  40. .IsUnique()
  41. .HasDatabaseName("RoleNameIndex")
  42. .HasFilter("[NormalizedName] IS NOT NULL");
  43. b.ToTable("AspNetRoles", (string)null);
  44. });
  45. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.Category", b =>
  46. {
  47. b.Property<int>("Id")
  48. .ValueGeneratedOnAdd()
  49. .HasColumnType("int");
  50. SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
  51. b.Property<string>("Name")
  52. .IsRequired()
  53. .HasColumnType("nvarchar(max)");
  54. b.Property<int?>("ParentCategoryId")
  55. .HasColumnType("int");
  56. b.HasKey("Id");
  57. b.HasIndex("ParentCategoryId");
  58. b.ToTable("Categories");
  59. });
  60. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.FileEntity", b =>
  61. {
  62. b.Property<int>("Id")
  63. .ValueGeneratedOnAdd()
  64. .HasColumnType("int");
  65. SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
  66. b.Property<int?>("CategoryId")
  67. .HasColumnType("int");
  68. b.Property<bool>("Deleted")
  69. .HasColumnType("bit");
  70. b.Property<Guid>("DocumentId")
  71. .HasColumnType("uniqueidentifier");
  72. b.Property<string>("Note")
  73. .IsRequired()
  74. .HasColumnType("nvarchar(max)");
  75. b.Property<string>("Title")
  76. .IsRequired()
  77. .HasColumnType("nvarchar(max)");
  78. b.HasKey("Id");
  79. b.HasIndex("CategoryId");
  80. b.ToTable("Files");
  81. });
  82. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.RefreshToken", b =>
  83. {
  84. b.Property<int>("Id")
  85. .ValueGeneratedOnAdd()
  86. .HasColumnType("int");
  87. SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
  88. b.Property<DateTime>("CreationDate")
  89. .HasColumnType("datetime2");
  90. b.Property<DateTime>("ExpiryDate")
  91. .HasColumnType("datetime2");
  92. b.Property<bool>("Invalidated")
  93. .HasColumnType("bit");
  94. b.Property<string>("JwtId")
  95. .IsRequired()
  96. .HasColumnType("nvarchar(max)");
  97. b.Property<string>("Token")
  98. .IsRequired()
  99. .HasColumnType("nvarchar(max)");
  100. b.Property<bool>("Used")
  101. .HasColumnType("bit");
  102. b.Property<int>("UserId")
  103. .HasColumnType("int");
  104. b.HasKey("Id");
  105. b.HasIndex("UserId");
  106. b.ToTable("RefreshTokens");
  107. });
  108. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.Tag", b =>
  109. {
  110. b.Property<int>("Id")
  111. .ValueGeneratedOnAdd()
  112. .HasColumnType("int");
  113. SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
  114. b.Property<string>("Name")
  115. .IsRequired()
  116. .HasColumnType("nvarchar(max)");
  117. b.HasKey("Id");
  118. b.ToTable("Tags");
  119. });
  120. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.User", b =>
  121. {
  122. b.Property<int>("Id")
  123. .ValueGeneratedOnAdd()
  124. .HasColumnType("int");
  125. SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
  126. b.Property<int>("AccessFailedCount")
  127. .HasColumnType("int");
  128. b.Property<string>("ConcurrencyStamp")
  129. .IsConcurrencyToken()
  130. .HasColumnType("nvarchar(max)");
  131. b.Property<string>("Email")
  132. .HasMaxLength(256)
  133. .HasColumnType("nvarchar(256)");
  134. b.Property<bool>("EmailConfirmed")
  135. .HasColumnType("bit");
  136. b.Property<string>("FirstName")
  137. .IsRequired()
  138. .HasColumnType("nvarchar(max)");
  139. b.Property<bool?>("IsEnabled")
  140. .ValueGeneratedOnAdd()
  141. .HasColumnType("bit")
  142. .HasDefaultValue(true);
  143. b.Property<string>("LastName")
  144. .IsRequired()
  145. .HasColumnType("nvarchar(max)");
  146. b.Property<string>("LinkedIn")
  147. .HasColumnType("nvarchar(max)");
  148. b.Property<bool>("LockoutEnabled")
  149. .HasColumnType("bit");
  150. b.Property<DateTimeOffset?>("LockoutEnd")
  151. .HasColumnType("datetimeoffset");
  152. b.Property<string>("NormalizedEmail")
  153. .HasMaxLength(256)
  154. .HasColumnType("nvarchar(256)");
  155. b.Property<string>("NormalizedUserName")
  156. .HasMaxLength(256)
  157. .HasColumnType("nvarchar(256)");
  158. b.Property<string>("PasswordHash")
  159. .HasColumnType("nvarchar(max)");
  160. b.Property<string>("PhoneNumber")
  161. .HasColumnType("nvarchar(max)");
  162. b.Property<bool>("PhoneNumberConfirmed")
  163. .HasColumnType("bit");
  164. b.Property<string>("Position")
  165. .HasColumnType("nvarchar(max)");
  166. b.Property<string>("SecurityStamp")
  167. .HasColumnType("nvarchar(max)");
  168. b.Property<bool>("TwoFactorEnabled")
  169. .HasColumnType("bit");
  170. b.Property<string>("UserName")
  171. .HasMaxLength(256)
  172. .HasColumnType("nvarchar(256)");
  173. b.HasKey("Id");
  174. b.HasIndex("NormalizedEmail")
  175. .HasDatabaseName("EmailIndex");
  176. b.HasIndex("NormalizedUserName")
  177. .IsUnique()
  178. .HasDatabaseName("UserNameIndex")
  179. .HasFilter("[NormalizedUserName] IS NOT NULL");
  180. b.ToTable("AspNetUsers", (string)null);
  181. });
  182. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.UserCategories", b =>
  183. {
  184. b.Property<int>("Id")
  185. .ValueGeneratedOnAdd()
  186. .HasColumnType("int");
  187. SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
  188. b.Property<int>("CategoryId")
  189. .HasColumnType("int");
  190. b.Property<int>("UserId")
  191. .HasColumnType("int");
  192. b.HasKey("Id");
  193. b.HasIndex("CategoryId");
  194. b.HasIndex("UserId");
  195. b.ToTable("UserCategories");
  196. });
  197. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.WebhookDefinition", b =>
  198. {
  199. b.Property<long>("Id")
  200. .ValueGeneratedOnAdd()
  201. .HasColumnType("bigint");
  202. SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<long>("Id"), 1L, 1);
  203. b.Property<DateTime>("CreatedAtUtc")
  204. .HasColumnType("datetime2");
  205. b.Property<DateTime?>("DeletedAtUtc")
  206. .HasColumnType("datetime2");
  207. b.Property<string>("Description")
  208. .IsRequired()
  209. .HasColumnType("nvarchar(max)");
  210. b.Property<string>("DisplayName")
  211. .IsRequired()
  212. .HasMaxLength(100)
  213. .HasColumnType("nvarchar(100)");
  214. b.Property<string>("Name")
  215. .IsRequired()
  216. .HasMaxLength(100)
  217. .HasColumnType("nvarchar(100)");
  218. b.Property<DateTime?>("UpdatedAtUtc")
  219. .HasColumnType("datetime2");
  220. b.HasKey("Id");
  221. b.ToTable("WebhookDefinitions");
  222. });
  223. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.WebhookSubscription", b =>
  224. {
  225. b.Property<long>("Id")
  226. .ValueGeneratedOnAdd()
  227. .HasColumnType("bigint");
  228. SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<long>("Id"), 1L, 1);
  229. b.Property<DateTime>("CreatedAtUtc")
  230. .HasColumnType("datetime2");
  231. b.Property<DateTime?>("DeletedAtUtc")
  232. .HasColumnType("datetime2");
  233. b.Property<bool>("IsActive")
  234. .HasColumnType("bit");
  235. b.Property<DateTime?>("UpdatedAtUtc")
  236. .HasColumnType("datetime2");
  237. b.Property<long>("WebhookDefinitionId")
  238. .HasColumnType("bigint");
  239. b.Property<string>("WebhookURL")
  240. .IsRequired()
  241. .HasColumnType("nvarchar(max)");
  242. b.HasKey("Id");
  243. b.HasIndex("WebhookDefinitionId");
  244. b.ToTable("WebhookSubscriptions");
  245. });
  246. modelBuilder.Entity("FileEntityTag", b =>
  247. {
  248. b.Property<int>("FilesId")
  249. .HasColumnType("int");
  250. b.Property<int>("TagsId")
  251. .HasColumnType("int");
  252. b.HasKey("FilesId", "TagsId");
  253. b.HasIndex("TagsId");
  254. b.ToTable("FileEntityTag");
  255. });
  256. modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<int>", b =>
  257. {
  258. b.Property<int>("Id")
  259. .ValueGeneratedOnAdd()
  260. .HasColumnType("int");
  261. SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
  262. b.Property<string>("ClaimType")
  263. .HasColumnType("nvarchar(max)");
  264. b.Property<string>("ClaimValue")
  265. .HasColumnType("nvarchar(max)");
  266. b.Property<int>("RoleId")
  267. .HasColumnType("int");
  268. b.HasKey("Id");
  269. b.HasIndex("RoleId");
  270. b.ToTable("AspNetRoleClaims", (string)null);
  271. });
  272. modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<int>", b =>
  273. {
  274. b.Property<int>("Id")
  275. .ValueGeneratedOnAdd()
  276. .HasColumnType("int");
  277. SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
  278. b.Property<string>("ClaimType")
  279. .HasColumnType("nvarchar(max)");
  280. b.Property<string>("ClaimValue")
  281. .HasColumnType("nvarchar(max)");
  282. b.Property<int>("UserId")
  283. .HasColumnType("int");
  284. b.HasKey("Id");
  285. b.HasIndex("UserId");
  286. b.ToTable("AspNetUserClaims", (string)null);
  287. });
  288. modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<int>", b =>
  289. {
  290. b.Property<string>("LoginProvider")
  291. .HasColumnType("nvarchar(450)");
  292. b.Property<string>("ProviderKey")
  293. .HasColumnType("nvarchar(450)");
  294. b.Property<string>("ProviderDisplayName")
  295. .HasColumnType("nvarchar(max)");
  296. b.Property<int>("UserId")
  297. .HasColumnType("int");
  298. b.HasKey("LoginProvider", "ProviderKey");
  299. b.HasIndex("UserId");
  300. b.ToTable("AspNetUserLogins", (string)null);
  301. });
  302. modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<int>", b =>
  303. {
  304. b.Property<int>("UserId")
  305. .HasColumnType("int");
  306. b.Property<int>("RoleId")
  307. .HasColumnType("int");
  308. b.HasKey("UserId", "RoleId");
  309. b.HasIndex("RoleId");
  310. b.ToTable("AspNetUserRoles", (string)null);
  311. });
  312. modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<int>", b =>
  313. {
  314. b.Property<int>("UserId")
  315. .HasColumnType("int");
  316. b.Property<string>("LoginProvider")
  317. .HasColumnType("nvarchar(450)");
  318. b.Property<string>("Name")
  319. .HasColumnType("nvarchar(450)");
  320. b.Property<string>("Value")
  321. .HasColumnType("nvarchar(max)");
  322. b.HasKey("UserId", "LoginProvider", "Name");
  323. b.ToTable("AspNetUserTokens", (string)null);
  324. });
  325. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.Category", b =>
  326. {
  327. b.HasOne("Diligent.WebAPI.Data.Entities.Category", "ParentCategory")
  328. .WithMany()
  329. .HasForeignKey("ParentCategoryId");
  330. b.Navigation("ParentCategory");
  331. });
  332. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.FileEntity", b =>
  333. {
  334. b.HasOne("Diligent.WebAPI.Data.Entities.Category", "Category")
  335. .WithMany("Files")
  336. .HasForeignKey("CategoryId");
  337. b.Navigation("Category");
  338. });
  339. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.RefreshToken", b =>
  340. {
  341. b.HasOne("Diligent.WebAPI.Data.Entities.User", "User")
  342. .WithMany()
  343. .HasForeignKey("UserId")
  344. .OnDelete(DeleteBehavior.Cascade)
  345. .IsRequired();
  346. b.Navigation("User");
  347. });
  348. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.UserCategories", b =>
  349. {
  350. b.HasOne("Diligent.WebAPI.Data.Entities.Category", "Category")
  351. .WithMany("UserCategories")
  352. .HasForeignKey("CategoryId")
  353. .OnDelete(DeleteBehavior.Cascade)
  354. .IsRequired();
  355. b.HasOne("Diligent.WebAPI.Data.Entities.User", null)
  356. .WithMany("UserCategories")
  357. .HasForeignKey("UserId")
  358. .OnDelete(DeleteBehavior.Cascade)
  359. .IsRequired();
  360. b.Navigation("Category");
  361. });
  362. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.WebhookSubscription", b =>
  363. {
  364. b.HasOne("Diligent.WebAPI.Data.Entities.WebhookDefinition", "WebhookDefinition")
  365. .WithMany()
  366. .HasForeignKey("WebhookDefinitionId")
  367. .OnDelete(DeleteBehavior.Cascade)
  368. .IsRequired();
  369. b.Navigation("WebhookDefinition");
  370. });
  371. modelBuilder.Entity("FileEntityTag", b =>
  372. {
  373. b.HasOne("Diligent.WebAPI.Data.Entities.FileEntity", null)
  374. .WithMany()
  375. .HasForeignKey("FilesId")
  376. .OnDelete(DeleteBehavior.Cascade)
  377. .IsRequired();
  378. b.HasOne("Diligent.WebAPI.Data.Entities.Tag", null)
  379. .WithMany()
  380. .HasForeignKey("TagsId")
  381. .OnDelete(DeleteBehavior.Cascade)
  382. .IsRequired();
  383. });
  384. modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<int>", b =>
  385. {
  386. b.HasOne("Diligent.WebAPI.Data.Entities.AppRole", null)
  387. .WithMany()
  388. .HasForeignKey("RoleId")
  389. .OnDelete(DeleteBehavior.Cascade)
  390. .IsRequired();
  391. });
  392. modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<int>", b =>
  393. {
  394. b.HasOne("Diligent.WebAPI.Data.Entities.User", null)
  395. .WithMany()
  396. .HasForeignKey("UserId")
  397. .OnDelete(DeleteBehavior.Cascade)
  398. .IsRequired();
  399. });
  400. modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<int>", b =>
  401. {
  402. b.HasOne("Diligent.WebAPI.Data.Entities.User", null)
  403. .WithMany()
  404. .HasForeignKey("UserId")
  405. .OnDelete(DeleteBehavior.Cascade)
  406. .IsRequired();
  407. });
  408. modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<int>", b =>
  409. {
  410. b.HasOne("Diligent.WebAPI.Data.Entities.AppRole", null)
  411. .WithMany()
  412. .HasForeignKey("RoleId")
  413. .OnDelete(DeleteBehavior.Cascade)
  414. .IsRequired();
  415. b.HasOne("Diligent.WebAPI.Data.Entities.User", null)
  416. .WithMany()
  417. .HasForeignKey("UserId")
  418. .OnDelete(DeleteBehavior.Cascade)
  419. .IsRequired();
  420. });
  421. modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<int>", b =>
  422. {
  423. b.HasOne("Diligent.WebAPI.Data.Entities.User", null)
  424. .WithMany()
  425. .HasForeignKey("UserId")
  426. .OnDelete(DeleteBehavior.Cascade)
  427. .IsRequired();
  428. });
  429. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.Category", b =>
  430. {
  431. b.Navigation("Files");
  432. b.Navigation("UserCategories");
  433. });
  434. modelBuilder.Entity("Diligent.WebAPI.Data.Entities.User", b =>
  435. {
  436. b.Navigation("UserCategories");
  437. });
  438. #pragma warning restore 612, 618
  439. }
  440. }
  441. }