Got most of admin panel working. Data issues fixed
This commit is contained in:
@@ -1,10 +1,12 @@
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.AspNetCore.Identity.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.ChangeTracking;
|
||||
using System.Text.Json;
|
||||
using OpenArchival.DataAccess;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ArchiveDbContext : DbContext
|
||||
public class ApplicationDbContext(DbContextOptions<ApplicationDbContext> options) : IdentityDbContext<ApplicationUser>(options)
|
||||
{
|
||||
public DbSet<ArtifactGrouping> ArtifactGroupings { get; set; }
|
||||
|
||||
@@ -18,50 +20,35 @@ public class ArchiveDbContext : DbContext
|
||||
|
||||
public DbSet<FilePathListing> ArtifactFilePaths { get; set; }
|
||||
|
||||
public DbSet<ArchiveCategory> ArtifactGroupingCategories { get; set; }
|
||||
|
||||
public DbSet<ArtifactDefect> ArtifactDefects { get; set; }
|
||||
|
||||
public DbSet<ArtifactStorageLocation> ArtifactStorageLocations { get; set; }
|
||||
|
||||
public DbSet<ArtifactType> ArtifactTypes { get; set; }
|
||||
|
||||
public ArchiveDbContext(DbContextOptions<ArchiveDbContext> options)
|
||||
: base(options)
|
||||
{
|
||||
}
|
||||
|
||||
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
||||
{
|
||||
base.OnModelCreating(modelBuilder);
|
||||
|
||||
modelBuilder.Entity<ArtifactGrouping>()
|
||||
.HasMany(p => p.RelatedArtifactGroupings)
|
||||
.WithMany()
|
||||
.UsingEntity(j => j.ToTable("RelatedGroupings"));
|
||||
|
||||
modelBuilder.Entity<ArtifactEntry>()
|
||||
.HasMany(p => p.Files)
|
||||
.WithOne(p => p.ParentArtifactEntry)
|
||||
.HasForeignKey(p => p.ParentArtifactEntryId)
|
||||
.IsRequired(false);
|
||||
|
||||
modelBuilder.Entity<ArtifactEntry>()
|
||||
.HasMany(a => a.RelatedTo)
|
||||
.WithMany(a => a.RelatedBy)
|
||||
.UsingEntity(j => j.ToTable("ArtifactRelationships"));
|
||||
|
||||
modelBuilder.Entity<ArtifactGrouping>()
|
||||
.OwnsOne(p => p.IdentifierFields)
|
||||
.ToJson();
|
||||
|
||||
modelBuilder.Entity<ArtifactEntry>(builder =>
|
||||
{
|
||||
builder.Property(p => p.FileTextContent)
|
||||
.HasConversion
|
||||
(
|
||||
v => JsonSerializer.Serialize
|
||||
(v, new JsonSerializerOptions()),
|
||||
|
||||
v => JsonSerializer.Deserialize<Dictionary<string, string>>
|
||||
(v, new JsonSerializerOptions()) ?? new Dictionary<string, string>()
|
||||
);
|
||||
});
|
||||
|
||||
modelBuilder.Entity<ArtifactGrouping>()
|
||||
.HasMany(grouping => grouping.ChildArtifactEntries)
|
||||
.WithOne(entry => entry.ArtifactGrouping)
|
||||
.HasForeignKey(entry => entry.ArtifactGroupingId)
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
var dictionaryComparer = new ValueComparer<Dictionary<string, string>>(
|
||||
(dictionary1, dictionary2) => dictionary1.OrderBy(pair => pair.Key)
|
||||
@@ -73,16 +60,5 @@ public class ArchiveDbContext : DbContext
|
||||
|
||||
sourceDictionary => new Dictionary<string, string>(sourceDictionary)
|
||||
);
|
||||
|
||||
modelBuilder.Entity<ArtifactEntry>(builder =>
|
||||
{
|
||||
builder.Property(p => p.FileTextContent)
|
||||
.HasConversion
|
||||
(
|
||||
v => JsonSerializer.Serialize(v, new JsonSerializerOptions()),
|
||||
v => JsonSerializer.Deserialize<Dictionary<string, string>>(v, new JsonSerializerOptions()) ?? new Dictionary<string, string>()
|
||||
).Metadata
|
||||
.SetValueComparer(dictionaryComparer);
|
||||
});
|
||||
}
|
||||
}
|
||||
45
OpenArchival.DataAccess/IdentityDataSeeder.cs
Normal file
45
OpenArchival.DataAccess/IdentityDataSeeder.cs
Normal file
@@ -0,0 +1,45 @@
|
||||
// Create a new file, e.g., /Data/IdentityDataSeeder.cs
|
||||
|
||||
using Microsoft.AspNetCore.Identity;
|
||||
using OpenArchival.DataAccess; // Your project's namespace for ApplicationUser
|
||||
|
||||
public static class IdentityDataSeeder
|
||||
{
|
||||
public static async Task SeedRolesAndAdminUserAsync(IServiceProvider serviceProvider)
|
||||
{
|
||||
// Get the required services
|
||||
var roleManager = serviceProvider.GetRequiredService<RoleManager<IdentityRole>>();
|
||||
var userManager = serviceProvider.GetRequiredService<UserManager<ApplicationUser>>();
|
||||
|
||||
// --- Create Roles If They Don't Exist ---
|
||||
string[] roleNames = { "Admin", "User" };
|
||||
foreach (var roleName in roleNames)
|
||||
{
|
||||
if (!await roleManager.RoleExistsAsync(roleName))
|
||||
{
|
||||
await roleManager.CreateAsync(new IdentityRole(roleName));
|
||||
}
|
||||
}
|
||||
|
||||
// --- Create a Default Admin User If It Doesn't Exist ---
|
||||
var adminEmail = "admin@admin.com";
|
||||
if (await userManager.FindByEmailAsync(adminEmail) == null)
|
||||
{
|
||||
var adminUser = new ApplicationUser
|
||||
{
|
||||
UserName = adminEmail,
|
||||
Email = adminEmail,
|
||||
EmailConfirmed = true // Bypass email confirmation for the seeder
|
||||
};
|
||||
|
||||
// Be sure to use a strong password from configuration in a real app
|
||||
var result = await userManager.CreateAsync(adminUser, "StrongAdminPassword123!");
|
||||
|
||||
if (result.Succeeded)
|
||||
{
|
||||
// Assign the 'Admin' role to the new user
|
||||
await userManager.AddToRoleAsync(adminUser, "Admin");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,380 +0,0 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
using OpenArchival.DataAccess;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ArchiveDbContext))]
|
||||
[Migration("20250806141452_AllModels")]
|
||||
partial class AllModels
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "9.0.7")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("TagsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactEntriesId", "TagsId");
|
||||
|
||||
b.HasIndex("TagsId");
|
||||
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactGroupingArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedArtifactGroupingsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactGroupingId", "RelatedArtifactGroupingsId");
|
||||
|
||||
b.HasIndex("RelatedArtifactGroupingsId");
|
||||
|
||||
b.ToTable("RelatedGroupings", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldDescriptions")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldNames")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("FieldSeparator")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArchiveCategory");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactDefects");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ArtifactNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<DateTime>>("AssociatedDates")
|
||||
.HasColumnType("timestamp with time zone[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Defects")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("ListedNames")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<int?>("ParentArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("StorageLocation")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactGroupingId");
|
||||
|
||||
b.ToTable("ArtifactEntries");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int?>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactGroupingId");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("CategoryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Type")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("CategoryId");
|
||||
|
||||
b.ToTable("ArtifactGroupings");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssocaitedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("OriginalName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Path")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactEntriesId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntryTag", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("TagsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactGroupingArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactGroupingId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedArtifactGroupingsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ParentArtifactGrouping")
|
||||
.WithMany("ChildArtifactEntries")
|
||||
.HasForeignKey("ParentArtifactGroupingId");
|
||||
|
||||
b.Navigation("ParentArtifactGrouping");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany("ChildTags")
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArchiveCategory", "Category")
|
||||
.WithMany()
|
||||
.HasForeignKey("CategoryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.OwnsOne("OpenArchival.DataAccess.IdentifierFields", "IdentifierFields", b1 =>
|
||||
{
|
||||
b1.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b1.PrimitiveCollection<List<string>>("Values")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b1.HasKey("ArtifactGroupingId");
|
||||
|
||||
b1.ToTable("ArtifactGroupings");
|
||||
|
||||
b1.ToJson("IdentifierFields");
|
||||
|
||||
b1.WithOwner()
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
b.Navigation("Category");
|
||||
|
||||
b.Navigation("IdentifierFields")
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
|
||||
b.Navigation("ChildTags");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,380 +0,0 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
using OpenArchival.DataAccess;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ArchiveDbContext))]
|
||||
[Migration("20250806144037_AllModelsFixedComparer")]
|
||||
partial class AllModelsFixedComparer
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "9.0.7")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("TagsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactEntriesId", "TagsId");
|
||||
|
||||
b.HasIndex("TagsId");
|
||||
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactGroupingArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedArtifactGroupingsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactGroupingId", "RelatedArtifactGroupingsId");
|
||||
|
||||
b.HasIndex("RelatedArtifactGroupingsId");
|
||||
|
||||
b.ToTable("RelatedGroupings", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldDescriptions")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldNames")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("FieldSeparator")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArchiveCategory");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactDefects");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ArtifactNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<DateTime>>("AssociatedDates")
|
||||
.HasColumnType("timestamp with time zone[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Defects")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("ListedNames")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<int?>("ParentArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("StorageLocation")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactGroupingId");
|
||||
|
||||
b.ToTable("ArtifactEntries");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int?>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactGroupingId");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("CategoryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Type")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("CategoryId");
|
||||
|
||||
b.ToTable("ArtifactGroupings");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssocaitedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("OriginalName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Path")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactEntriesId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntryTag", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("TagsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactGroupingArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactGroupingId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedArtifactGroupingsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ParentArtifactGrouping")
|
||||
.WithMany("ChildArtifactEntries")
|
||||
.HasForeignKey("ParentArtifactGroupingId");
|
||||
|
||||
b.Navigation("ParentArtifactGrouping");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany("ChildTags")
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArchiveCategory", "Category")
|
||||
.WithMany()
|
||||
.HasForeignKey("CategoryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.OwnsOne("OpenArchival.DataAccess.IdentifierFields", "IdentifierFields", b1 =>
|
||||
{
|
||||
b1.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b1.PrimitiveCollection<List<string>>("Values")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b1.HasKey("ArtifactGroupingId");
|
||||
|
||||
b1.ToTable("ArtifactGroupings");
|
||||
|
||||
b1.ToJson("IdentifierFields");
|
||||
|
||||
b1.WithOwner()
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
b.Navigation("Category");
|
||||
|
||||
b.Navigation("IdentifierFields")
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
|
||||
b.Navigation("ChildTags");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,59 +0,0 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class NullableParentArtifactEntryId : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropForeignKey(
|
||||
name: "FK_ArtifactFilePaths_ArtifactEntries_ParentArtifactEntryId",
|
||||
table: "ArtifactFilePaths");
|
||||
|
||||
migrationBuilder.AlterColumn<int>(
|
||||
name: "ParentArtifactEntryId",
|
||||
table: "ArtifactFilePaths",
|
||||
type: "integer",
|
||||
nullable: true,
|
||||
oldClrType: typeof(int),
|
||||
oldType: "integer");
|
||||
|
||||
migrationBuilder.AddForeignKey(
|
||||
name: "FK_ArtifactFilePaths_ArtifactEntries_ParentArtifactEntryId",
|
||||
table: "ArtifactFilePaths",
|
||||
column: "ParentArtifactEntryId",
|
||||
principalTable: "ArtifactEntries",
|
||||
principalColumn: "Id");
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropForeignKey(
|
||||
name: "FK_ArtifactFilePaths_ArtifactEntries_ParentArtifactEntryId",
|
||||
table: "ArtifactFilePaths");
|
||||
|
||||
migrationBuilder.AlterColumn<int>(
|
||||
name: "ParentArtifactEntryId",
|
||||
table: "ArtifactFilePaths",
|
||||
type: "integer",
|
||||
nullable: false,
|
||||
defaultValue: 0,
|
||||
oldClrType: typeof(int),
|
||||
oldType: "integer",
|
||||
oldNullable: true);
|
||||
|
||||
migrationBuilder.AddForeignKey(
|
||||
name: "FK_ArtifactFilePaths_ArtifactEntries_ParentArtifactEntryId",
|
||||
table: "ArtifactFilePaths",
|
||||
column: "ParentArtifactEntryId",
|
||||
principalTable: "ArtifactEntries",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,77 +0,0 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class AddStorageLocations : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropColumn(
|
||||
name: "StorageLocation",
|
||||
table: "ArtifactEntries");
|
||||
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "StorageLocationId",
|
||||
table: "ArtifactEntries",
|
||||
type: "integer",
|
||||
nullable: false,
|
||||
defaultValue: 0);
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "ArtifactStorageLocations",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "integer", nullable: false)
|
||||
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
||||
Location = table.Column<string>(type: "text", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_ArtifactStorageLocations", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ArtifactEntries_StorageLocationId",
|
||||
table: "ArtifactEntries",
|
||||
column: "StorageLocationId");
|
||||
|
||||
migrationBuilder.AddForeignKey(
|
||||
name: "FK_ArtifactEntries_ArtifactStorageLocations_StorageLocationId",
|
||||
table: "ArtifactEntries",
|
||||
column: "StorageLocationId",
|
||||
principalTable: "ArtifactStorageLocations",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropForeignKey(
|
||||
name: "FK_ArtifactEntries_ArtifactStorageLocations_StorageLocationId",
|
||||
table: "ArtifactEntries");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "ArtifactStorageLocations");
|
||||
|
||||
migrationBuilder.DropIndex(
|
||||
name: "IX_ArtifactEntries_StorageLocationId",
|
||||
table: "ArtifactEntries");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "StorageLocationId",
|
||||
table: "ArtifactEntries");
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "StorageLocation",
|
||||
table: "ArtifactEntries",
|
||||
type: "text",
|
||||
nullable: true);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,105 +0,0 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class FixTypo : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropForeignKey(
|
||||
name: "FK_ArtifactAssocaitedNames_ArtifactEntries_ParentArtifactEntry~",
|
||||
table: "ArtifactAssocaitedNames");
|
||||
|
||||
migrationBuilder.DropPrimaryKey(
|
||||
name: "PK_ArtifactAssocaitedNames",
|
||||
table: "ArtifactAssocaitedNames");
|
||||
|
||||
migrationBuilder.RenameTable(
|
||||
name: "ArtifactAssocaitedNames",
|
||||
newName: "ArtifactAssociatedNames");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "IsPublicallyVisible",
|
||||
table: "ArtifactEntries",
|
||||
newName: "IsPubliclyVisible");
|
||||
|
||||
migrationBuilder.RenameIndex(
|
||||
name: "IX_ArtifactAssocaitedNames_ParentArtifactEntryId",
|
||||
table: "ArtifactAssociatedNames",
|
||||
newName: "IX_ArtifactAssociatedNames_ParentArtifactEntryId");
|
||||
|
||||
migrationBuilder.AddPrimaryKey(
|
||||
name: "PK_ArtifactAssociatedNames",
|
||||
table: "ArtifactAssociatedNames",
|
||||
column: "Id");
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "ArtifactTypes",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "integer", nullable: false)
|
||||
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
||||
Name = table.Column<string>(type: "text", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_ArtifactTypes", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.AddForeignKey(
|
||||
name: "FK_ArtifactAssociatedNames_ArtifactEntries_ParentArtifactEntry~",
|
||||
table: "ArtifactAssociatedNames",
|
||||
column: "ParentArtifactEntryId",
|
||||
principalTable: "ArtifactEntries",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropForeignKey(
|
||||
name: "FK_ArtifactAssociatedNames_ArtifactEntries_ParentArtifactEntry~",
|
||||
table: "ArtifactAssociatedNames");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "ArtifactTypes");
|
||||
|
||||
migrationBuilder.DropPrimaryKey(
|
||||
name: "PK_ArtifactAssociatedNames",
|
||||
table: "ArtifactAssociatedNames");
|
||||
|
||||
migrationBuilder.RenameTable(
|
||||
name: "ArtifactAssociatedNames",
|
||||
newName: "ArtifactAssocaitedNames");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "IsPubliclyVisible",
|
||||
table: "ArtifactEntries",
|
||||
newName: "IsPublicallyVisible");
|
||||
|
||||
migrationBuilder.RenameIndex(
|
||||
name: "IX_ArtifactAssociatedNames_ParentArtifactEntryId",
|
||||
table: "ArtifactAssocaitedNames",
|
||||
newName: "IX_ArtifactAssocaitedNames_ParentArtifactEntryId");
|
||||
|
||||
migrationBuilder.AddPrimaryKey(
|
||||
name: "PK_ArtifactAssocaitedNames",
|
||||
table: "ArtifactAssocaitedNames",
|
||||
column: "Id");
|
||||
|
||||
migrationBuilder.AddForeignKey(
|
||||
name: "FK_ArtifactAssocaitedNames_ArtifactEntries_ParentArtifactEntry~",
|
||||
table: "ArtifactAssocaitedNames",
|
||||
column: "ParentArtifactEntryId",
|
||||
principalTable: "ArtifactEntries",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -12,9 +12,9 @@ using OpenArchival.DataAccess;
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ArchiveDbContext))]
|
||||
[Migration("20250807180849_FixTypo")]
|
||||
partial class FixTypo
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250812183602_InitalCreate")]
|
||||
partial class InitalCreate
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
@@ -243,7 +243,33 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("OriginalName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int?>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Path")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
@@ -272,32 +298,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("OriginalName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int?>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Path")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
@@ -385,7 +385,16 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
@@ -396,15 +405,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
@@ -8,7 +8,7 @@ using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class AllModels : Migration
|
||||
public partial class InitalCreate : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
@@ -43,6 +43,32 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
table.PrimaryKey("PK_ArtifactDefects", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "ArtifactStorageLocations",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "integer", nullable: false)
|
||||
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
||||
Location = table.Column<string>(type: "text", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_ArtifactStorageLocations", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "ArtifactTypes",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "integer", nullable: false)
|
||||
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
||||
Name = table.Column<string>(type: "text", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_ArtifactTypes", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "ArtifactGroupings",
|
||||
columns: table => new
|
||||
@@ -76,14 +102,14 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
ArtifactNumber = table.Column<string>(type: "text", nullable: true),
|
||||
Title = table.Column<string>(type: "text", nullable: false),
|
||||
Description = table.Column<string>(type: "text", nullable: true),
|
||||
StorageLocation = table.Column<string>(type: "text", nullable: true),
|
||||
StorageLocationId = table.Column<int>(type: "integer", nullable: false),
|
||||
ListedNames = table.Column<List<string>>(type: "text[]", nullable: true),
|
||||
AssociatedDates = table.Column<List<DateTime>>(type: "timestamp with time zone[]", nullable: true),
|
||||
Defects = table.Column<List<string>>(type: "text[]", nullable: true),
|
||||
Links = table.Column<List<string>>(type: "text[]", nullable: true),
|
||||
ParentArtifactGroupingId = table.Column<int>(type: "integer", nullable: true),
|
||||
FileTextContent = table.Column<string>(type: "text", nullable: true),
|
||||
IsPublicallyVisible = table.Column<bool>(type: "boolean", nullable: false)
|
||||
IsPubliclyVisible = table.Column<bool>(type: "boolean", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
@@ -93,6 +119,12 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
column: x => x.ParentArtifactGroupingId,
|
||||
principalTable: "ArtifactGroupings",
|
||||
principalColumn: "Id");
|
||||
table.ForeignKey(
|
||||
name: "FK_ArtifactEntries_ArtifactStorageLocations_StorageLocationId",
|
||||
column: x => x.StorageLocationId,
|
||||
principalTable: "ArtifactStorageLocations",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
@@ -139,7 +171,7 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "ArtifactAssocaitedNames",
|
||||
name: "ArtifactAssociatedNames",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "integer", nullable: false)
|
||||
@@ -151,9 +183,9 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_ArtifactAssocaitedNames", x => x.Id);
|
||||
table.PrimaryKey("PK_ArtifactAssociatedNames", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_ArtifactAssocaitedNames_ArtifactEntries_ParentArtifactEntry~",
|
||||
name: "FK_ArtifactAssociatedNames_ArtifactEntries_ParentArtifactEntry~",
|
||||
column: x => x.ParentArtifactEntryId,
|
||||
principalTable: "ArtifactEntries",
|
||||
principalColumn: "Id",
|
||||
@@ -166,7 +198,7 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
Id = table.Column<int>(type: "integer", nullable: false)
|
||||
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
||||
ParentArtifactEntryId = table.Column<int>(type: "integer", nullable: false),
|
||||
ParentArtifactEntryId = table.Column<int>(type: "integer", nullable: true),
|
||||
OriginalName = table.Column<string>(type: "text", nullable: false),
|
||||
Path = table.Column<string>(type: "text", nullable: false)
|
||||
},
|
||||
@@ -177,8 +209,7 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
name: "FK_ArtifactFilePaths_ArtifactEntries_ParentArtifactEntryId",
|
||||
column: x => x.ParentArtifactEntryId,
|
||||
principalTable: "ArtifactEntries",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
principalColumn: "Id");
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
@@ -206,8 +237,8 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ArtifactAssocaitedNames_ParentArtifactEntryId",
|
||||
table: "ArtifactAssocaitedNames",
|
||||
name: "IX_ArtifactAssociatedNames_ParentArtifactEntryId",
|
||||
table: "ArtifactAssociatedNames",
|
||||
column: "ParentArtifactEntryId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
@@ -215,6 +246,11 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
table: "ArtifactEntries",
|
||||
column: "ParentArtifactGroupingId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ArtifactEntries_StorageLocationId",
|
||||
table: "ArtifactEntries",
|
||||
column: "StorageLocationId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ArtifactEntryArtifactEntryTag_TagsId",
|
||||
table: "ArtifactEntryArtifactEntryTag",
|
||||
@@ -245,7 +281,7 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "ArtifactAssocaitedNames");
|
||||
name: "ArtifactAssociatedNames");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "ArtifactDefects");
|
||||
@@ -256,6 +292,9 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
migrationBuilder.DropTable(
|
||||
name: "ArtifactFilePaths");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "ArtifactTypes");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "RelatedGroupings");
|
||||
|
||||
@@ -268,6 +307,9 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
migrationBuilder.DropTable(
|
||||
name: "ArtifactGroupings");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "ArtifactStorageLocations");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "ArchiveCategory");
|
||||
}
|
||||
422
OpenArchival.DataAccess/Migrations/20250813011348_ChangedArtifactRelationships.Designer.cs
generated
Normal file
422
OpenArchival.DataAccess/Migrations/20250813011348_ChangedArtifactRelationships.Designer.cs
generated
Normal file
@@ -0,0 +1,422 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
using OpenArchival.DataAccess;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250813011348_ChangedArtifactRelationships")]
|
||||
partial class ChangedArtifactRelationships
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "9.0.7")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("RelatedById")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedToId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("RelatedById", "RelatedToId");
|
||||
|
||||
b.HasIndex("RelatedToId");
|
||||
|
||||
b.ToTable("ArtifactRelationships", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("TagsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactEntriesId", "TagsId");
|
||||
|
||||
b.HasIndex("TagsId");
|
||||
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldDescriptions")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldNames")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("FieldSeparator")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArchiveCategory");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactDefects");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ArtifactNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<DateTime>>("AssociatedDates")
|
||||
.HasColumnType("timestamp with time zone[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Defects")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPubliclyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("ListedNames")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<int?>("ParentArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("StorageLocationId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactGroupingId");
|
||||
|
||||
b.HasIndex("StorageLocationId");
|
||||
|
||||
b.ToTable("ArtifactEntries");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int?>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactGroupingId");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("CategoryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Type")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("CategoryId");
|
||||
|
||||
b.ToTable("ArtifactGroupings");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactStorageLocation", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactStorageLocations");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("OriginalName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int?>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Path")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedById")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedToId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactEntriesId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntryTag", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("TagsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ParentArtifactGrouping")
|
||||
.WithMany("ChildArtifactEntries")
|
||||
.HasForeignKey("ParentArtifactGroupingId");
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactStorageLocation", "StorageLocation")
|
||||
.WithMany()
|
||||
.HasForeignKey("StorageLocationId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactGrouping");
|
||||
|
||||
b.Navigation("StorageLocation");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany("ChildTags")
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArchiveCategory", "Category")
|
||||
.WithMany()
|
||||
.HasForeignKey("CategoryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.OwnsOne("OpenArchival.DataAccess.IdentifierFields", "IdentifierFields", b1 =>
|
||||
{
|
||||
b1.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b1.PrimitiveCollection<List<string>>("Values")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b1.HasKey("ArtifactGroupingId");
|
||||
|
||||
b1.ToTable("ArtifactGroupings");
|
||||
|
||||
b1.ToJson("IdentifierFields");
|
||||
|
||||
b1.WithOwner()
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
b.Navigation("Category");
|
||||
|
||||
b.Navigation("IdentifierFields")
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
|
||||
b.Navigation("ChildTags");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class ChangedArtifactRelationships : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "RelatedGroupings");
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "ArtifactRelationships",
|
||||
columns: table => new
|
||||
{
|
||||
RelatedById = table.Column<int>(type: "integer", nullable: false),
|
||||
RelatedToId = table.Column<int>(type: "integer", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_ArtifactRelationships", x => new { x.RelatedById, x.RelatedToId });
|
||||
table.ForeignKey(
|
||||
name: "FK_ArtifactRelationships_ArtifactEntries_RelatedById",
|
||||
column: x => x.RelatedById,
|
||||
principalTable: "ArtifactEntries",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_ArtifactRelationships_ArtifactEntries_RelatedToId",
|
||||
column: x => x.RelatedToId,
|
||||
principalTable: "ArtifactEntries",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ArtifactRelationships_RelatedToId",
|
||||
table: "ArtifactRelationships",
|
||||
column: "RelatedToId");
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "ArtifactRelationships");
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "RelatedGroupings",
|
||||
columns: table => new
|
||||
{
|
||||
ArtifactGroupingId = table.Column<int>(type: "integer", nullable: false),
|
||||
RelatedArtifactGroupingsId = table.Column<int>(type: "integer", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_RelatedGroupings", x => new { x.ArtifactGroupingId, x.RelatedArtifactGroupingsId });
|
||||
table.ForeignKey(
|
||||
name: "FK_RelatedGroupings_ArtifactGroupings_ArtifactGroupingId",
|
||||
column: x => x.ArtifactGroupingId,
|
||||
principalTable: "ArtifactGroupings",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_RelatedGroupings_ArtifactGroupings_RelatedArtifactGroupings~",
|
||||
column: x => x.RelatedArtifactGroupingsId,
|
||||
principalTable: "ArtifactGroupings",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_RelatedGroupings_RelatedArtifactGroupingsId",
|
||||
table: "RelatedGroupings",
|
||||
column: "RelatedArtifactGroupingsId");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -12,9 +12,9 @@ using OpenArchival.DataAccess;
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ArchiveDbContext))]
|
||||
[Migration("20250806174205_NullableParentArtifactEntryId")]
|
||||
partial class NullableParentArtifactEntryId
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250813015341_AutoGenKeysEnabled")]
|
||||
partial class AutoGenKeysEnabled
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
@@ -26,6 +26,21 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("RelatedById")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedToId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("RelatedById", "RelatedToId");
|
||||
|
||||
b.HasIndex("RelatedToId");
|
||||
|
||||
b.ToTable("ArtifactRelationships", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
@@ -41,21 +56,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactGroupingArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedArtifactGroupingsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactGroupingId", "RelatedArtifactGroupingsId");
|
||||
|
||||
b.HasIndex("RelatedArtifactGroupingsId");
|
||||
|
||||
b.ToTable("RelatedGroupings", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
@@ -128,7 +128,7 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
b.Property<bool>("IsPubliclyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
@@ -140,8 +140,8 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.Property<int?>("ParentArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("StorageLocation")
|
||||
.HasColumnType("text");
|
||||
b.Property<int>("StorageLocationId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
@@ -151,6 +151,8 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
b.HasIndex("ParentArtifactGroupingId");
|
||||
|
||||
b.HasIndex("StorageLocationId");
|
||||
|
||||
b.ToTable("ArtifactEntries");
|
||||
});
|
||||
|
||||
@@ -207,7 +209,7 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactGroupings");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactStorageLocation", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
@@ -215,25 +217,30 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
b.ToTable("ArtifactStorageLocations");
|
||||
});
|
||||
|
||||
b.ToTable("ArtifactAssocaitedNames");
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
@@ -262,6 +269,50 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedById")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedToId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
@@ -277,28 +328,21 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactGroupingArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactGroupingId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedArtifactGroupingsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ParentArtifactGrouping")
|
||||
.WithMany("ChildArtifactEntries")
|
||||
.HasForeignKey("ParentArtifactGroupingId");
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactStorageLocation", "StorageLocation")
|
||||
.WithMany()
|
||||
.HasForeignKey("StorageLocationId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactGrouping");
|
||||
|
||||
b.Navigation("StorageLocation");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
@@ -341,7 +385,16 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
@@ -352,15 +405,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
@@ -5,7 +5,7 @@
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class AllModelsFixedComparer : Migration
|
||||
public partial class AutoGenKeysEnabled : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
422
OpenArchival.DataAccess/Migrations/20250813023107_ChangedArtifactRelationshipsNew.Designer.cs
generated
Normal file
422
OpenArchival.DataAccess/Migrations/20250813023107_ChangedArtifactRelationshipsNew.Designer.cs
generated
Normal file
@@ -0,0 +1,422 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
using OpenArchival.DataAccess;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250813023107_ChangedArtifactRelationshipsNew")]
|
||||
partial class ChangedArtifactRelationshipsNew
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "9.0.7")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("RelatedById")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedToId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("RelatedById", "RelatedToId");
|
||||
|
||||
b.HasIndex("RelatedToId");
|
||||
|
||||
b.ToTable("ArtifactRelationships", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("TagsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactEntriesId", "TagsId");
|
||||
|
||||
b.HasIndex("TagsId");
|
||||
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldDescriptions")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldNames")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("FieldSeparator")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArchiveCategory");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactDefects");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ArtifactNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<DateTime>>("AssociatedDates")
|
||||
.HasColumnType("timestamp with time zone[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Defects")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPubliclyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("ListedNames")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<int?>("ParentArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("StorageLocationId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactGroupingId");
|
||||
|
||||
b.HasIndex("StorageLocationId");
|
||||
|
||||
b.ToTable("ArtifactEntries");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int?>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactGroupingId");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("CategoryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Type")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("CategoryId");
|
||||
|
||||
b.ToTable("ArtifactGroupings");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactStorageLocation", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactStorageLocations");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("OriginalName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int?>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Path")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedById")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedToId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactEntriesId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntryTag", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("TagsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ParentArtifactGrouping")
|
||||
.WithMany("ChildArtifactEntries")
|
||||
.HasForeignKey("ParentArtifactGroupingId");
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactStorageLocation", "StorageLocation")
|
||||
.WithMany()
|
||||
.HasForeignKey("StorageLocationId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactGrouping");
|
||||
|
||||
b.Navigation("StorageLocation");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany("ChildTags")
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArchiveCategory", "Category")
|
||||
.WithMany()
|
||||
.HasForeignKey("CategoryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.OwnsOne("OpenArchival.DataAccess.IdentifierFields", "IdentifierFields", b1 =>
|
||||
{
|
||||
b1.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b1.PrimitiveCollection<List<string>>("Values")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b1.HasKey("ArtifactGroupingId");
|
||||
|
||||
b1.ToTable("ArtifactGroupings");
|
||||
|
||||
b1.ToJson("IdentifierFields");
|
||||
|
||||
b1.WithOwner()
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
b.Navigation("Category");
|
||||
|
||||
b.Navigation("IdentifierFields")
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
|
||||
b.Navigation("ChildTags");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class ChangedArtifactRelationshipsNew : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -12,9 +12,9 @@ using OpenArchival.DataAccess;
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ArchiveDbContext))]
|
||||
[Migration("20250807132100_FixType")]
|
||||
partial class FixType
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250813024912_RemovedDuplicateCategories")]
|
||||
partial class RemovedDuplicateCategories
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
@@ -26,6 +26,21 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("RelatedById")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedToId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("RelatedById", "RelatedToId");
|
||||
|
||||
b.HasIndex("RelatedToId");
|
||||
|
||||
b.ToTable("ArtifactRelationships", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
@@ -41,21 +56,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactGroupingArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedArtifactGroupingsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactGroupingId", "RelatedArtifactGroupingsId");
|
||||
|
||||
b.HasIndex("RelatedArtifactGroupingsId");
|
||||
|
||||
b.ToTable("RelatedGroupings", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
@@ -128,7 +128,7 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
b.Property<bool>("IsPubliclyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
@@ -164,17 +164,12 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int?>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactGroupingId");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
@@ -226,7 +221,7 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactStorageLocations");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
@@ -234,25 +229,13 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssocaitedNames");
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
@@ -281,6 +264,50 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedById")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedToId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
@@ -296,21 +323,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactGroupingArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactGroupingId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedArtifactGroupingsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ParentArtifactGrouping")
|
||||
@@ -328,13 +340,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.Navigation("StorageLocation");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany("ChildTags")
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArchiveCategory", "Category")
|
||||
@@ -368,7 +373,16 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
@@ -379,15 +393,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
@@ -396,8 +401,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
|
||||
b.Navigation("ChildTags");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class RemovedDuplicateCategories : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropForeignKey(
|
||||
name: "FK_ArtifactEntryTags_ArtifactGroupings_ArtifactGroupingId",
|
||||
table: "ArtifactEntryTags");
|
||||
|
||||
migrationBuilder.DropIndex(
|
||||
name: "IX_ArtifactEntryTags_ArtifactGroupingId",
|
||||
table: "ArtifactEntryTags");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "ArtifactGroupingId",
|
||||
table: "ArtifactEntryTags");
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "ArtifactGroupingId",
|
||||
table: "ArtifactEntryTags",
|
||||
type: "integer",
|
||||
nullable: true);
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ArtifactEntryTags_ArtifactGroupingId",
|
||||
table: "ArtifactEntryTags",
|
||||
column: "ArtifactGroupingId");
|
||||
|
||||
migrationBuilder.AddForeignKey(
|
||||
name: "FK_ArtifactEntryTags_ArtifactGroupings_ArtifactGroupingId",
|
||||
table: "ArtifactEntryTags",
|
||||
column: "ArtifactGroupingId",
|
||||
principalTable: "ArtifactGroupings",
|
||||
principalColumn: "Id");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -12,9 +12,9 @@ using OpenArchival.DataAccess;
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ArchiveDbContext))]
|
||||
[Migration("20250807131954_AddStorageLocations")]
|
||||
partial class AddStorageLocations
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250813025148_RemovedDuplicateCategoriesNew")]
|
||||
partial class RemovedDuplicateCategoriesNew
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
@@ -26,6 +26,21 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("RelatedById")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedToId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("RelatedById", "RelatedToId");
|
||||
|
||||
b.HasIndex("RelatedToId");
|
||||
|
||||
b.ToTable("ArtifactRelationships", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
@@ -41,21 +56,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactGroupingArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedArtifactGroupingsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactGroupingId", "RelatedArtifactGroupingsId");
|
||||
|
||||
b.HasIndex("RelatedArtifactGroupingsId");
|
||||
|
||||
b.ToTable("RelatedGroupings", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
@@ -85,7 +85,7 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArchiveCategory");
|
||||
b.ToTable("ArchiveCategories");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
@@ -128,7 +128,7 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
b.Property<bool>("IsPubliclyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
@@ -164,17 +164,12 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int?>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactGroupingId");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
@@ -226,7 +221,7 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactStorageLocations");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
@@ -234,25 +229,13 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssocaitedNames");
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
@@ -281,6 +264,50 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedById")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedToId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
@@ -296,21 +323,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactGroupingArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactGroupingId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedArtifactGroupingsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ParentArtifactGrouping")
|
||||
@@ -328,13 +340,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.Navigation("StorageLocation");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany("ChildTags")
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArchiveCategory", "Category")
|
||||
@@ -368,7 +373,16 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
@@ -379,15 +393,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
@@ -396,8 +401,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
|
||||
b.Navigation("ChildTags");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class RemovedDuplicateCategoriesNew : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropForeignKey(
|
||||
name: "FK_ArtifactGroupings_ArchiveCategory_CategoryId",
|
||||
table: "ArtifactGroupings");
|
||||
|
||||
migrationBuilder.DropPrimaryKey(
|
||||
name: "PK_ArchiveCategory",
|
||||
table: "ArchiveCategory");
|
||||
|
||||
migrationBuilder.RenameTable(
|
||||
name: "ArchiveCategory",
|
||||
newName: "ArchiveCategories");
|
||||
|
||||
migrationBuilder.AddPrimaryKey(
|
||||
name: "PK_ArchiveCategories",
|
||||
table: "ArchiveCategories",
|
||||
column: "Id");
|
||||
|
||||
migrationBuilder.AddForeignKey(
|
||||
name: "FK_ArtifactGroupings_ArchiveCategories_CategoryId",
|
||||
table: "ArtifactGroupings",
|
||||
column: "CategoryId",
|
||||
principalTable: "ArchiveCategories",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropForeignKey(
|
||||
name: "FK_ArtifactGroupings_ArchiveCategories_CategoryId",
|
||||
table: "ArtifactGroupings");
|
||||
|
||||
migrationBuilder.DropPrimaryKey(
|
||||
name: "PK_ArchiveCategories",
|
||||
table: "ArchiveCategories");
|
||||
|
||||
migrationBuilder.RenameTable(
|
||||
name: "ArchiveCategories",
|
||||
newName: "ArchiveCategory");
|
||||
|
||||
migrationBuilder.AddPrimaryKey(
|
||||
name: "PK_ArchiveCategory",
|
||||
table: "ArchiveCategory",
|
||||
column: "Id");
|
||||
|
||||
migrationBuilder.AddForeignKey(
|
||||
name: "FK_ArtifactGroupings_ArchiveCategory_CategoryId",
|
||||
table: "ArtifactGroupings",
|
||||
column: "CategoryId",
|
||||
principalTable: "ArchiveCategory",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
}
|
||||
}
|
||||
}
|
||||
659
OpenArchival.DataAccess/Migrations/20250813153226_AddAuthentication.Designer.cs
generated
Normal file
659
OpenArchival.DataAccess/Migrations/20250813153226_AddAuthentication.Designer.cs
generated
Normal file
@@ -0,0 +1,659 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
using OpenArchival.DataAccess;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250813153226_AddAuthentication")]
|
||||
partial class AddAuthentication
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "9.0.8")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("RelatedById")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedToId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("RelatedById", "RelatedToId");
|
||||
|
||||
b.HasIndex("RelatedToId");
|
||||
|
||||
b.ToTable("ArtifactRelationships", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("TagsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactEntriesId", "TagsId");
|
||||
|
||||
b.HasIndex("TagsId");
|
||||
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("RoleNameIndex");
|
||||
|
||||
b.ToTable("AspNetRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetRoleClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderKey")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderDisplayName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("LoginProvider", "ProviderKey");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserLogins", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "RoleId");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetUserRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "LoginProvider", "Name");
|
||||
|
||||
b.ToTable("AspNetUserTokens", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ApplicationUser", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("AccessFailedCount")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Email")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<bool>("EmailConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<bool>("LockoutEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<DateTimeOffset?>("LockoutEnd")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<string>("NormalizedEmail")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedUserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("PasswordHash")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PermissionLevel")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PhoneNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("PhoneNumberConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("SecurityStamp")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("TwoFactorEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("UserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedEmail")
|
||||
.HasDatabaseName("EmailIndex");
|
||||
|
||||
b.HasIndex("NormalizedUserName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("UserNameIndex");
|
||||
|
||||
b.ToTable("AspNetUsers", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldDescriptions")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldNames")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("FieldSeparator")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArchiveCategories");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactDefects");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ArtifactNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<DateTime>>("AssociatedDates")
|
||||
.HasColumnType("timestamp with time zone[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Defects")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPubliclyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("ListedNames")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<int?>("ParentArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("StorageLocationId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactGroupingId");
|
||||
|
||||
b.HasIndex("StorageLocationId");
|
||||
|
||||
b.ToTable("ArtifactEntries");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("CategoryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Type")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("CategoryId");
|
||||
|
||||
b.ToTable("ArtifactGroupings");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactStorageLocation", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactStorageLocations");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("OriginalName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int?>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Path")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedById")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedToId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactEntriesId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntryTag", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("TagsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ParentArtifactGrouping")
|
||||
.WithMany("ChildArtifactEntries")
|
||||
.HasForeignKey("ParentArtifactGroupingId");
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactStorageLocation", "StorageLocation")
|
||||
.WithMany()
|
||||
.HasForeignKey("StorageLocationId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactGrouping");
|
||||
|
||||
b.Navigation("StorageLocation");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArchiveCategory", "Category")
|
||||
.WithMany()
|
||||
.HasForeignKey("CategoryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.OwnsOne("OpenArchival.DataAccess.IdentifierFields", "IdentifierFields", b1 =>
|
||||
{
|
||||
b1.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b1.PrimitiveCollection<List<string>>("Values")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b1.HasKey("ArtifactGroupingId");
|
||||
|
||||
b1.ToTable("ArtifactGroupings");
|
||||
|
||||
b1.ToJson("IdentifierFields");
|
||||
|
||||
b1.WithOwner()
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
b.Navigation("Category");
|
||||
|
||||
b.Navigation("IdentifierFields")
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,224 @@
|
||||
using System;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class AddAuthentication : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetRoles",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<string>(type: "text", nullable: false),
|
||||
Name = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: true),
|
||||
NormalizedName = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: true),
|
||||
ConcurrencyStamp = table.Column<string>(type: "text", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetRoles", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetUsers",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<string>(type: "text", nullable: false),
|
||||
PermissionLevel = table.Column<string>(type: "text", nullable: false),
|
||||
UserName = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: true),
|
||||
NormalizedUserName = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: true),
|
||||
Email = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: true),
|
||||
NormalizedEmail = table.Column<string>(type: "character varying(256)", maxLength: 256, nullable: true),
|
||||
EmailConfirmed = table.Column<bool>(type: "boolean", nullable: false),
|
||||
PasswordHash = table.Column<string>(type: "text", nullable: true),
|
||||
SecurityStamp = table.Column<string>(type: "text", nullable: true),
|
||||
ConcurrencyStamp = table.Column<string>(type: "text", nullable: true),
|
||||
PhoneNumber = table.Column<string>(type: "text", nullable: true),
|
||||
PhoneNumberConfirmed = table.Column<bool>(type: "boolean", nullable: false),
|
||||
TwoFactorEnabled = table.Column<bool>(type: "boolean", nullable: false),
|
||||
LockoutEnd = table.Column<DateTimeOffset>(type: "timestamp with time zone", nullable: true),
|
||||
LockoutEnabled = table.Column<bool>(type: "boolean", nullable: false),
|
||||
AccessFailedCount = table.Column<int>(type: "integer", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetUsers", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetRoleClaims",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "integer", nullable: false)
|
||||
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
||||
RoleId = table.Column<string>(type: "text", nullable: false),
|
||||
ClaimType = table.Column<string>(type: "text", nullable: true),
|
||||
ClaimValue = table.Column<string>(type: "text", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetRoleClaims", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_AspNetRoleClaims_AspNetRoles_RoleId",
|
||||
column: x => x.RoleId,
|
||||
principalTable: "AspNetRoles",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetUserClaims",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "integer", nullable: false)
|
||||
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
||||
UserId = table.Column<string>(type: "text", nullable: false),
|
||||
ClaimType = table.Column<string>(type: "text", nullable: true),
|
||||
ClaimValue = table.Column<string>(type: "text", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetUserClaims", x => x.Id);
|
||||
table.ForeignKey(
|
||||
name: "FK_AspNetUserClaims_AspNetUsers_UserId",
|
||||
column: x => x.UserId,
|
||||
principalTable: "AspNetUsers",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetUserLogins",
|
||||
columns: table => new
|
||||
{
|
||||
LoginProvider = table.Column<string>(type: "text", nullable: false),
|
||||
ProviderKey = table.Column<string>(type: "text", nullable: false),
|
||||
ProviderDisplayName = table.Column<string>(type: "text", nullable: true),
|
||||
UserId = table.Column<string>(type: "text", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetUserLogins", x => new { x.LoginProvider, x.ProviderKey });
|
||||
table.ForeignKey(
|
||||
name: "FK_AspNetUserLogins_AspNetUsers_UserId",
|
||||
column: x => x.UserId,
|
||||
principalTable: "AspNetUsers",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetUserRoles",
|
||||
columns: table => new
|
||||
{
|
||||
UserId = table.Column<string>(type: "text", nullable: false),
|
||||
RoleId = table.Column<string>(type: "text", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetUserRoles", x => new { x.UserId, x.RoleId });
|
||||
table.ForeignKey(
|
||||
name: "FK_AspNetUserRoles_AspNetRoles_RoleId",
|
||||
column: x => x.RoleId,
|
||||
principalTable: "AspNetRoles",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
table.ForeignKey(
|
||||
name: "FK_AspNetUserRoles_AspNetUsers_UserId",
|
||||
column: x => x.UserId,
|
||||
principalTable: "AspNetUsers",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateTable(
|
||||
name: "AspNetUserTokens",
|
||||
columns: table => new
|
||||
{
|
||||
UserId = table.Column<string>(type: "text", nullable: false),
|
||||
LoginProvider = table.Column<string>(type: "text", nullable: false),
|
||||
Name = table.Column<string>(type: "text", nullable: false),
|
||||
Value = table.Column<string>(type: "text", nullable: true)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_AspNetUserTokens", x => new { x.UserId, x.LoginProvider, x.Name });
|
||||
table.ForeignKey(
|
||||
name: "FK_AspNetUserTokens_AspNetUsers_UserId",
|
||||
column: x => x.UserId,
|
||||
principalTable: "AspNetUsers",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
});
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_AspNetRoleClaims_RoleId",
|
||||
table: "AspNetRoleClaims",
|
||||
column: "RoleId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "RoleNameIndex",
|
||||
table: "AspNetRoles",
|
||||
column: "NormalizedName",
|
||||
unique: true);
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_AspNetUserClaims_UserId",
|
||||
table: "AspNetUserClaims",
|
||||
column: "UserId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_AspNetUserLogins_UserId",
|
||||
table: "AspNetUserLogins",
|
||||
column: "UserId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_AspNetUserRoles_RoleId",
|
||||
table: "AspNetUserRoles",
|
||||
column: "RoleId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "EmailIndex",
|
||||
table: "AspNetUsers",
|
||||
column: "NormalizedEmail");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "UserNameIndex",
|
||||
table: "AspNetUsers",
|
||||
column: "NormalizedUserName",
|
||||
unique: true);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetRoleClaims");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetUserClaims");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetUserLogins");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetUserRoles");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetUserTokens");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetRoles");
|
||||
|
||||
migrationBuilder.DropTable(
|
||||
name: "AspNetUsers");
|
||||
}
|
||||
}
|
||||
}
|
||||
659
OpenArchival.DataAccess/Migrations/20250828154443_AddedParentEntry.Designer.cs
generated
Normal file
659
OpenArchival.DataAccess/Migrations/20250828154443_AddedParentEntry.Designer.cs
generated
Normal file
@@ -0,0 +1,659 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
using OpenArchival.DataAccess;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250828154443_AddedParentEntry")]
|
||||
partial class AddedParentEntry
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "9.0.8")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("RelatedById")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedToId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("RelatedById", "RelatedToId");
|
||||
|
||||
b.HasIndex("RelatedToId");
|
||||
|
||||
b.ToTable("ArtifactRelationships", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("TagsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactEntriesId", "TagsId");
|
||||
|
||||
b.HasIndex("TagsId");
|
||||
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("RoleNameIndex");
|
||||
|
||||
b.ToTable("AspNetRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetRoleClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderKey")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderDisplayName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("LoginProvider", "ProviderKey");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserLogins", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "RoleId");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetUserRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "LoginProvider", "Name");
|
||||
|
||||
b.ToTable("AspNetUserTokens", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ApplicationUser", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("AccessFailedCount")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Email")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<bool>("EmailConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<bool>("LockoutEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<DateTimeOffset?>("LockoutEnd")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<string>("NormalizedEmail")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedUserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("PasswordHash")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PermissionLevel")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PhoneNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("PhoneNumberConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("SecurityStamp")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("TwoFactorEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("UserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedEmail")
|
||||
.HasDatabaseName("EmailIndex");
|
||||
|
||||
b.HasIndex("NormalizedUserName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("UserNameIndex");
|
||||
|
||||
b.ToTable("AspNetUsers", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldDescriptions")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldNames")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("FieldSeparator")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArchiveCategories");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactDefects");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ArtifactNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<DateTime>>("AssociatedDates")
|
||||
.HasColumnType("timestamp with time zone[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Defects")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPubliclyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("ListedNames")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<int?>("ParentArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("StorageLocationId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactGroupingId");
|
||||
|
||||
b.HasIndex("StorageLocationId");
|
||||
|
||||
b.ToTable("ArtifactEntries");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("CategoryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Type")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("CategoryId");
|
||||
|
||||
b.ToTable("ArtifactGroupings");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactStorageLocation", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactStorageLocations");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("OriginalName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int?>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Path")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedById")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedToId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactEntriesId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntryTag", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("TagsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ParentArtifactGrouping")
|
||||
.WithMany("ChildArtifactEntries")
|
||||
.HasForeignKey("ParentArtifactGroupingId");
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactStorageLocation", "StorageLocation")
|
||||
.WithMany()
|
||||
.HasForeignKey("StorageLocationId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactGrouping");
|
||||
|
||||
b.Navigation("StorageLocation");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArchiveCategory", "Category")
|
||||
.WithMany()
|
||||
.HasForeignKey("CategoryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.OwnsOne("OpenArchival.DataAccess.IdentifierFields", "IdentifierFields", b1 =>
|
||||
{
|
||||
b1.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b1.PrimitiveCollection<List<string>>("Values")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b1.HasKey("ArtifactGroupingId");
|
||||
|
||||
b1.ToTable("ArtifactGroupings");
|
||||
|
||||
b1.ToJson("IdentifierFields");
|
||||
|
||||
b1.WithOwner()
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
b.Navigation("Category");
|
||||
|
||||
b.Navigation("IdentifierFields")
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class AddedParentEntry : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
672
OpenArchival.DataAccess/Migrations/20250828173516_AddedCascade.Designer.cs
generated
Normal file
672
OpenArchival.DataAccess/Migrations/20250828173516_AddedCascade.Designer.cs
generated
Normal file
@@ -0,0 +1,672 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
using OpenArchival.DataAccess;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250828173516_AddedCascade")]
|
||||
partial class AddedCascade
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "9.0.8")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("RelatedById")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedToId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("RelatedById", "RelatedToId");
|
||||
|
||||
b.HasIndex("RelatedToId");
|
||||
|
||||
b.ToTable("ArtifactRelationships", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("TagsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactEntriesId", "TagsId");
|
||||
|
||||
b.HasIndex("TagsId");
|
||||
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("RoleNameIndex");
|
||||
|
||||
b.ToTable("AspNetRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetRoleClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderKey")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderDisplayName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("LoginProvider", "ProviderKey");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserLogins", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "RoleId");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetUserRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "LoginProvider", "Name");
|
||||
|
||||
b.ToTable("AspNetUserTokens", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ApplicationUser", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("AccessFailedCount")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Email")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<bool>("EmailConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<bool>("LockoutEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<DateTimeOffset?>("LockoutEnd")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<string>("NormalizedEmail")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedUserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("PasswordHash")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PermissionLevel")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PhoneNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("PhoneNumberConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("SecurityStamp")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("TwoFactorEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("UserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedEmail")
|
||||
.HasDatabaseName("EmailIndex");
|
||||
|
||||
b.HasIndex("NormalizedUserName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("UserNameIndex");
|
||||
|
||||
b.ToTable("AspNetUsers", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldDescriptions")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldNames")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("FieldSeparator")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArchiveCategories");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactDefects");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ArtifactNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<DateTime>>("AssociatedDates")
|
||||
.HasColumnType("timestamp with time zone[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Defects")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPubliclyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("ListedNames")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<int?>("ParentArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("StorageLocationId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactGroupingId");
|
||||
|
||||
b.HasIndex("ParentArtifactGroupingId");
|
||||
|
||||
b.HasIndex("StorageLocationId");
|
||||
|
||||
b.ToTable("ArtifactEntries");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("CategoryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Type")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("CategoryId");
|
||||
|
||||
b.ToTable("ArtifactGroupings");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactStorageLocation", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactStorageLocations");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("OriginalName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int?>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Path")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedById")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedToId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactEntriesId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntryTag", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("TagsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ArtifactGrouping")
|
||||
.WithMany("ChildArtifactEntries")
|
||||
.HasForeignKey("ArtifactGroupingId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ParentArtifactGrouping")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactGroupingId");
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactStorageLocation", "StorageLocation")
|
||||
.WithMany()
|
||||
.HasForeignKey("StorageLocationId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ArtifactGrouping");
|
||||
|
||||
b.Navigation("ParentArtifactGrouping");
|
||||
|
||||
b.Navigation("StorageLocation");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArchiveCategory", "Category")
|
||||
.WithMany()
|
||||
.HasForeignKey("CategoryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.OwnsOne("OpenArchival.DataAccess.IdentifierFields", "IdentifierFields", b1 =>
|
||||
{
|
||||
b1.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b1.PrimitiveCollection<List<string>>("Values")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b1.HasKey("ArtifactGroupingId");
|
||||
|
||||
b1.ToTable("ArtifactGroupings");
|
||||
|
||||
b1.ToJson("IdentifierFields");
|
||||
|
||||
b1.WithOwner()
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
b.Navigation("Category");
|
||||
|
||||
b.Navigation("IdentifierFields")
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class AddedCascade : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "ArtifactGroupingId",
|
||||
table: "ArtifactEntries",
|
||||
type: "integer",
|
||||
nullable: false,
|
||||
defaultValue: 0);
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ArtifactEntries_ArtifactGroupingId",
|
||||
table: "ArtifactEntries",
|
||||
column: "ArtifactGroupingId");
|
||||
|
||||
migrationBuilder.AddForeignKey(
|
||||
name: "FK_ArtifactEntries_ArtifactGroupings_ArtifactGroupingId",
|
||||
table: "ArtifactEntries",
|
||||
column: "ArtifactGroupingId",
|
||||
principalTable: "ArtifactGroupings",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropForeignKey(
|
||||
name: "FK_ArtifactEntries_ArtifactGroupings_ArtifactGroupingId",
|
||||
table: "ArtifactEntries");
|
||||
|
||||
migrationBuilder.DropIndex(
|
||||
name: "IX_ArtifactEntries_ArtifactGroupingId",
|
||||
table: "ArtifactEntries");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "ArtifactGroupingId",
|
||||
table: "ArtifactEntries");
|
||||
}
|
||||
}
|
||||
}
|
||||
672
OpenArchival.DataAccess/Migrations/20250829171154_UniqueRowsSet.Designer.cs
generated
Normal file
672
OpenArchival.DataAccess/Migrations/20250829171154_UniqueRowsSet.Designer.cs
generated
Normal file
@@ -0,0 +1,672 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
using OpenArchival.DataAccess;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250829171154_UniqueRowsSet")]
|
||||
partial class UniqueRowsSet
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "9.0.8")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("RelatedById")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedToId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("RelatedById", "RelatedToId");
|
||||
|
||||
b.HasIndex("RelatedToId");
|
||||
|
||||
b.ToTable("ArtifactRelationships", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("TagsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactEntriesId", "TagsId");
|
||||
|
||||
b.HasIndex("TagsId");
|
||||
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("RoleNameIndex");
|
||||
|
||||
b.ToTable("AspNetRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetRoleClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderKey")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderDisplayName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("LoginProvider", "ProviderKey");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserLogins", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "RoleId");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetUserRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "LoginProvider", "Name");
|
||||
|
||||
b.ToTable("AspNetUserTokens", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ApplicationUser", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("AccessFailedCount")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Email")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<bool>("EmailConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<bool>("LockoutEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<DateTimeOffset?>("LockoutEnd")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<string>("NormalizedEmail")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedUserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("PasswordHash")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PermissionLevel")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PhoneNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("PhoneNumberConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("SecurityStamp")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("TwoFactorEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("UserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedEmail")
|
||||
.HasDatabaseName("EmailIndex");
|
||||
|
||||
b.HasIndex("NormalizedUserName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("UserNameIndex");
|
||||
|
||||
b.ToTable("AspNetUsers", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldDescriptions")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldNames")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("FieldSeparator")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArchiveCategories");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactDefects");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ArtifactNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<DateTime>>("AssociatedDates")
|
||||
.HasColumnType("timestamp with time zone[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Defects")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPubliclyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("ListedNames")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<int?>("ParentArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("StorageLocationId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactGroupingId");
|
||||
|
||||
b.HasIndex("ParentArtifactGroupingId");
|
||||
|
||||
b.HasIndex("StorageLocationId");
|
||||
|
||||
b.ToTable("ArtifactEntries");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("CategoryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Type")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("CategoryId");
|
||||
|
||||
b.ToTable("ArtifactGroupings");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactStorageLocation", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactStorageLocations");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("OriginalName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int?>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Path")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedById")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedToId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactEntriesId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntryTag", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("TagsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ArtifactGrouping")
|
||||
.WithMany("ChildArtifactEntries")
|
||||
.HasForeignKey("ArtifactGroupingId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ParentArtifactGrouping")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactGroupingId");
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactStorageLocation", "StorageLocation")
|
||||
.WithMany()
|
||||
.HasForeignKey("StorageLocationId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ArtifactGrouping");
|
||||
|
||||
b.Navigation("ParentArtifactGrouping");
|
||||
|
||||
b.Navigation("StorageLocation");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArchiveCategory", "Category")
|
||||
.WithMany()
|
||||
.HasForeignKey("CategoryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.OwnsOne("OpenArchival.DataAccess.IdentifierFields", "IdentifierFields", b1 =>
|
||||
{
|
||||
b1.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b1.PrimitiveCollection<List<string>>("Values")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b1.HasKey("ArtifactGroupingId");
|
||||
|
||||
b1.ToTable("ArtifactGroupings");
|
||||
|
||||
b1.ToJson("IdentifierFields");
|
||||
|
||||
b1.WithOwner()
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
b.Navigation("Category");
|
||||
|
||||
b.Navigation("IdentifierFields")
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -5,7 +5,7 @@
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class FixType : Migration
|
||||
public partial class UniqueRowsSet : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
672
OpenArchival.DataAccess/Migrations/20250829182114_FixedCascadeDelete.Designer.cs
generated
Normal file
672
OpenArchival.DataAccess/Migrations/20250829182114_FixedCascadeDelete.Designer.cs
generated
Normal file
@@ -0,0 +1,672 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
using OpenArchival.DataAccess;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250829182114_FixedCascadeDelete")]
|
||||
partial class FixedCascadeDelete
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "9.0.8")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("RelatedById")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedToId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("RelatedById", "RelatedToId");
|
||||
|
||||
b.HasIndex("RelatedToId");
|
||||
|
||||
b.ToTable("ArtifactRelationships", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("TagsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactEntriesId", "TagsId");
|
||||
|
||||
b.HasIndex("TagsId");
|
||||
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("RoleNameIndex");
|
||||
|
||||
b.ToTable("AspNetRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetRoleClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderKey")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderDisplayName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("LoginProvider", "ProviderKey");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserLogins", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "RoleId");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetUserRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "LoginProvider", "Name");
|
||||
|
||||
b.ToTable("AspNetUserTokens", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ApplicationUser", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("AccessFailedCount")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Email")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<bool>("EmailConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<bool>("LockoutEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<DateTimeOffset?>("LockoutEnd")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<string>("NormalizedEmail")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedUserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("PasswordHash")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PermissionLevel")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PhoneNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("PhoneNumberConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("SecurityStamp")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("TwoFactorEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("UserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedEmail")
|
||||
.HasDatabaseName("EmailIndex");
|
||||
|
||||
b.HasIndex("NormalizedUserName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("UserNameIndex");
|
||||
|
||||
b.ToTable("AspNetUsers", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldDescriptions")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldNames")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("FieldSeparator")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArchiveCategories");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactDefects");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ArtifactNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<DateTime>>("AssociatedDates")
|
||||
.HasColumnType("timestamp with time zone[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Defects")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPubliclyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("ListedNames")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<int?>("ParentArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("StorageLocationId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactGroupingId");
|
||||
|
||||
b.HasIndex("ParentArtifactGroupingId");
|
||||
|
||||
b.HasIndex("StorageLocationId");
|
||||
|
||||
b.ToTable("ArtifactEntries");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("CategoryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Type")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("CategoryId");
|
||||
|
||||
b.ToTable("ArtifactGroupings");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactStorageLocation", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactStorageLocations");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("OriginalName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int?>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Path")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedById")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedToId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactEntriesId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntryTag", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("TagsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ArtifactGrouping")
|
||||
.WithMany("ChildArtifactEntries")
|
||||
.HasForeignKey("ArtifactGroupingId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ParentArtifactGrouping")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactGroupingId");
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactStorageLocation", "StorageLocation")
|
||||
.WithMany()
|
||||
.HasForeignKey("StorageLocationId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ArtifactGrouping");
|
||||
|
||||
b.Navigation("ParentArtifactGrouping");
|
||||
|
||||
b.Navigation("StorageLocation");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArchiveCategory", "Category")
|
||||
.WithMany()
|
||||
.HasForeignKey("CategoryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.OwnsOne("OpenArchival.DataAccess.IdentifierFields", "IdentifierFields", b1 =>
|
||||
{
|
||||
b1.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b1.PrimitiveCollection<List<string>>("Values")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b1.HasKey("ArtifactGroupingId");
|
||||
|
||||
b1.ToTable("ArtifactGroupings");
|
||||
|
||||
b1.ToJson("IdentifierFields");
|
||||
|
||||
b1.WithOwner()
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
b.Navigation("Category");
|
||||
|
||||
b.Navigation("IdentifierFields")
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class FixedCascadeDelete : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
661
OpenArchival.DataAccess/Migrations/20250829182730_fixedduplicateprop.Designer.cs
generated
Normal file
661
OpenArchival.DataAccess/Migrations/20250829182730_fixedduplicateprop.Designer.cs
generated
Normal file
@@ -0,0 +1,661 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
using OpenArchival.DataAccess;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250829182730_fixedduplicateprop")]
|
||||
partial class fixedduplicateprop
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "9.0.8")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("RelatedById")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedToId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("RelatedById", "RelatedToId");
|
||||
|
||||
b.HasIndex("RelatedToId");
|
||||
|
||||
b.ToTable("ArtifactRelationships", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("TagsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactEntriesId", "TagsId");
|
||||
|
||||
b.HasIndex("TagsId");
|
||||
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("RoleNameIndex");
|
||||
|
||||
b.ToTable("AspNetRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetRoleClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderKey")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderDisplayName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("LoginProvider", "ProviderKey");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserLogins", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "RoleId");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetUserRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "LoginProvider", "Name");
|
||||
|
||||
b.ToTable("AspNetUserTokens", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ApplicationUser", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("AccessFailedCount")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Email")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<bool>("EmailConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<bool>("LockoutEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<DateTimeOffset?>("LockoutEnd")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<string>("NormalizedEmail")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedUserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("PasswordHash")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PermissionLevel")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PhoneNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("PhoneNumberConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("SecurityStamp")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("TwoFactorEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("UserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedEmail")
|
||||
.HasDatabaseName("EmailIndex");
|
||||
|
||||
b.HasIndex("NormalizedUserName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("UserNameIndex");
|
||||
|
||||
b.ToTable("AspNetUsers", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldDescriptions")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldNames")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("FieldSeparator")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArchiveCategories");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactDefects");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ArtifactNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<DateTime>>("AssociatedDates")
|
||||
.HasColumnType("timestamp with time zone[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Defects")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPubliclyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("ListedNames")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<int>("StorageLocationId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactGroupingId");
|
||||
|
||||
b.HasIndex("StorageLocationId");
|
||||
|
||||
b.ToTable("ArtifactEntries");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("CategoryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Type")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("CategoryId");
|
||||
|
||||
b.ToTable("ArtifactGroupings");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactStorageLocation", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactStorageLocations");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("OriginalName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int?>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Path")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedById")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedToId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactEntriesId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntryTag", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("TagsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ArtifactGrouping")
|
||||
.WithMany("ChildArtifactEntries")
|
||||
.HasForeignKey("ArtifactGroupingId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactStorageLocation", "StorageLocation")
|
||||
.WithMany()
|
||||
.HasForeignKey("StorageLocationId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ArtifactGrouping");
|
||||
|
||||
b.Navigation("StorageLocation");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArchiveCategory", "Category")
|
||||
.WithMany()
|
||||
.HasForeignKey("CategoryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.OwnsOne("OpenArchival.DataAccess.IdentifierFields", "IdentifierFields", b1 =>
|
||||
{
|
||||
b1.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b1.PrimitiveCollection<List<string>>("Values")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b1.HasKey("ArtifactGroupingId");
|
||||
|
||||
b1.ToTable("ArtifactGroupings");
|
||||
|
||||
b1.ToJson("IdentifierFields");
|
||||
|
||||
b1.WithOwner()
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
b.Navigation("Category");
|
||||
|
||||
b.Navigation("IdentifierFields")
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Files");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class fixedduplicateprop : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropForeignKey(
|
||||
name: "FK_ArtifactEntries_ArtifactGroupings_ParentArtifactGroupingId",
|
||||
table: "ArtifactEntries");
|
||||
|
||||
migrationBuilder.DropIndex(
|
||||
name: "IX_ArtifactEntries_ParentArtifactGroupingId",
|
||||
table: "ArtifactEntries");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "ParentArtifactGroupingId",
|
||||
table: "ArtifactEntries");
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "ParentArtifactGroupingId",
|
||||
table: "ArtifactEntries",
|
||||
type: "integer",
|
||||
nullable: true);
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ArtifactEntries_ParentArtifactGroupingId",
|
||||
table: "ArtifactEntries",
|
||||
column: "ParentArtifactGroupingId");
|
||||
|
||||
migrationBuilder.AddForeignKey(
|
||||
name: "FK_ArtifactEntries_ArtifactGroupings_ParentArtifactGroupingId",
|
||||
table: "ArtifactEntries",
|
||||
column: "ParentArtifactGroupingId",
|
||||
principalTable: "ArtifactGroupings",
|
||||
principalColumn: "Id");
|
||||
}
|
||||
}
|
||||
}
|
||||
677
OpenArchival.DataAccess/Migrations/20250829200117_deduplicationadded.Designer.cs
generated
Normal file
677
OpenArchival.DataAccess/Migrations/20250829200117_deduplicationadded.Designer.cs
generated
Normal file
@@ -0,0 +1,677 @@
|
||||
// <auto-generated />
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
||||
using OpenArchival.DataAccess;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
[Migration("20250829200117_deduplicationadded")]
|
||||
partial class deduplicationadded
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "9.0.8")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("RelatedById")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedToId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("RelatedById", "RelatedToId");
|
||||
|
||||
b.HasIndex("RelatedToId");
|
||||
|
||||
b.ToTable("ArtifactRelationships", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("TagsId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactEntriesId", "TagsId");
|
||||
|
||||
b.HasIndex("TagsId");
|
||||
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("RoleNameIndex");
|
||||
|
||||
b.ToTable("AspNetRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetRoleClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderKey")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderDisplayName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("LoginProvider", "ProviderKey");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserLogins", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "RoleId");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetUserRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "LoginProvider", "Name");
|
||||
|
||||
b.ToTable("AspNetUserTokens", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ApplicationUser", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("AccessFailedCount")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Email")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<bool>("EmailConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<bool>("LockoutEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<DateTimeOffset?>("LockoutEnd")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<string>("NormalizedEmail")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedUserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("PasswordHash")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PermissionLevel")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PhoneNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("PhoneNumberConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("SecurityStamp")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("TwoFactorEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("UserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedEmail")
|
||||
.HasDatabaseName("EmailIndex");
|
||||
|
||||
b.HasIndex("NormalizedUserName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("UserNameIndex");
|
||||
|
||||
b.ToTable("AspNetUsers", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldDescriptions")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("FieldNames")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("FieldSeparator")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArchiveCategories");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int?>("ArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactDefects");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ArtifactNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<DateTime>>("AssociatedDates")
|
||||
.HasColumnType("timestamp with time zone[]");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("FileTextContent")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPubliclyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<int>("StorageLocationId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("TypeId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactGroupingId");
|
||||
|
||||
b.HasIndex("StorageLocationId");
|
||||
|
||||
b.HasIndex("TypeId");
|
||||
|
||||
b.ToTable("ArtifactEntries");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("CategoryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("IsPublicallyVisible")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Type")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("CategoryId");
|
||||
|
||||
b.ToTable("ArtifactGroupings");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactStorageLocation", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Location")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactStorageLocations");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactType", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("OriginalName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int?>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Path")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedById")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedToId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactEntriesId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntryTag", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("TagsId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany("Defects")
|
||||
.HasForeignKey("ArtifactEntryId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ArtifactGrouping")
|
||||
.WithMany("ChildArtifactEntries")
|
||||
.HasForeignKey("ArtifactGroupingId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactStorageLocation", "StorageLocation")
|
||||
.WithMany()
|
||||
.HasForeignKey("StorageLocationId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactType", "Type")
|
||||
.WithMany()
|
||||
.HasForeignKey("TypeId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ArtifactGrouping");
|
||||
|
||||
b.Navigation("StorageLocation");
|
||||
|
||||
b.Navigation("Type");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArchiveCategory", "Category")
|
||||
.WithMany()
|
||||
.HasForeignKey("CategoryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.OwnsOne("OpenArchival.DataAccess.IdentifierFields", "IdentifierFields", b1 =>
|
||||
{
|
||||
b1.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b1.PrimitiveCollection<List<string>>("Values")
|
||||
.IsRequired()
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b1.HasKey("ArtifactGroupingId");
|
||||
|
||||
b1.ToTable("ArtifactGroupings");
|
||||
|
||||
b1.ToJson("IdentifierFields");
|
||||
|
||||
b1.WithOwner()
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
});
|
||||
|
||||
b.Navigation("Category");
|
||||
|
||||
b.Navigation("IdentifierFields")
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("Files")
|
||||
.HasForeignKey("ParentArtifactEntryId");
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("ListedNames")
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Defects");
|
||||
|
||||
b.Navigation("Files");
|
||||
|
||||
b.Navigation("ListedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,132 @@
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class deduplicationadded : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropColumn(
|
||||
name: "Defects",
|
||||
table: "ArtifactEntries");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "ListedNames",
|
||||
table: "ArtifactEntries");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "FirstName",
|
||||
table: "ArtifactAssociatedNames");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "Title",
|
||||
table: "ArtifactAssociatedNames");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "LastName",
|
||||
table: "ArtifactAssociatedNames",
|
||||
newName: "Value");
|
||||
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "TypeId",
|
||||
table: "ArtifactEntries",
|
||||
type: "integer",
|
||||
nullable: false,
|
||||
defaultValue: 0);
|
||||
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "ArtifactEntryId",
|
||||
table: "ArtifactDefects",
|
||||
type: "integer",
|
||||
nullable: true);
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ArtifactEntries_TypeId",
|
||||
table: "ArtifactEntries",
|
||||
column: "TypeId");
|
||||
|
||||
migrationBuilder.CreateIndex(
|
||||
name: "IX_ArtifactDefects_ArtifactEntryId",
|
||||
table: "ArtifactDefects",
|
||||
column: "ArtifactEntryId");
|
||||
|
||||
migrationBuilder.AddForeignKey(
|
||||
name: "FK_ArtifactDefects_ArtifactEntries_ArtifactEntryId",
|
||||
table: "ArtifactDefects",
|
||||
column: "ArtifactEntryId",
|
||||
principalTable: "ArtifactEntries",
|
||||
principalColumn: "Id");
|
||||
|
||||
migrationBuilder.AddForeignKey(
|
||||
name: "FK_ArtifactEntries_ArtifactTypes_TypeId",
|
||||
table: "ArtifactEntries",
|
||||
column: "TypeId",
|
||||
principalTable: "ArtifactTypes",
|
||||
principalColumn: "Id",
|
||||
onDelete: ReferentialAction.Cascade);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropForeignKey(
|
||||
name: "FK_ArtifactDefects_ArtifactEntries_ArtifactEntryId",
|
||||
table: "ArtifactDefects");
|
||||
|
||||
migrationBuilder.DropForeignKey(
|
||||
name: "FK_ArtifactEntries_ArtifactTypes_TypeId",
|
||||
table: "ArtifactEntries");
|
||||
|
||||
migrationBuilder.DropIndex(
|
||||
name: "IX_ArtifactEntries_TypeId",
|
||||
table: "ArtifactEntries");
|
||||
|
||||
migrationBuilder.DropIndex(
|
||||
name: "IX_ArtifactDefects_ArtifactEntryId",
|
||||
table: "ArtifactDefects");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "TypeId",
|
||||
table: "ArtifactEntries");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "ArtifactEntryId",
|
||||
table: "ArtifactDefects");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "Value",
|
||||
table: "ArtifactAssociatedNames",
|
||||
newName: "LastName");
|
||||
|
||||
migrationBuilder.AddColumn<List<string>>(
|
||||
name: "Defects",
|
||||
table: "ArtifactEntries",
|
||||
type: "text[]",
|
||||
nullable: true);
|
||||
|
||||
migrationBuilder.AddColumn<List<string>>(
|
||||
name: "ListedNames",
|
||||
table: "ArtifactEntries",
|
||||
type: "text[]",
|
||||
nullable: true);
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "FirstName",
|
||||
table: "ArtifactAssociatedNames",
|
||||
type: "text",
|
||||
nullable: false,
|
||||
defaultValue: "");
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "Title",
|
||||
table: "ArtifactAssociatedNames",
|
||||
type: "text",
|
||||
nullable: true);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -11,18 +11,33 @@ using OpenArchival.DataAccess;
|
||||
|
||||
namespace OpenArchival.DataAccess.Migrations
|
||||
{
|
||||
[DbContext(typeof(ArchiveDbContext))]
|
||||
[DbContext(typeof(ApplicationDbContext))]
|
||||
partial class ArchiveDbContextModelSnapshot : ModelSnapshot
|
||||
{
|
||||
protected override void BuildModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "9.0.7")
|
||||
.HasAnnotation("ProductVersion", "9.0.8")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 63);
|
||||
|
||||
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.Property<int>("RelatedById")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedToId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("RelatedById", "RelatedToId");
|
||||
|
||||
b.HasIndex("RelatedToId");
|
||||
|
||||
b.ToTable("ArtifactRelationships", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactEntriesId")
|
||||
@@ -38,19 +53,204 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactEntryArtifactEntryTag");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactGroupingArtifactGrouping", b =>
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>
|
||||
{
|
||||
b.Property<int>("ArtifactGroupingId")
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("RoleNameIndex");
|
||||
|
||||
b.ToTable("AspNetRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("RelatedArtifactGroupingsId")
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetRoleClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("ArtifactGroupingId", "RelatedArtifactGroupingsId");
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.HasIndex("RelatedArtifactGroupingsId");
|
||||
b.Property<string>("ClaimType")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.ToTable("RelatedGroupings", (string)null);
|
||||
b.Property<string>("ClaimValue")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserClaims", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderKey")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("ProviderDisplayName")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("UserId")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("LoginProvider", "ProviderKey");
|
||||
|
||||
b.HasIndex("UserId");
|
||||
|
||||
b.ToTable("AspNetUserLogins", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("RoleId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "RoleId");
|
||||
|
||||
b.HasIndex("RoleId");
|
||||
|
||||
b.ToTable("AspNetUserRoles", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.Property<string>("UserId")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LoginProvider")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("UserId", "LoginProvider", "Name");
|
||||
|
||||
b.ToTable("AspNetUserTokens", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ApplicationUser", b =>
|
||||
{
|
||||
b.Property<string>("Id")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("AccessFailedCount")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ConcurrencyStamp")
|
||||
.IsConcurrencyToken()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("Email")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<bool>("EmailConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<bool>("LockoutEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<DateTimeOffset?>("LockoutEnd")
|
||||
.HasColumnType("timestamp with time zone");
|
||||
|
||||
b.Property<string>("NormalizedEmail")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("NormalizedUserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.Property<string>("PasswordHash")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PermissionLevel")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("PhoneNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("PhoneNumberConfirmed")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("SecurityStamp")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<bool>("TwoFactorEnabled")
|
||||
.HasColumnType("boolean");
|
||||
|
||||
b.Property<string>("UserName")
|
||||
.HasMaxLength(256)
|
||||
.HasColumnType("character varying(256)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("NormalizedEmail")
|
||||
.HasDatabaseName("EmailIndex");
|
||||
|
||||
b.HasIndex("NormalizedUserName")
|
||||
.IsUnique()
|
||||
.HasDatabaseName("UserNameIndex");
|
||||
|
||||
b.ToTable("AspNetUsers", (string)null);
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArchiveCategory", b =>
|
||||
@@ -82,7 +282,7 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("ArchiveCategory");
|
||||
b.ToTable("ArchiveCategories");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
@@ -93,12 +293,17 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int?>("ArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactDefects");
|
||||
});
|
||||
|
||||
@@ -110,15 +315,15 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("ArtifactNumber")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.PrimitiveCollection<List<DateTime>>("AssociatedDates")
|
||||
.HasColumnType("timestamp with time zone[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("Defects")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<string>("Description")
|
||||
.HasColumnType("text");
|
||||
|
||||
@@ -131,12 +336,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.PrimitiveCollection<List<string>>("Links")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.PrimitiveCollection<List<string>>("ListedNames")
|
||||
.HasColumnType("text[]");
|
||||
|
||||
b.Property<int?>("ParentArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<int>("StorageLocationId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
@@ -144,12 +343,17 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("TypeId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactGroupingId");
|
||||
b.HasIndex("ArtifactGroupingId");
|
||||
|
||||
b.HasIndex("StorageLocationId");
|
||||
|
||||
b.HasIndex("TypeId");
|
||||
|
||||
b.ToTable("ArtifactEntries");
|
||||
});
|
||||
|
||||
@@ -161,17 +365,12 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int?>("ArtifactGroupingId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Name")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ArtifactGroupingId");
|
||||
|
||||
b.ToTable("ArtifactEntryTags");
|
||||
});
|
||||
|
||||
@@ -240,35 +439,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactTypes");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("FirstName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<string>("LastName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
@@ -295,6 +465,43 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.ToTable("ArtifactFilePaths");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("integer");
|
||||
|
||||
NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<int>("ParentArtifactEntryId")
|
||||
.HasColumnType("integer");
|
||||
|
||||
b.Property<string>("Value")
|
||||
.IsRequired()
|
||||
.HasColumnType("text");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.HasIndex("ParentArtifactEntryId");
|
||||
|
||||
b.ToTable("ArtifactAssociatedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedById")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedToId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactEntryArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
@@ -310,26 +517,71 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("ArtifactGroupingArtifactGrouping", b =>
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("ArtifactGroupingId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RelatedArtifactGroupingsId")
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole<string>", b =>
|
||||
{
|
||||
b.HasOne("Microsoft.AspNetCore.Identity.IdentityRole", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("RoleId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken<string>", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ApplicationUser", null)
|
||||
.WithMany()
|
||||
.HasForeignKey("UserId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactDefect", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", null)
|
||||
.WithMany("Defects")
|
||||
.HasForeignKey("ArtifactEntryId");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ParentArtifactGrouping")
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", "ArtifactGrouping")
|
||||
.WithMany("ChildArtifactEntries")
|
||||
.HasForeignKey("ParentArtifactGroupingId");
|
||||
.HasForeignKey("ArtifactGroupingId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactStorageLocation", "StorageLocation")
|
||||
.WithMany()
|
||||
@@ -337,16 +589,17 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactGrouping");
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactType", "Type")
|
||||
.WithMany()
|
||||
.HasForeignKey("TypeId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ArtifactGrouping");
|
||||
|
||||
b.Navigation("StorageLocation");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntryTag", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactGrouping", null)
|
||||
.WithMany("ChildTags")
|
||||
.HasForeignKey("ArtifactGroupingId");
|
||||
b.Navigation("Type");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
@@ -382,17 +635,6 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
.IsRequired();
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.AssociatedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany()
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.FilePathListing", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
@@ -402,16 +644,29 @@ namespace OpenArchival.DataAccess.Migrations
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ListedName", b =>
|
||||
{
|
||||
b.HasOne("OpenArchival.DataAccess.ArtifactEntry", "ParentArtifactEntry")
|
||||
.WithMany("ListedNames")
|
||||
.HasForeignKey("ParentArtifactEntryId")
|
||||
.OnDelete(DeleteBehavior.Cascade)
|
||||
.IsRequired();
|
||||
|
||||
b.Navigation("ParentArtifactEntry");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactEntry", b =>
|
||||
{
|
||||
b.Navigation("Defects");
|
||||
|
||||
b.Navigation("Files");
|
||||
|
||||
b.Navigation("ListedNames");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("OpenArchival.DataAccess.ArtifactGrouping", b =>
|
||||
{
|
||||
b.Navigation("ChildArtifactEntries");
|
||||
|
||||
b.Navigation("ChildTags");
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
|
||||
9
OpenArchival.DataAccess/Models/ApplicationUser.cs
Normal file
9
OpenArchival.DataAccess/Models/ApplicationUser.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using Microsoft.AspNetCore.Identity;
|
||||
|
||||
namespace OpenArchival.DataAccess;
|
||||
|
||||
// Add profile data for application users by adding properties to the ApplicationUser class
|
||||
public class ApplicationUser : IdentityUser
|
||||
{
|
||||
public string PermissionLevel { get; set; } = "";
|
||||
}
|
||||
@@ -1,12 +1,14 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ArchiveCategory
|
||||
{
|
||||
[Key]
|
||||
public int? Id { get; set; }
|
||||
public int Id { get; set; }
|
||||
|
||||
[System.ComponentModel.DataAnnotations.Schema.Index(IsUnique =true)]
|
||||
public required string Name { get; set; }
|
||||
|
||||
public string? Description { get; set; }
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
@@ -10,7 +11,9 @@ namespace OpenArchival.DataAccess;
|
||||
public class ArtifactDefect
|
||||
{
|
||||
[Key]
|
||||
public required int Id { get; set; }
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||
public int Id { get; set; }
|
||||
|
||||
[Index(IsUnique = true)]
|
||||
public required string Description { get; set; }
|
||||
}
|
||||
|
||||
@@ -1,11 +1,14 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Text;
|
||||
|
||||
namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ArtifactEntry
|
||||
{
|
||||
[Key]
|
||||
public required int Id { get; set; }
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// This value gets appended on the end of the contianing ArtifactGrouping's
|
||||
@@ -15,8 +18,8 @@ public class ArtifactEntry
|
||||
{
|
||||
get
|
||||
{
|
||||
return (ParentArtifactGrouping is not null)
|
||||
? ModelHelpers.MakeIdentifier(ParentArtifactGrouping.IdentifierFields.Values, ParentArtifactGrouping.Category.FieldSeparator, ArtifactNumber)
|
||||
return (ArtifactGrouping is not null)
|
||||
? ModelHelpers.MakeIdentifier(ArtifactGrouping.IdentifierFields.Values, ArtifactGrouping.Category.FieldSeparator, ArtifactNumber)
|
||||
: null;
|
||||
}
|
||||
}
|
||||
@@ -29,25 +32,64 @@ public class ArtifactEntry
|
||||
|
||||
public required ArtifactStorageLocation StorageLocation { get; set; }
|
||||
|
||||
public List<ArtifactEntryTag>? Tags { get; set; }
|
||||
public List<ArtifactEntryTag>? Tags { get; set; } = [];
|
||||
|
||||
public List<string>? ListedNames { get; set; }
|
||||
public List<ListedName>? ListedNames { get; set; } = [];
|
||||
|
||||
public List<DateTime>? AssociatedDates { get; set; }
|
||||
public List<DateTime>? AssociatedDates { get; set; } = [];
|
||||
|
||||
public List<ArtifactDefect>? Defects { get; set; } = [];
|
||||
|
||||
public List<string>? Links { get; set; } = [];
|
||||
|
||||
public List<string>? Defects { get; set; }
|
||||
public required List<FilePathListing> Files { get; set; } = [];
|
||||
|
||||
public List<string>? Links { get; set; }
|
||||
|
||||
public ArtifactGrouping? ParentArtifactGrouping { get; set; }
|
||||
public string? FileTextContent { get; set; } = null;
|
||||
|
||||
public required List<FilePathListing> Files { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Maps the file name to the textual contents of the file
|
||||
/// </summary>
|
||||
public Dictionary<string, string>? FileTextContent { get; set; } = null;
|
||||
public required ArtifactType Type { get; set; }
|
||||
|
||||
public bool IsPubliclyVisible { get; set; }
|
||||
|
||||
|
||||
// Relationships this artifact has TO other artifacts
|
||||
public List<ArtifactEntry> RelatedTo { get; set; } = [];
|
||||
|
||||
// Relationships other artifacts have TO this artifact
|
||||
public List<ArtifactEntry> RelatedBy { get; set; } = [];
|
||||
|
||||
|
||||
public int ArtifactGroupingId { get; set; }
|
||||
|
||||
public required ArtifactGrouping ArtifactGrouping { get; set; }
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
var sb = new StringBuilder();
|
||||
|
||||
sb.AppendLine($"--- ArtifactEntry (ID: {Id}) ---");
|
||||
sb.AppendLine($" Title: {Title}");
|
||||
sb.AppendLine($" ArtifactIdentifier: {ArtifactIdentifier ?? "N/A"}");
|
||||
sb.AppendLine($" ArtifactNumber: {ArtifactNumber ?? "N/A"}");
|
||||
sb.AppendLine($" StorageLocation: {StorageLocation}"); // Assumes ArtifactStorageLocation has a useful ToString()
|
||||
sb.AppendLine($" IsPubliclyVisible: {IsPubliclyVisible}");
|
||||
|
||||
// Handle Description (it could be long, so you might truncate it if needed)
|
||||
sb.AppendLine($" Description: {(string.IsNullOrWhiteSpace(Description) ? "N/A" : Description)}");
|
||||
|
||||
// Handle Lists
|
||||
sb.AppendLine($" Tags: {(Tags is not null && Tags.Any() ? string.Join(", ", Tags) : "None")}");
|
||||
sb.AppendLine($" ListedNames: {(ListedNames is not null && ListedNames.Any() ? string.Join(", ", ListedNames) : "None")}");
|
||||
sb.AppendLine($" AssociatedDates: {(AssociatedDates is not null && AssociatedDates.Any() ? string.Join(", ", AssociatedDates.Select(d => d.ToShortDateString())) : "None")}");
|
||||
sb.AppendLine($" Defects: {(Defects is not null && Defects.Any() ? string.Join(", ", Defects) : "None")}");
|
||||
sb.AppendLine($" Links: {(Links is not null && Links.Any() ? string.Join(", ", Links) : "None")}");
|
||||
sb.AppendLine($" Files: {(Files is not null && Files.Any() ? string.Join(", ", Files) : "None")}");
|
||||
|
||||
// Handle potentially very large text content
|
||||
sb.AppendLine($" FileTextContent: {(string.IsNullOrEmpty(FileTextContent) ? "Not Present" : $"Present (Length: {FileTextContent.Length})")}");
|
||||
|
||||
sb.Append("--------------------------");
|
||||
|
||||
return sb.ToString();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
@@ -10,9 +11,11 @@ namespace OpenArchival.DataAccess;
|
||||
public class ArtifactEntryTag
|
||||
{
|
||||
[Key]
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||
public int Id { get; set; }
|
||||
|
||||
[Index(IsUnique = true)]
|
||||
public required string Name { get; set; }
|
||||
|
||||
public List<ArtifactEntry>? ArtifactEntries { get; set; }
|
||||
public List<ArtifactEntry>? ArtifactEntries { get; set; } = [];
|
||||
}
|
||||
|
||||
@@ -1,12 +1,15 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Text;
|
||||
|
||||
namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ArtifactGrouping
|
||||
{
|
||||
[Key]
|
||||
public required int Id { get; set; }
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||
public int Id { get; set; }
|
||||
|
||||
public string? ArtifactGroupingIdentifier
|
||||
{
|
||||
@@ -32,7 +35,6 @@ public class ArtifactGrouping
|
||||
}
|
||||
}
|
||||
|
||||
public required List<ArtifactEntry> ChildArtifactEntries { get; set; } = new();
|
||||
|
||||
public required string Title { get; set; }
|
||||
|
||||
@@ -40,10 +42,33 @@ public class ArtifactGrouping
|
||||
|
||||
public string? Type { get; set; }
|
||||
|
||||
public List<ArtifactGrouping>? RelatedArtifactGroupings { get; set; }
|
||||
|
||||
public bool IsPublicallyVisible { get; set; }
|
||||
|
||||
public required List<ArtifactEntry> ChildArtifactEntries { get; set; } = new();
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
var sb = new StringBuilder();
|
||||
|
||||
sb.AppendLine($"Id: {Id}");
|
||||
sb.AppendLine($"Artifact Grouping Identifier: {ArtifactGroupingIdentifier}");
|
||||
sb.AppendLine($"Category:");
|
||||
sb.AppendLine(Category.ToString());
|
||||
sb.AppendLine($"Title: {Title}");
|
||||
sb.AppendLine($"Description: {Description}");
|
||||
sb.AppendLine($"Type:{Type}");
|
||||
sb.AppendLine($"Publically Visible: {IsPublicallyVisible}");
|
||||
sb.AppendLine($"Artifact Entries:");
|
||||
foreach (var artifact in ChildArtifactEntries)
|
||||
{
|
||||
sb.AppendLine(artifact.ToString());
|
||||
sb.AppendLine();
|
||||
}
|
||||
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
[NotMapped]
|
||||
public IEnumerable<ArtifactEntryTag> ChildTags
|
||||
{
|
||||
get
|
||||
|
||||
@@ -1,11 +1,14 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ArtifactStorageLocation
|
||||
{
|
||||
[Key]
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||
public int Id { get; set; }
|
||||
|
||||
[System.ComponentModel.DataAnnotations.Schema.Index(IsUnique =true)]
|
||||
public required string Location { get; set; }
|
||||
}
|
||||
|
||||
@@ -1,11 +1,14 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ArtifactType
|
||||
{
|
||||
[Key]
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||
public int Id { get; set; }
|
||||
|
||||
[System.ComponentModel.DataAnnotations.Schema.Index(IsUnique =true)]
|
||||
public required string Name { get; set; }
|
||||
}
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace OpenArchival.DataAccess;
|
||||
|
||||
public class FilePathListing
|
||||
{
|
||||
[Key]
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||
public int Id { get; set; }
|
||||
|
||||
public ArtifactEntry? ParentArtifactEntry { get; set; }
|
||||
|
||||
public int? ParentArtifactEntryId { get; set; }
|
||||
|
||||
public required string OriginalName { get; set; }
|
||||
|
||||
public required string Path { get; set; }
|
||||
|
||||
@@ -1,17 +1,15 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
|
||||
namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ListedName
|
||||
{
|
||||
[Key]
|
||||
public required int Id { get; set; }
|
||||
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
||||
public int Id { get; set; }
|
||||
|
||||
public required ArtifactEntry ParentArtifactEntry { get; set; }
|
||||
|
||||
public string? Title { get; set; }
|
||||
|
||||
public required string FirstName { get; set; }
|
||||
|
||||
public required string LastName { get; set; }
|
||||
public required string Value { get; set; }
|
||||
}
|
||||
|
||||
@@ -8,12 +8,13 @@
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="EntityFramework" Version="6.5.1" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="9.0.7" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="9.0.7">
|
||||
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="9.0.8" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="9.0.8" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="9.0.8">
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="9.0.7" />
|
||||
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="9.0.8" />
|
||||
<PackageReference Include="Npgsql" Version="9.0.3" />
|
||||
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="9.0.4" />
|
||||
</ItemGroup>
|
||||
|
||||
@@ -18,7 +18,7 @@ static class Program
|
||||
var connectionString = builder.Configuration.GetConnectionString("PostgresConnection");
|
||||
|
||||
// Add the DbContext to the dependency injection container
|
||||
builder.Services.AddDbContext<ArchiveDbContext>(options =>
|
||||
builder.Services.AddDbContext<ApplicationDbContext>(options =>
|
||||
options.UseNpgsql(connectionString));
|
||||
|
||||
var app = builder.Build();
|
||||
|
||||
@@ -5,11 +5,11 @@ namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ArchiveCategoryProvider : IArchiveCategoryProvider
|
||||
{
|
||||
private Microsoft.EntityFrameworkCore.IDbContextFactory<ArchiveDbContext> _dbFactory;
|
||||
private Microsoft.EntityFrameworkCore.IDbContextFactory<ApplicationDbContext> _dbFactory;
|
||||
private ILogger _logger;
|
||||
|
||||
[SetsRequiredMembers]
|
||||
public ArchiveCategoryProvider(Microsoft.EntityFrameworkCore.IDbContextFactory<ArchiveDbContext> dbFactory, ILogger<ArchiveCategoryProvider> logger)
|
||||
public ArchiveCategoryProvider(Microsoft.EntityFrameworkCore.IDbContextFactory<ApplicationDbContext> dbFactory, ILogger<ArchiveCategoryProvider> logger)
|
||||
{
|
||||
_dbFactory = dbFactory;
|
||||
_logger = logger;
|
||||
|
||||
@@ -5,11 +5,11 @@ namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ArchiveEntryTagProvider : IArchiveEntryTagProvider
|
||||
{
|
||||
private readonly IDbContextFactory<ArchiveDbContext> _dbFactory;
|
||||
private readonly IDbContextFactory<ApplicationDbContext> _dbFactory;
|
||||
private readonly ILogger<ArchiveEntryTagProvider> _logger;
|
||||
|
||||
[SetsRequiredMembers]
|
||||
public ArchiveEntryTagProvider(IDbContextFactory<ArchiveDbContext> context, ILogger<ArchiveEntryTagProvider> logger)
|
||||
public ArchiveEntryTagProvider(IDbContextFactory<ApplicationDbContext> context, ILogger<ArchiveEntryTagProvider> logger)
|
||||
{
|
||||
_dbFactory = context;
|
||||
_logger = logger;
|
||||
|
||||
@@ -6,11 +6,11 @@ namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ArtifactDefectProvider : IArtifactDefectProvider
|
||||
{
|
||||
private readonly IDbContextFactory<ArchiveDbContext> _dbFactory;
|
||||
private readonly IDbContextFactory<ApplicationDbContext> _dbFactory;
|
||||
private readonly ILogger<ArtifactDefectProvider> _logger;
|
||||
|
||||
[SetsRequiredMembers]
|
||||
public ArtifactDefectProvider(IDbContextFactory<ArchiveDbContext> context, ILogger<ArtifactDefectProvider> logger)
|
||||
public ArtifactDefectProvider(IDbContextFactory<ApplicationDbContext> context, ILogger<ArtifactDefectProvider> logger)
|
||||
{
|
||||
_dbFactory = context;
|
||||
_logger = logger;
|
||||
|
||||
@@ -6,11 +6,11 @@ namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ArtifactGroupingProvider : IArtifactGroupingProvider
|
||||
{
|
||||
private readonly ArchiveDbContext _context;
|
||||
private readonly ApplicationDbContext _context;
|
||||
private readonly ILogger<ArtifactGroupingProvider> _logger;
|
||||
|
||||
[SetsRequiredMembers]
|
||||
public ArtifactGroupingProvider(ArchiveDbContext context, ILogger<ArtifactGroupingProvider> logger)
|
||||
public ArtifactGroupingProvider(ApplicationDbContext context, ILogger<ArtifactGroupingProvider> logger)
|
||||
{
|
||||
_context = context;
|
||||
_logger = logger;
|
||||
@@ -18,12 +18,18 @@ public class ArtifactGroupingProvider : IArtifactGroupingProvider
|
||||
|
||||
public async Task<ArtifactGrouping?> GetGroupingAsync(int id)
|
||||
{
|
||||
return await _context.ArtifactGroupings.Where(g => g.Id == id).FirstOrDefaultAsync();
|
||||
return await _context.ArtifactGroupings
|
||||
.Where(g => g.Id == id)
|
||||
.Include(g => g.Category)
|
||||
.FirstOrDefaultAsync();
|
||||
}
|
||||
|
||||
public async Task<ArtifactGrouping?> GetGroupingAsync(string artifactGroupingIdentifier)
|
||||
{
|
||||
return await _context.ArtifactGroupings.Where(g => g.ArtifactGroupingIdentifier == artifactGroupingIdentifier).FirstOrDefaultAsync();
|
||||
return await _context.ArtifactGroupings
|
||||
.Where(g => g.ArtifactGroupingIdentifier == artifactGroupingIdentifier)
|
||||
.Include(g => g.Category)
|
||||
.FirstOrDefaultAsync();
|
||||
}
|
||||
|
||||
public async Task CreateGroupingAsync(ArtifactGrouping grouping)
|
||||
@@ -38,9 +44,37 @@ public class ArtifactGroupingProvider : IArtifactGroupingProvider
|
||||
await _context.SaveChangesAsync();
|
||||
}
|
||||
|
||||
public async Task DeleteGroupingAsync(int id)
|
||||
{
|
||||
await _context.ArtifactGroupings
|
||||
.Where(p => p.Id == id)
|
||||
.ExecuteDeleteAsync();
|
||||
|
||||
await _context.SaveChangesAsync();
|
||||
}
|
||||
|
||||
public async Task DeleteGroupingAsync(ArtifactGrouping grouping)
|
||||
{
|
||||
_context.ArtifactGroupings.Remove(grouping);
|
||||
await _context.SaveChangesAsync();
|
||||
}
|
||||
|
||||
public async Task<List<ArtifactGrouping>> GetGroupingsPaged(int pageNumber, int resultsCount)
|
||||
{
|
||||
if (pageNumber < 1 || resultsCount < 1)
|
||||
{
|
||||
throw new ArgumentOutOfRangeException($"Either page number or number of results was less than or equal to 0. {nameof(pageNumber)}={pageNumber} {nameof(resultsCount)}={resultsCount}");
|
||||
}
|
||||
|
||||
var totalCount = await _context.ArtifactGroupings.CountAsync();
|
||||
|
||||
var items = await _context.ArtifactGroupings
|
||||
.Include(g => g.Category)
|
||||
.OrderBy(g => g.Id)
|
||||
.Skip((pageNumber - 1) * resultsCount)
|
||||
.Take(resultsCount)
|
||||
.ToListAsync();
|
||||
|
||||
return items;
|
||||
}
|
||||
}
|
||||
@@ -9,11 +9,11 @@ namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ArtifactStorageLocationProvider : IArtifactStorageLocationProvider
|
||||
{
|
||||
private readonly IDbContextFactory<ArchiveDbContext> _dbFactory;
|
||||
private readonly IDbContextFactory<ApplicationDbContext> _dbFactory;
|
||||
private readonly ILogger _logger;
|
||||
|
||||
[SetsRequiredMembers]
|
||||
public ArtifactStorageLocationProvider(IDbContextFactory<ArchiveDbContext> dbFactory, ILogger<ArtifactStorageLocationProvider> logger)
|
||||
public ArtifactStorageLocationProvider(IDbContextFactory<ApplicationDbContext> dbFactory, ILogger<ArtifactStorageLocationProvider> logger)
|
||||
{
|
||||
_dbFactory = dbFactory;
|
||||
_logger = logger;
|
||||
@@ -68,17 +68,66 @@ public class ArtifactStorageLocationProvider : IArtifactStorageLocationProvider
|
||||
{
|
||||
await using var context = await _dbFactory.CreateDbContextAsync();
|
||||
|
||||
return await context.ArtifactStorageLocations
|
||||
.Where(p => p.Location.ToLower().Contains(query.ToLower())).ToListAsync();
|
||||
// STEP 1: Get the unique location STRINGS that match the search query.
|
||||
// This simple query is guaranteed to be translated correctly by EF Core.
|
||||
var uniqueMatchingNames = await context.ArtifactStorageLocations
|
||||
.Where(p => p.Location.ToLower().Contains(query.ToLower()))
|
||||
.Select(p => p.Location)
|
||||
.Distinct()
|
||||
.ToListAsync();
|
||||
|
||||
// If no names matched, return an empty list immediately.
|
||||
if (uniqueMatchingNames is null || !uniqueMatchingNames.Any())
|
||||
{
|
||||
return new List<ArtifactStorageLocation>();
|
||||
}
|
||||
|
||||
// STEP 2: Now, fetch the full objects that correspond to the unique names.
|
||||
var matchingLocations = await context.ArtifactStorageLocations
|
||||
.Where(p => uniqueMatchingNames.Contains(p.Location))
|
||||
.ToListAsync();
|
||||
|
||||
// STEP 3: Perform a final DistinctBy on the small in-memory list to ensure
|
||||
// a clean result set with one object per location name.
|
||||
var finalResults = matchingLocations
|
||||
.DistinctBy(p => p.Location)
|
||||
.OrderBy(p => p.Location) // Optional: Orders the final search results
|
||||
.ToList();
|
||||
|
||||
return finalResults;
|
||||
}
|
||||
|
||||
public async Task<List<ArtifactStorageLocation>?> Top(int count)
|
||||
{
|
||||
await using var context = await _dbFactory.CreateDbContextAsync();
|
||||
|
||||
return await context.ArtifactStorageLocations
|
||||
.OrderBy(p => p.Location)
|
||||
// STEP 1: Get a unique, ordered list of the TOP N location *strings*.
|
||||
// This is a simple query that EF Core can always translate correctly.
|
||||
var uniqueLocationNames = await context.ArtifactStorageLocations
|
||||
.Select(p => p.Location)
|
||||
.Distinct()
|
||||
.OrderBy(locationName => locationName)
|
||||
.Take(count)
|
||||
.ToListAsync();
|
||||
|
||||
if (uniqueLocationNames is null || !uniqueLocationNames.Any())
|
||||
{
|
||||
return new List<ArtifactStorageLocation>();
|
||||
}
|
||||
|
||||
// STEP 2: Fetch all the full ArtifactStorageLocation objects that match the unique names.
|
||||
// We use the list from Step 1 to create a 'WHERE IN (...)' clause.
|
||||
var matchingLocations = await context.ArtifactStorageLocations
|
||||
.Where(p => uniqueLocationNames.Contains(p.Location))
|
||||
.ToListAsync();
|
||||
|
||||
// STEP 3: The previous query might fetch duplicates (e.g., two entries for "Box A").
|
||||
// We now perform the final DistinctBy in-memory, which is guaranteed to work.
|
||||
var finalResults = matchingLocations
|
||||
.DistinctBy(p => p.Location)
|
||||
.OrderBy(p => p.Location) // Re-apply ordering to the final list
|
||||
.ToList();
|
||||
|
||||
return finalResults;
|
||||
}
|
||||
}
|
||||
@@ -6,11 +6,11 @@ namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ArtifactTypeProvider : IArtifactTypeProvider
|
||||
{
|
||||
private readonly IDbContextFactory<ArchiveDbContext> _dbFactory;
|
||||
private readonly IDbContextFactory<ApplicationDbContext> _dbFactory;
|
||||
private readonly ILogger<ArtifactTypeProvider> _logger;
|
||||
|
||||
[SetsRequiredMembers]
|
||||
public ArtifactTypeProvider(IDbContextFactory<ArchiveDbContext> dbFactory, ILogger<ArtifactTypeProvider> logger)
|
||||
public ArtifactTypeProvider(IDbContextFactory<ApplicationDbContext> dbFactory, ILogger<ArtifactTypeProvider> logger)
|
||||
{
|
||||
_dbFactory = dbFactory;
|
||||
_logger = logger;
|
||||
|
||||
@@ -5,11 +5,11 @@ namespace OpenArchival.DataAccess;
|
||||
|
||||
public class FilePathListingProvider : IFilePathListingProvider
|
||||
{
|
||||
private readonly ArchiveDbContext _context;
|
||||
private readonly ApplicationDbContext _context;
|
||||
private readonly ILogger<FilePathListingProvider> _logger;
|
||||
|
||||
[SetsRequiredMembers]
|
||||
public FilePathListingProvider(ArchiveDbContext context, ILogger<FilePathListingProvider> logger)
|
||||
public FilePathListingProvider(ApplicationDbContext context, ILogger<FilePathListingProvider> logger)
|
||||
{
|
||||
_context = context;
|
||||
_logger = logger;
|
||||
|
||||
@@ -6,5 +6,7 @@ public interface IArtifactGroupingProvider
|
||||
Task<ArtifactGrouping?> GetGroupingAsync(string artifactGroupingIdentifier);
|
||||
Task CreateGroupingAsync(ArtifactGrouping grouping);
|
||||
Task UpdateGroupingAsync(ArtifactGrouping grouping);
|
||||
Task DeleteGroupingAsync(int id);
|
||||
Task DeleteGroupingAsync(ArtifactGrouping grouping);
|
||||
Task<List<ArtifactGrouping>> GetGroupingsPaged(int pageNumber, int resultsCount);
|
||||
}
|
||||
@@ -3,7 +3,7 @@
|
||||
public interface IListedNameProvider
|
||||
{
|
||||
Task<ListedName?> GetAssociatedNameAsync(int id);
|
||||
Task<List<ListedName>?> GetAssociatedNamesAsync(string firstName, string lastName);
|
||||
Task<List<ListedName>?> GetAssociatedNamesAsync(string name);
|
||||
Task CreateAssociatedNameAsync(ListedName associatedName);
|
||||
Task UpdateAssociatedNameAsync(ListedName associatedName);
|
||||
Task DeleteAssociatedNameAsync(ListedName associatedName);
|
||||
|
||||
@@ -6,11 +6,11 @@ namespace OpenArchival.DataAccess;
|
||||
|
||||
public class ListedNameProvider : IListedNameProvider
|
||||
{
|
||||
private readonly IDbContextFactory<ArchiveDbContext> _dbFactory;
|
||||
private readonly IDbContextFactory<ApplicationDbContext> _dbFactory;
|
||||
private readonly ILogger<ListedNameProvider> _logger;
|
||||
|
||||
[SetsRequiredMembers]
|
||||
public ListedNameProvider(IDbContextFactory<ArchiveDbContext> context, ILogger<ListedNameProvider> logger)
|
||||
public ListedNameProvider(IDbContextFactory<ApplicationDbContext> context, ILogger<ListedNameProvider> logger)
|
||||
{
|
||||
_dbFactory = context;
|
||||
_logger = logger;
|
||||
@@ -23,12 +23,12 @@ public class ListedNameProvider : IListedNameProvider
|
||||
return await context.ArtifactAssociatedNames.Where(n => n.Id == id).FirstOrDefaultAsync();
|
||||
}
|
||||
|
||||
public async Task<List<ListedName>?> GetAssociatedNamesAsync(string firstName, string lastName)
|
||||
public async Task<List<ListedName>?> GetAssociatedNamesAsync(string name)
|
||||
{
|
||||
await using var context = await _dbFactory.CreateDbContextAsync();
|
||||
|
||||
return await context.ArtifactAssociatedNames
|
||||
.Where(n => n.FirstName == firstName && n.LastName == lastName)
|
||||
.Where(n => n.Value == name)
|
||||
.ToListAsync();
|
||||
}
|
||||
|
||||
@@ -63,7 +63,7 @@ public class ListedNameProvider : IListedNameProvider
|
||||
var lowerCaseQuery = query.ToLower();
|
||||
|
||||
return await context.ArtifactAssociatedNames
|
||||
.Where(p => (p.FirstName + " " + p.LastName).ToLower().Contains(lowerCaseQuery))
|
||||
.Where(p => p.Value.ToLower().Contains(lowerCaseQuery))
|
||||
.ToListAsync();
|
||||
}
|
||||
|
||||
@@ -72,7 +72,7 @@ public class ListedNameProvider : IListedNameProvider
|
||||
await using var context = await _dbFactory.CreateDbContextAsync();
|
||||
|
||||
return await context.ArtifactAssociatedNames
|
||||
.OrderBy(p => p.FirstName)
|
||||
.OrderBy(p => p.Value)
|
||||
.Take(count)
|
||||
.ToListAsync();
|
||||
}
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -9,9 +9,10 @@
|
||||
"OpenArchival.DataAccess/1.0.0": {
|
||||
"dependencies": {
|
||||
"EntityFramework": "6.5.1",
|
||||
"Microsoft.EntityFrameworkCore": "9.0.7",
|
||||
"Microsoft.EntityFrameworkCore.Design": "9.0.7",
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
||||
"Microsoft.AspNetCore.Identity.EntityFrameworkCore": "9.0.8",
|
||||
"Microsoft.EntityFrameworkCore": "9.0.8",
|
||||
"Microsoft.EntityFrameworkCore.Design": "9.0.8",
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.8",
|
||||
"Npgsql": "9.0.3",
|
||||
"Npgsql.EntityFrameworkCore.PostgreSQL": "9.0.4"
|
||||
},
|
||||
@@ -46,6 +47,37 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.AspNetCore.Cryptography.Internal/9.0.8": {
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.AspNetCore.Cryptography.Internal.dll": {
|
||||
"assemblyVersion": "9.0.0.0",
|
||||
"fileVersion": "9.0.825.36808"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.AspNetCore.Cryptography.KeyDerivation/9.0.8": {
|
||||
"dependencies": {
|
||||
"Microsoft.AspNetCore.Cryptography.Internal": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.AspNetCore.Cryptography.KeyDerivation.dll": {
|
||||
"assemblyVersion": "9.0.0.0",
|
||||
"fileVersion": "9.0.825.36808"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.AspNetCore.Identity.EntityFrameworkCore/9.0.8": {
|
||||
"dependencies": {
|
||||
"Microsoft.EntityFrameworkCore.Relational": "9.0.8",
|
||||
"Microsoft.Extensions.Identity.Stores": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.AspNetCore.Identity.EntityFrameworkCore.dll": {
|
||||
"assemblyVersion": "9.0.8.0",
|
||||
"fileVersion": "9.0.825.36808"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Bcl.AsyncInterfaces/7.0.0": {
|
||||
"runtime": {
|
||||
"lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": {
|
||||
@@ -288,7 +320,7 @@
|
||||
"Microsoft.Build.Framework": "17.8.3",
|
||||
"Microsoft.CodeAnalysis.Common": "4.8.0",
|
||||
"Microsoft.CodeAnalysis.Workspaces.Common": "4.8.0",
|
||||
"System.Text.Json": "9.0.7"
|
||||
"System.Text.Json": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net7.0/Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.dll": {
|
||||
@@ -343,30 +375,30 @@
|
||||
}
|
||||
},
|
||||
"Microsoft.CSharp/4.7.0": {},
|
||||
"Microsoft.EntityFrameworkCore/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore/9.0.8": {
|
||||
"dependencies": {
|
||||
"Microsoft.EntityFrameworkCore.Abstractions": "9.0.7",
|
||||
"Microsoft.EntityFrameworkCore.Analyzers": "9.0.7",
|
||||
"Microsoft.Extensions.Caching.Memory": "9.0.7",
|
||||
"Microsoft.Extensions.Logging": "9.0.7"
|
||||
"Microsoft.EntityFrameworkCore.Abstractions": "9.0.8",
|
||||
"Microsoft.EntityFrameworkCore.Analyzers": "9.0.8",
|
||||
"Microsoft.Extensions.Caching.Memory": "9.0.8",
|
||||
"Microsoft.Extensions.Logging": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
|
||||
"assemblyVersion": "9.0.7.0",
|
||||
"fileVersion": "9.0.725.31607"
|
||||
"assemblyVersion": "9.0.8.0",
|
||||
"fileVersion": "9.0.825.36802"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Abstractions/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore.Abstractions/9.0.8": {
|
||||
"runtime": {
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
|
||||
"assemblyVersion": "9.0.7.0",
|
||||
"fileVersion": "9.0.725.31607"
|
||||
"assemblyVersion": "9.0.8.0",
|
||||
"fileVersion": "9.0.825.36802"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Analyzers/9.0.7": {},
|
||||
"Microsoft.EntityFrameworkCore.Design/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore.Analyzers/9.0.8": {},
|
||||
"Microsoft.EntityFrameworkCore.Design/9.0.8": {
|
||||
"dependencies": {
|
||||
"Humanizer.Core": "2.14.1",
|
||||
"Microsoft.Build.Framework": "17.8.3",
|
||||
@@ -374,140 +406,166 @@
|
||||
"Microsoft.CodeAnalysis.CSharp": "4.8.0",
|
||||
"Microsoft.CodeAnalysis.CSharp.Workspaces": "4.8.0",
|
||||
"Microsoft.CodeAnalysis.Workspaces.MSBuild": "4.8.0",
|
||||
"Microsoft.EntityFrameworkCore.Relational": "9.0.7",
|
||||
"Microsoft.Extensions.Caching.Memory": "9.0.7",
|
||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.DependencyModel": "9.0.7",
|
||||
"Microsoft.Extensions.Logging": "9.0.7",
|
||||
"Microsoft.EntityFrameworkCore.Relational": "9.0.8",
|
||||
"Microsoft.Extensions.Caching.Memory": "9.0.8",
|
||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.DependencyModel": "9.0.8",
|
||||
"Microsoft.Extensions.Logging": "9.0.8",
|
||||
"Mono.TextTemplating": "3.0.0",
|
||||
"System.Text.Json": "9.0.7"
|
||||
"System.Text.Json": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.Design.dll": {
|
||||
"assemblyVersion": "9.0.7.0",
|
||||
"fileVersion": "9.0.725.31607"
|
||||
"assemblyVersion": "9.0.8.0",
|
||||
"fileVersion": "9.0.825.36802"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Relational/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore.Relational/9.0.8": {
|
||||
"dependencies": {
|
||||
"Microsoft.EntityFrameworkCore": "9.0.7",
|
||||
"Microsoft.Extensions.Caching.Memory": "9.0.7",
|
||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.Logging": "9.0.7"
|
||||
"Microsoft.EntityFrameworkCore": "9.0.8",
|
||||
"Microsoft.Extensions.Caching.Memory": "9.0.8",
|
||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.Logging": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
|
||||
"assemblyVersion": "9.0.7.0",
|
||||
"fileVersion": "9.0.725.31607"
|
||||
"assemblyVersion": "9.0.8.0",
|
||||
"fileVersion": "9.0.825.36802"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Caching.Abstractions/9.0.7": {
|
||||
"Microsoft.Extensions.Caching.Abstractions/9.0.8": {
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
||||
"Microsoft.Extensions.Primitives": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.Caching.Abstractions.dll": {
|
||||
"assemblyVersion": "9.0.0.0",
|
||||
"fileVersion": "9.0.725.31616"
|
||||
"fileVersion": "9.0.825.36511"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Caching.Memory/9.0.7": {
|
||||
"Microsoft.Extensions.Caching.Memory/9.0.8": {
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.Caching.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.Options": "9.0.7",
|
||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
||||
"Microsoft.Extensions.Caching.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.Options": "9.0.8",
|
||||
"Microsoft.Extensions.Primitives": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.Caching.Memory.dll": {
|
||||
"assemblyVersion": "9.0.0.0",
|
||||
"fileVersion": "9.0.725.31616"
|
||||
"fileVersion": "9.0.825.36511"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Configuration.Abstractions/9.0.7": {
|
||||
"Microsoft.Extensions.Configuration.Abstractions/9.0.8": {
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
||||
"Microsoft.Extensions.Primitives": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
|
||||
"assemblyVersion": "9.0.0.0",
|
||||
"fileVersion": "9.0.725.31616"
|
||||
"fileVersion": "9.0.825.36511"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.DependencyInjection/9.0.7": {
|
||||
"Microsoft.Extensions.DependencyInjection/9.0.8": {
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7"
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.DependencyInjection.dll": {
|
||||
"assemblyVersion": "9.0.0.0",
|
||||
"fileVersion": "9.0.725.31616"
|
||||
"fileVersion": "9.0.825.36511"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions/9.0.7": {
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions/9.0.8": {
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
|
||||
"assemblyVersion": "9.0.0.0",
|
||||
"fileVersion": "9.0.725.31616"
|
||||
"fileVersion": "9.0.825.36511"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.DependencyModel/9.0.7": {
|
||||
"Microsoft.Extensions.DependencyModel/9.0.8": {
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.DependencyModel.dll": {
|
||||
"assemblyVersion": "9.0.0.7",
|
||||
"fileVersion": "9.0.725.31616"
|
||||
"assemblyVersion": "9.0.0.8",
|
||||
"fileVersion": "9.0.825.36511"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Logging/9.0.7": {
|
||||
"Microsoft.Extensions.Identity.Core/9.0.8": {
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection": "9.0.7",
|
||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.Options": "9.0.7"
|
||||
"Microsoft.AspNetCore.Cryptography.KeyDerivation": "9.0.8",
|
||||
"Microsoft.Extensions.Logging": "9.0.8",
|
||||
"Microsoft.Extensions.Options": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.Identity.Core.dll": {
|
||||
"assemblyVersion": "9.0.0.0",
|
||||
"fileVersion": "9.0.825.36808"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Identity.Stores/9.0.8": {
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.Caching.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.Identity.Core": "9.0.8",
|
||||
"Microsoft.Extensions.Logging": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.Identity.Stores.dll": {
|
||||
"assemblyVersion": "9.0.0.0",
|
||||
"fileVersion": "9.0.825.36808"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Logging/9.0.8": {
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection": "9.0.8",
|
||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.Options": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.Logging.dll": {
|
||||
"assemblyVersion": "9.0.0.0",
|
||||
"fileVersion": "9.0.725.31616"
|
||||
"fileVersion": "9.0.825.36511"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Logging.Abstractions/9.0.7": {
|
||||
"Microsoft.Extensions.Logging.Abstractions/9.0.8": {
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7"
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll": {
|
||||
"assemblyVersion": "9.0.0.0",
|
||||
"fileVersion": "9.0.725.31616"
|
||||
"fileVersion": "9.0.825.36511"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Options/9.0.7": {
|
||||
"Microsoft.Extensions.Options/9.0.8": {
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.Primitives": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.Options.dll": {
|
||||
"assemblyVersion": "9.0.0.0",
|
||||
"fileVersion": "9.0.725.31616"
|
||||
"fileVersion": "9.0.825.36511"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Primitives/9.0.7": {
|
||||
"Microsoft.Extensions.Primitives/9.0.8": {
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.Primitives.dll": {
|
||||
"assemblyVersion": "9.0.0.0",
|
||||
"fileVersion": "9.0.725.31616"
|
||||
"fileVersion": "9.0.825.36511"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -546,7 +604,7 @@
|
||||
},
|
||||
"Npgsql/9.0.3": {
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.7"
|
||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.8"
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net8.0/Npgsql.dll": {
|
||||
@@ -557,8 +615,8 @@
|
||||
},
|
||||
"Npgsql.EntityFrameworkCore.PostgreSQL/9.0.4": {
|
||||
"dependencies": {
|
||||
"Microsoft.EntityFrameworkCore": "9.0.7",
|
||||
"Microsoft.EntityFrameworkCore.Relational": "9.0.7",
|
||||
"Microsoft.EntityFrameworkCore": "9.0.8",
|
||||
"Microsoft.EntityFrameworkCore.Relational": "9.0.8",
|
||||
"Npgsql": "9.0.3"
|
||||
},
|
||||
"runtime": {
|
||||
@@ -773,7 +831,7 @@
|
||||
}
|
||||
},
|
||||
"System.Security.Principal.Windows/4.7.0": {},
|
||||
"System.Text.Json/9.0.7": {},
|
||||
"System.Text.Json/9.0.8": {},
|
||||
"System.Threading.Channels/7.0.0": {},
|
||||
"System.Windows.Extensions/6.0.0": {
|
||||
"dependencies": {
|
||||
@@ -816,6 +874,27 @@
|
||||
"path": "humanizer.core/2.14.1",
|
||||
"hashPath": "humanizer.core.2.14.1.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.AspNetCore.Cryptography.Internal/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-NwGO0wh/IjEthBLGA6fWfIiftsNF/paA5RxWp6ji4wWazetJgQ4truR9nU2thAzzFLiXqlg8vGjdVDA8bHu0zA==",
|
||||
"path": "microsoft.aspnetcore.cryptography.internal/9.0.8",
|
||||
"hashPath": "microsoft.aspnetcore.cryptography.internal.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.AspNetCore.Cryptography.KeyDerivation/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-gK70xxXYwwPiXYKYVmLYMuIO5EOGrRtQghmM6PkgtZ/0lgLEjIs//xgSLvZkV/mroNHA1DEqTcqscEj9OzZ1IA==",
|
||||
"path": "microsoft.aspnetcore.cryptography.keyderivation/9.0.8",
|
||||
"hashPath": "microsoft.aspnetcore.cryptography.keyderivation.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.AspNetCore.Identity.EntityFrameworkCore/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-z4q9roxXMQePwFM5tXXZS5sKkU78yYXVkj56NYYx9xKe+mxGkJMV1MaO0GFE6HnnM8bE3Xxhs0hAPw2jKbse6w==",
|
||||
"path": "microsoft.aspnetcore.identity.entityframeworkcore/9.0.8",
|
||||
"hashPath": "microsoft.aspnetcore.identity.entityframeworkcore.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Bcl.AsyncInterfaces/7.0.0": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
@@ -886,110 +965,124 @@
|
||||
"path": "microsoft.csharp/4.7.0",
|
||||
"hashPath": "microsoft.csharp.4.7.0.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-PbD0q5ax15r91jD4TN7xbDCjldZSz4JfpYN4ZZjAkWeUyROkV92Ydg0O2/1keFA+2u3KPsDkJMmBKv2zQ06ZVg==",
|
||||
"path": "microsoft.entityframeworkcore/9.0.7",
|
||||
"hashPath": "microsoft.entityframeworkcore.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-bNGdPhN762+BIIO5MFYLjafRqkSS1MqLOc/erd55InvLnFxt9H3N5JNsuag1ZHyBor1VtD42U0CHpgqkWeAYgQ==",
|
||||
"path": "microsoft.entityframeworkcore/9.0.8",
|
||||
"hashPath": "microsoft.entityframeworkcore.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Abstractions/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore.Abstractions/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-YUXNerEkCf4OANO+zjuMznpUW7R8XxSCqmBfYhBrbrJVc09i84KkNgeUTaOUXCGogSK/3d7ORRhMqfUobnejBg==",
|
||||
"path": "microsoft.entityframeworkcore.abstractions/9.0.7",
|
||||
"hashPath": "microsoft.entityframeworkcore.abstractions.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-B2yfAIQRRAQ4zvvWqh+HudD+juV3YoLlpXnrog3tU0PM9AFpuq6xo0+mEglN1P43WgdcUiF+65CWBcZe35s15Q==",
|
||||
"path": "microsoft.entityframeworkcore.abstractions/9.0.8",
|
||||
"hashPath": "microsoft.entityframeworkcore.abstractions.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Analyzers/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore.Analyzers/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-HqiPjAvjVOsyA1svnjL81/Wk2MRQYMK/lxKVWvw0f5IcA//VcxBepVSAqe7CFirdsPXqe8rFKEwZROWZTz7Jqw==",
|
||||
"path": "microsoft.entityframeworkcore.analyzers/9.0.7",
|
||||
"hashPath": "microsoft.entityframeworkcore.analyzers.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-2EYStCXt4Hi9p3J3EYMQbItJDtASJd064Kcs8C8hj8Jt5srILrR9qlaL0Ryvk8NrWQoCQvIELsmiuqLEZMLvGA==",
|
||||
"path": "microsoft.entityframeworkcore.analyzers/9.0.8",
|
||||
"hashPath": "microsoft.entityframeworkcore.analyzers.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Design/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore.Design/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-zvZ2/bRwdPrBfQ2fRd2IQL6icyIOtosZSz2QpXtsn7M+c6e4GvpNfpSxBprLfoKhH6NeAFNV9ool0Vp/1DJd/A==",
|
||||
"path": "microsoft.entityframeworkcore.design/9.0.7",
|
||||
"hashPath": "microsoft.entityframeworkcore.design.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-02e8OcoumSUAES3VkXrMT9EnNCUKWJoifn5+8fFEbAtRhKL3xg2a/Mj6rsAUGF7tkYFox6oKzJCn0jbm6b8Lbw==",
|
||||
"path": "microsoft.entityframeworkcore.design/9.0.8",
|
||||
"hashPath": "microsoft.entityframeworkcore.design.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Relational/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore.Relational/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-Yo5joquG7L79H5BhtpqP8apu+KFOAYfvmj0dZnVkPElBY14wY5qva0SOcrDWzYw5BrJrhIArfCcJCJHBvMYiKg==",
|
||||
"path": "microsoft.entityframeworkcore.relational/9.0.7",
|
||||
"hashPath": "microsoft.entityframeworkcore.relational.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-OVhfyxiHxMvYpwQ8Jy3YZi4koy6TK5/Q7C1oq3z6db+HEGuu6x9L1BX5zDIdJxxlRePMyO4D8ORiXj/D7+MUqw==",
|
||||
"path": "microsoft.entityframeworkcore.relational/9.0.8",
|
||||
"hashPath": "microsoft.entityframeworkcore.relational.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Extensions.Caching.Abstractions/9.0.7": {
|
||||
"Microsoft.Extensions.Caching.Abstractions/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-30necCQehcg9lFkMEIE7HczcoYGML8GUH6jlincA18d896fLZM9wl5tpTPJHgzANQE/6KXRLZSWbgevgg5csSw==",
|
||||
"path": "microsoft.extensions.caching.abstractions/9.0.7",
|
||||
"hashPath": "microsoft.extensions.caching.abstractions.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-4h7bsVoKoiK+SlPM+euX/ayGnKZhl47pPCidLTiio9xyG+vgVVfcYxcYQgjm0SCrdSxjG0EGIAKF8EFr3G8Ifw==",
|
||||
"path": "microsoft.extensions.caching.abstractions/9.0.8",
|
||||
"hashPath": "microsoft.extensions.caching.abstractions.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Extensions.Caching.Memory/9.0.7": {
|
||||
"Microsoft.Extensions.Caching.Memory/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-nDu6c8fwrHQYccLnWnvyElrdkL3rZ97TZNqL+niMFUcApVBHdpDmKcRvciGymJ4Y0iLDTOo5J2XhDQEbNb+dFg==",
|
||||
"path": "microsoft.extensions.caching.memory/9.0.7",
|
||||
"hashPath": "microsoft.extensions.caching.memory.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-grR+oPyj8HVn4DT8CFUUdSw2pZZKS13KjytFe4txpHQliGM1GEDotohmjgvyl3hm7RFB3FRqvbouEX3/1ewp5A==",
|
||||
"path": "microsoft.extensions.caching.memory/9.0.8",
|
||||
"hashPath": "microsoft.extensions.caching.memory.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Extensions.Configuration.Abstractions/9.0.7": {
|
||||
"Microsoft.Extensions.Configuration.Abstractions/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-lut/kiVvNsQ120VERMUYSFhpXPpKjjql+giy03LesASPBBcC0o6+aoFdzJH9GaYpFTQ3fGVhVjKjvJDoAW5/IQ==",
|
||||
"path": "microsoft.extensions.configuration.abstractions/9.0.7",
|
||||
"hashPath": "microsoft.extensions.configuration.abstractions.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-yNou2KM35RvzOh4vUFtl2l33rWPvOCoba+nzEDJ+BgD8aOL/jew4WPCibQvntRfOJ2pJU8ARygSMD+pdjvDHuA==",
|
||||
"path": "microsoft.extensions.configuration.abstractions/9.0.8",
|
||||
"hashPath": "microsoft.extensions.configuration.abstractions.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Extensions.DependencyInjection/9.0.7": {
|
||||
"Microsoft.Extensions.DependencyInjection/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-i05AYA91vgq0as84ROVCyltD2gnxaba/f1Qw2rG7mUsS0gv8cPTr1Gm7jPQHq7JTr4MJoQUcanLVs16tIOUJaQ==",
|
||||
"path": "microsoft.extensions.dependencyinjection/9.0.7",
|
||||
"hashPath": "microsoft.extensions.dependencyinjection.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-JJjI2Fa+QtZcUyuNjbKn04OjIUX5IgFGFu/Xc+qvzh1rXdZHLcnqqVXhR4093bGirTwacRlHiVg1XYI9xum6QQ==",
|
||||
"path": "microsoft.extensions.dependencyinjection/9.0.8",
|
||||
"hashPath": "microsoft.extensions.dependencyinjection.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions/9.0.7": {
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-iPK1FxbGFr2Xb+4Y+dTYI8Gupu9pOi8I3JPuPsrogUmEhe2hzZ9LpCmolMEBhVDo2ikcSr7G5zYiwaapHSQTew==",
|
||||
"path": "microsoft.extensions.dependencyinjection.abstractions/9.0.7",
|
||||
"hashPath": "microsoft.extensions.dependencyinjection.abstractions.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-xY3lTjj4+ZYmiKIkyWitddrp1uL5uYiweQjqo4BKBw01ZC4HhcfgLghDpPZcUlppgWAFqFy9SgkiYWOMx365pw==",
|
||||
"path": "microsoft.extensions.dependencyinjection.abstractions/9.0.8",
|
||||
"hashPath": "microsoft.extensions.dependencyinjection.abstractions.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Extensions.DependencyModel/9.0.7": {
|
||||
"Microsoft.Extensions.DependencyModel/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-aXEt8QW1Fj9aC81GfkMtfip4wfbkEA7VBvNkx6Rx6ZKyqXIF/9qzRtH6v/2096IDK4lt6dlQp5Ajf+kjHfUdOA==",
|
||||
"path": "microsoft.extensions.dependencymodel/9.0.7",
|
||||
"hashPath": "microsoft.extensions.dependencymodel.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-3CW02zNjyqJ2eORo8Zkznpw6+QvK+tYUKZgKuKuAIYdy73TRFvpaqCwYws1k6/lMSJ7ZqABfWn0/wa5bRsIJ4w==",
|
||||
"path": "microsoft.extensions.dependencymodel/9.0.8",
|
||||
"hashPath": "microsoft.extensions.dependencymodel.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Extensions.Logging/9.0.7": {
|
||||
"Microsoft.Extensions.Identity.Core/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-fdIeQpXYV8yxSWG03cCbU2Otdrq4NWuhnQLXokWLv3L9YcK055E7u8WFJvP+uuP4CFeCEoqZQL4yPcjuXhCZrg==",
|
||||
"path": "microsoft.extensions.logging/9.0.7",
|
||||
"hashPath": "microsoft.extensions.logging.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-giUYz84GHAizDucZp5vWAusDO2s9Jrrg2jQ6HUQNGs5HQMKJVobLPMQSiyg8R4yecH0pIc0QjANh0B/Kw13BHA==",
|
||||
"path": "microsoft.extensions.identity.core/9.0.8",
|
||||
"hashPath": "microsoft.extensions.identity.core.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Extensions.Logging.Abstractions/9.0.7": {
|
||||
"Microsoft.Extensions.Identity.Stores/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-sMM6NEAdUTE/elJ2wqjOi0iBWqZmSyaTByLF9e8XHv6DRJFFnOe0N+s8Uc6C91E4SboQCfLswaBIZ+9ZXA98AA==",
|
||||
"path": "microsoft.extensions.logging.abstractions/9.0.7",
|
||||
"hashPath": "microsoft.extensions.logging.abstractions.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-sycaHcq78yI591+KxEdd53a7pJGQEl9H/wDsFkaPNE9g7loyq8vufPcc/9RH3KlGt5joR5Ey7PdoRSrlLjCgJg==",
|
||||
"path": "microsoft.extensions.identity.stores/9.0.8",
|
||||
"hashPath": "microsoft.extensions.identity.stores.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Extensions.Options/9.0.7": {
|
||||
"Microsoft.Extensions.Logging/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-trJnF6cRWgR5uMmHpGoHmM1wOVFdIYlELlkO9zX+RfieK0321Y55zrcs4AaEymKup7dxgEN/uJU25CAcMNQRXw==",
|
||||
"path": "microsoft.extensions.options/9.0.7",
|
||||
"hashPath": "microsoft.extensions.options.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-Z/7ze+0iheT7FJeZPqJKARYvyC2bmwu3whbm/48BJjdlGVvgDguoCqJIkI/67NkroTYobd5geai1WheNQvWrgA==",
|
||||
"path": "microsoft.extensions.logging/9.0.8",
|
||||
"hashPath": "microsoft.extensions.logging.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Extensions.Primitives/9.0.7": {
|
||||
"Microsoft.Extensions.Logging.Abstractions/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-ti/zD9BuuO50IqlvhWQs9GHxkCmoph5BHjGiWKdg2t6Or8XoyAfRJiKag+uvd/fpASnNklfsB01WpZ4fhAe0VQ==",
|
||||
"path": "microsoft.extensions.primitives/9.0.7",
|
||||
"hashPath": "microsoft.extensions.primitives.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-pYnAffJL7ARD/HCnnPvnFKSIHnTSmWz84WIlT9tPeQ4lHNiu0Az7N/8itihWvcF8sT+VVD5lq8V+ckMzu4SbOw==",
|
||||
"path": "microsoft.extensions.logging.abstractions/9.0.8",
|
||||
"hashPath": "microsoft.extensions.logging.abstractions.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Extensions.Options/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-OmTaQ0v4gxGQkehpwWIqPoEiwsPuG/u4HUsbOFoWGx4DKET2AXzopnFe/fE608FIhzc/kcg2p8JdyMRCCUzitQ==",
|
||||
"path": "microsoft.extensions.options/9.0.8",
|
||||
"hashPath": "microsoft.extensions.options.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Extensions.Primitives/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-tizSIOEsIgSNSSh+hKeUVPK7xmTIjR8s+mJWOu1KXV3htvNQiPMFRMO17OdI1y/4ZApdBVk49u/08QGC9yvLug==",
|
||||
"path": "microsoft.extensions.primitives/9.0.8",
|
||||
"hashPath": "microsoft.extensions.primitives.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"Microsoft.Win32.Registry/4.7.0": {
|
||||
"type": "package",
|
||||
@@ -1187,12 +1280,12 @@
|
||||
"path": "system.security.principal.windows/4.7.0",
|
||||
"hashPath": "system.security.principal.windows.4.7.0.nupkg.sha512"
|
||||
},
|
||||
"System.Text.Json/9.0.7": {
|
||||
"System.Text.Json/9.0.8": {
|
||||
"type": "package",
|
||||
"serviceable": true,
|
||||
"sha512": "sha512-u/lN2FEEXs3ghj2ta8tWA4r2MS9Yni07K7jDmnz8h1UPDf0lIIIEMkWx383Zz4fJjJio7gDl+00RYuQ/7R8ZQw==",
|
||||
"path": "system.text.json/9.0.7",
|
||||
"hashPath": "system.text.json.9.0.7.nupkg.sha512"
|
||||
"sha512": "sha512-mIQir9jBqk0V7X0Nw5hzPJZC8DuGdf+2DS3jAVsr6rq5+/VyH5rza0XGcONJUWBrZ+G6BCwNyjWYd9lncBu48A==",
|
||||
"path": "system.text.json/9.0.8",
|
||||
"hashPath": "system.text.json.9.0.8.nupkg.sha512"
|
||||
},
|
||||
"System.Threading.Channels/7.0.0": {
|
||||
"type": "package",
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -15,7 +15,7 @@ using System.Reflection;
|
||||
[assembly: System.Reflection.AssemblyCompanyAttribute("OpenArchival.DataAccess")]
|
||||
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+57f67e85356af6759fc0211e8a510bd5b9f63dfa")]
|
||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+dd3968f6effa8f45f27a3ec91c34762c88380f06")]
|
||||
[assembly: System.Reflection.AssemblyProductAttribute("OpenArchival.DataAccess")]
|
||||
[assembly: System.Reflection.AssemblyTitleAttribute("OpenArchival.DataAccess")]
|
||||
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||
|
||||
@@ -1 +1 @@
|
||||
808f6c610c1c46216d223aa1e70b8807727983a986fd71ba08b5576fad3f7e5e
|
||||
3f1dc26310f431c1735242d3a315e070d6215de828a0f93ee5bf50c1e5b9de38
|
||||
|
||||
@@ -17,13 +17,13 @@ build_property._SupportedPlatformList = Linux,macOS,Windows
|
||||
build_property._SupportedPlatformList = Linux,macOS,Windows
|
||||
build_property.RootNamespace = OpenArchival.DataAccess
|
||||
build_property.RootNamespace = OpenArchival.DataAccess
|
||||
build_property.ProjectDir = E:\Open-Archival\OpenArchival.DataAccess\
|
||||
build_property.ProjectDir = D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\
|
||||
build_property.EnableComHosting =
|
||||
build_property.EnableGeneratedComInterfaceComImportInterop =
|
||||
build_property.RazorLangVersion = 9.0
|
||||
build_property.SupportLocalizedComponentNames =
|
||||
build_property.GenerateRazorMetadataSourceChecksumAttributes =
|
||||
build_property.MSBuildProjectDirectory = E:\Open-Archival\OpenArchival.DataAccess
|
||||
build_property.MSBuildProjectDirectory = D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess
|
||||
build_property._RazorSourceGeneratorDebug =
|
||||
build_property.EffectiveAnalysisLevelStyle = 9.0
|
||||
build_property.EnableCodeStyleSeverity =
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
||||
3f7bfc7be1cfc2225aad8cc99eb2f41902b3708d4b14fcb913d1f4046f795c81
|
||||
d522794407833b06ba6eccd7e464f0208f52e133c1fb09f86eb438d0e9e5f2be
|
||||
|
||||
@@ -290,3 +290,304 @@ E:\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\unix\lib\net6
|
||||
E:\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win\lib\net6.0\System.Drawing.Common.dll
|
||||
E:\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win\lib\net6.0\System.Security.Cryptography.ProtectedData.dll
|
||||
E:\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win\lib\net6.0\System.Windows.Extensions.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\appsettings.json
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\OpenArchival.DataAccess.staticwebassets.endpoints.json
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\OpenArchival.DataAccess.exe
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\OpenArchival.DataAccess.deps.json
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\OpenArchival.DataAccess.runtimeconfig.json
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\OpenArchival.DataAccess.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\OpenArchival.DataAccess.pdb
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\EntityFramework.SqlServer.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\EntityFramework.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Humanizer.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.AspNetCore.Cryptography.Internal.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.AspNetCore.Cryptography.KeyDerivation.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.AspNetCore.Identity.EntityFrameworkCore.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Bcl.AsyncInterfaces.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Build.Locator.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.CodeAnalysis.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.CodeAnalysis.CSharp.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.CodeAnalysis.CSharp.Workspaces.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.CodeAnalysis.Workspaces.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.CodeAnalysis.Workspaces.MSBuild.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.EntityFrameworkCore.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.EntityFrameworkCore.Abstractions.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.EntityFrameworkCore.Design.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.EntityFrameworkCore.Relational.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Caching.Abstractions.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Caching.Memory.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Configuration.Abstractions.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.DependencyInjection.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.DependencyModel.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Identity.Core.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Identity.Stores.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Logging.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Logging.Abstractions.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Options.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Primitives.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Win32.SystemEvents.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Mono.TextTemplating.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Npgsql.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Npgsql.EntityFrameworkCore.PostgreSQL.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.CodeDom.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Composition.AttributedModel.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Composition.Convention.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Composition.Hosting.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Composition.Runtime.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Composition.TypedParts.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Configuration.ConfigurationManager.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Data.SqlClient.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Drawing.Common.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Security.Cryptography.ProtectedData.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Security.Permissions.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Windows.Extensions.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\cs\Microsoft.CodeAnalysis.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\de\Microsoft.CodeAnalysis.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\es\Microsoft.CodeAnalysis.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\fr\Microsoft.CodeAnalysis.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\it\Microsoft.CodeAnalysis.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ja\Microsoft.CodeAnalysis.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ko\Microsoft.CodeAnalysis.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pl\Microsoft.CodeAnalysis.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pt-BR\Microsoft.CodeAnalysis.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ru\Microsoft.CodeAnalysis.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\tr\Microsoft.CodeAnalysis.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hans\Microsoft.CodeAnalysis.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hant\Microsoft.CodeAnalysis.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\cs\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\de\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\es\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\fr\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\it\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ja\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ko\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pl\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pt-BR\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ru\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\tr\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hans\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hant\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\cs\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\de\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\es\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\fr\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\it\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ja\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ko\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pl\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pt-BR\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ru\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\tr\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hans\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hant\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\cs\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\de\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\es\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\fr\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\it\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ja\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ko\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pl\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pt-BR\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ru\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\tr\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hans\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hant\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\cs\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\de\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\es\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\fr\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\it\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ja\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ko\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pl\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pt-BR\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ru\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\tr\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hans\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hant\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win\lib\net6.0\Microsoft.Win32.SystemEvents.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win-arm64\native\sni.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win-x64\native\sni.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win-x86\native\sni.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\unix\lib\netcoreapp2.1\System.Data.SqlClient.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win\lib\netcoreapp2.1\System.Data.SqlClient.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\unix\lib\net6.0\System.Drawing.Common.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win\lib\net6.0\System.Drawing.Common.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win\lib\net6.0\System.Security.Cryptography.ProtectedData.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win\lib\net6.0\System.Windows.Extensions.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.csproj.AssemblyReference.cache
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\rpswa.dswa.cache.json
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.GeneratedMSBuildEditorConfig.editorconfig
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.AssemblyInfoInputs.cache
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.AssemblyInfo.cs
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.csproj.CoreCompileInputs.cache
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.MvcApplicationPartsAssemblyInfo.cache
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.sourcelink.json
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\rjimswa.dswa.cache.json
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\rjsmrazor.dswa.cache.json
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\rjsmcshtml.dswa.cache.json
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\scopedcss\bundle\OpenArchival.DataAccess.styles.css
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\staticwebassets.build.json
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\staticwebassets.build.json.cache
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\staticwebassets.development.json
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\staticwebassets.build.endpoints.json
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArch.D40B5A94.Up2Date
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\refint\OpenArchival.DataAccess.dll
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.pdb
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.genruntimeconfig.cache
|
||||
C:\Users\Vincent Allen\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\ref\OpenArchival.DataAccess.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\appsettings.json
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\OpenArchival.DataAccess.staticwebassets.endpoints.json
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\OpenArchival.DataAccess.exe
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\OpenArchival.DataAccess.deps.json
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\OpenArchival.DataAccess.runtimeconfig.json
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\OpenArchival.DataAccess.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\OpenArchival.DataAccess.pdb
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\EntityFramework.SqlServer.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\EntityFramework.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Humanizer.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.AspNetCore.Cryptography.Internal.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.AspNetCore.Cryptography.KeyDerivation.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.AspNetCore.Identity.EntityFrameworkCore.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Bcl.AsyncInterfaces.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Build.Locator.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.CodeAnalysis.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.CodeAnalysis.CSharp.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.CodeAnalysis.CSharp.Workspaces.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.CodeAnalysis.Workspaces.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.CodeAnalysis.Workspaces.MSBuild.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.EntityFrameworkCore.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.EntityFrameworkCore.Abstractions.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.EntityFrameworkCore.Design.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.EntityFrameworkCore.Relational.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Caching.Abstractions.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Caching.Memory.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Configuration.Abstractions.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.DependencyInjection.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.DependencyModel.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Identity.Core.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Identity.Stores.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Logging.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Logging.Abstractions.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Options.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Extensions.Primitives.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Microsoft.Win32.SystemEvents.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Mono.TextTemplating.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Npgsql.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\Npgsql.EntityFrameworkCore.PostgreSQL.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.CodeDom.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Composition.AttributedModel.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Composition.Convention.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Composition.Hosting.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Composition.Runtime.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Composition.TypedParts.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Configuration.ConfigurationManager.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Data.SqlClient.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Drawing.Common.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Security.Cryptography.ProtectedData.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Security.Permissions.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\System.Windows.Extensions.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\cs\Microsoft.CodeAnalysis.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\de\Microsoft.CodeAnalysis.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\es\Microsoft.CodeAnalysis.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\fr\Microsoft.CodeAnalysis.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\it\Microsoft.CodeAnalysis.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ja\Microsoft.CodeAnalysis.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ko\Microsoft.CodeAnalysis.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pl\Microsoft.CodeAnalysis.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pt-BR\Microsoft.CodeAnalysis.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ru\Microsoft.CodeAnalysis.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\tr\Microsoft.CodeAnalysis.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hans\Microsoft.CodeAnalysis.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hant\Microsoft.CodeAnalysis.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\cs\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\de\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\es\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\fr\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\it\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ja\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ko\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pl\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pt-BR\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ru\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\tr\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hans\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hant\Microsoft.CodeAnalysis.CSharp.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\cs\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\de\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\es\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\fr\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\it\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ja\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ko\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pl\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pt-BR\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ru\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\tr\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hans\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hant\Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\cs\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\de\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\es\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\fr\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\it\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ja\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ko\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pl\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pt-BR\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ru\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\tr\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hans\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hant\Microsoft.CodeAnalysis.Workspaces.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\cs\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\de\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\es\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\fr\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\it\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ja\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ko\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pl\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\pt-BR\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\ru\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\tr\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hans\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\zh-Hant\Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost.resources.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win\lib\net6.0\Microsoft.Win32.SystemEvents.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win-arm64\native\sni.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win-x64\native\sni.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win-x86\native\sni.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\unix\lib\netcoreapp2.1\System.Data.SqlClient.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win\lib\netcoreapp2.1\System.Data.SqlClient.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\unix\lib\net6.0\System.Drawing.Common.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win\lib\net6.0\System.Drawing.Common.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win\lib\net6.0\System.Security.Cryptography.ProtectedData.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\bin\Debug\net9.0\runtimes\win\lib\net6.0\System.Windows.Extensions.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.csproj.AssemblyReference.cache
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\rpswa.dswa.cache.json
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.GeneratedMSBuildEditorConfig.editorconfig
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.AssemblyInfoInputs.cache
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.AssemblyInfo.cs
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.csproj.CoreCompileInputs.cache
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.MvcApplicationPartsAssemblyInfo.cache
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.sourcelink.json
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\rjimswa.dswa.cache.json
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\rjsmrazor.dswa.cache.json
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\rjsmcshtml.dswa.cache.json
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\scopedcss\bundle\OpenArchival.DataAccess.styles.css
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\staticwebassets.build.json
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\staticwebassets.build.json.cache
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\staticwebassets.development.json
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\staticwebassets.build.endpoints.json
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArch.D40B5A94.Up2Date
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\refint\OpenArchival.DataAccess.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.pdb
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\OpenArchival.DataAccess.genruntimeconfig.cache
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\ref\OpenArchival.DataAccess.dll
|
||||
D:\Nextcloud\Documents\Open-Archival\OpenArchival.DataAccess\obj\Debug\net9.0\staticwebassets.upToDateCheck.txt
|
||||
|
||||
Binary file not shown.
@@ -1 +1 @@
|
||||
af4a363097039e05d80de9a719c83ac11441104edd473d4d6fd5082226e906dd
|
||||
da0a04e4e54dc974e94d8c1063ec630c247cb827f3d41b1ae6eb278ec5187927
|
||||
|
||||
Binary file not shown.
@@ -1 +1 @@
|
||||
{"documents":{"E:\\Open-Archival\\*":"https://raw.githubusercontent.com/vtallen/Open-Archival/57f67e85356af6759fc0211e8a510bd5b9f63dfa/*"}}
|
||||
{"documents":{"D:\\Nextcloud\\Documents\\Open-Archival\\*":"https://raw.githubusercontent.com/vtallen/Open-Archival/dd3968f6effa8f45f27a3ec91c34762c88380f06/*"}}
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
||||
{"GlobalPropertiesHash":"OJEKDWq9lWEmKslORR+s1Yv8f2prlba6bEhTFN02t5U=","FingerprintPatternsHash":"8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=","PropertyOverridesHash":"8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=","InputHashes":["nQ\u002BHUOtDmuDCQGtM7zXd209SlWbvBIJZES61USwqY5A=","4/9Si015IC3YmJ6Xix8zWBj06SRWILjSExte8OLbO8Q=","irVjzTLx0Z/BFXIABDZ1GotRlc4mBLgrZsZ2UGfwumY=","cdAgFiO\u002BnL3ryJYKkeuiod9Sn/pesPeRQrSrSVy88T8=","O1mm\u002Bt5ytSAy2lB1xcI4g3i\u002BQyFL\u002BdzKOosUJop08GY=","Xig047KP8P7Lig/Q0gTQtIKRBUHp\u002BiIvJ1MUU5P5mbQ="],"CachedAssets":{},"CachedCopyCandidates":{}}
|
||||
{"GlobalPropertiesHash":"J3r5h7pKF0kY0DRJx0Xqba86ngtHs3jduVq7GPX+nwI=","FingerprintPatternsHash":"8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=","PropertyOverridesHash":"8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=","InputHashes":["51WRq7nT/WTvnhamRxLn7Ony/A1bnAxDelsXO4Ehpwc=","aDrxgmPzfmAYNrzynmphKXORQNARBvx3ZJm3IcIlVIA=","dFQa1Ee6LWN6QaEoa8lulEtbH6imVMCsVrPTv7uB7rA=","KAWcEu8sopHLr7dsoLsr\u002Bz7vrHN0YxMtmdfBYeH1kwI=","\u002Bjyo4JejKGZVNH7yAY1POV7dsMBGmszgVLUsVwm0S6Y=","E6ltkajZSrcZfEd5mYBcKe4AnJ/ZOJ8hZBTp71ugK08="],"CachedAssets":{},"CachedCopyCandidates":{}}
|
||||
@@ -1 +1 @@
|
||||
{"GlobalPropertiesHash":"YfQizJn4zSp4AikfK1nxeFwsBV5ZIuB3IRWuUoYJGwE=","FingerprintPatternsHash":"8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=","PropertyOverridesHash":"8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=","InputHashes":["nQ\u002BHUOtDmuDCQGtM7zXd209SlWbvBIJZES61USwqY5A=","4/9Si015IC3YmJ6Xix8zWBj06SRWILjSExte8OLbO8Q=","irVjzTLx0Z/BFXIABDZ1GotRlc4mBLgrZsZ2UGfwumY=","cdAgFiO\u002BnL3ryJYKkeuiod9Sn/pesPeRQrSrSVy88T8=","O1mm\u002Bt5ytSAy2lB1xcI4g3i\u002BQyFL\u002BdzKOosUJop08GY=","Xig047KP8P7Lig/Q0gTQtIKRBUHp\u002BiIvJ1MUU5P5mbQ="],"CachedAssets":{},"CachedCopyCandidates":{}}
|
||||
{"GlobalPropertiesHash":"EHbx5ejyqDv8gH5NpOoZxRAV9glFiYxTGFnRTcGg8no=","FingerprintPatternsHash":"8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=","PropertyOverridesHash":"8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=","InputHashes":["51WRq7nT/WTvnhamRxLn7Ony/A1bnAxDelsXO4Ehpwc=","aDrxgmPzfmAYNrzynmphKXORQNARBvx3ZJm3IcIlVIA=","dFQa1Ee6LWN6QaEoa8lulEtbH6imVMCsVrPTv7uB7rA=","KAWcEu8sopHLr7dsoLsr\u002Bz7vrHN0YxMtmdfBYeH1kwI=","\u002Bjyo4JejKGZVNH7yAY1POV7dsMBGmszgVLUsVwm0S6Y=","E6ltkajZSrcZfEd5mYBcKe4AnJ/ZOJ8hZBTp71ugK08="],"CachedAssets":{},"CachedCopyCandidates":{}}
|
||||
@@ -1 +1 @@
|
||||
{"GlobalPropertiesHash":"0iteAXuNRYKccgQAeOh+tXRtjZ1XQefudIfX8+LTWdY=","FingerprintPatternsHash":"gq3WsqcKBUGTSNle7RKKyXRIwh7M8ccEqOqYvIzoM04=","PropertyOverridesHash":"8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=","InputHashes":["nQ\u002BHUOtDmuDCQGtM7zXd209SlWbvBIJZES61USwqY5A="],"CachedAssets":{},"CachedCopyCandidates":{}}
|
||||
{"GlobalPropertiesHash":"9cGwE8ue3wqBKu3kjFF7DFgS5ZARHdAQ0zvK3akV70c=","FingerprintPatternsHash":"gq3WsqcKBUGTSNle7RKKyXRIwh7M8ccEqOqYvIzoM04=","PropertyOverridesHash":"8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=","InputHashes":["51WRq7nT/WTvnhamRxLn7Ony/A1bnAxDelsXO4Ehpwc="],"CachedAssets":{},"CachedCopyCandidates":{}}
|
||||
@@ -1,23 +1,23 @@
|
||||
{
|
||||
"format": 1,
|
||||
"restore": {
|
||||
"E:\\Open-Archival\\OpenArchival.DataAccess\\OpenArchival.DataAccess.csproj": {}
|
||||
"D:\\Nextcloud\\Documents\\Open-Archival\\OpenArchival.DataAccess\\OpenArchival.DataAccess.csproj": {}
|
||||
},
|
||||
"projects": {
|
||||
"E:\\Open-Archival\\OpenArchival.DataAccess\\OpenArchival.DataAccess.csproj": {
|
||||
"D:\\Nextcloud\\Documents\\Open-Archival\\OpenArchival.DataAccess\\OpenArchival.DataAccess.csproj": {
|
||||
"version": "1.0.0",
|
||||
"restore": {
|
||||
"projectUniqueName": "E:\\Open-Archival\\OpenArchival.DataAccess\\OpenArchival.DataAccess.csproj",
|
||||
"projectUniqueName": "D:\\Nextcloud\\Documents\\Open-Archival\\OpenArchival.DataAccess\\OpenArchival.DataAccess.csproj",
|
||||
"projectName": "OpenArchival.DataAccess",
|
||||
"projectPath": "E:\\Open-Archival\\OpenArchival.DataAccess\\OpenArchival.DataAccess.csproj",
|
||||
"projectPath": "D:\\Nextcloud\\Documents\\Open-Archival\\OpenArchival.DataAccess\\OpenArchival.DataAccess.csproj",
|
||||
"packagesPath": "C:\\Users\\Vincent Allen\\.nuget\\packages\\",
|
||||
"outputPath": "E:\\Open-Archival\\OpenArchival.DataAccess\\obj\\",
|
||||
"outputPath": "D:\\Nextcloud\\Documents\\Open-Archival\\OpenArchival.DataAccess\\obj\\",
|
||||
"projectStyle": "PackageReference",
|
||||
"fallbackFolders": [
|
||||
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
|
||||
],
|
||||
"configFilePaths": [
|
||||
"E:\\Open-Archival\\NuGet.Config",
|
||||
"D:\\Nextcloud\\Documents\\Open-Archival\\NuGet.Config",
|
||||
"C:\\Users\\Vincent Allen\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||
@@ -55,19 +55,23 @@
|
||||
"target": "Package",
|
||||
"version": "[6.5.1, )"
|
||||
},
|
||||
"Microsoft.AspNetCore.Identity.EntityFrameworkCore": {
|
||||
"target": "Package",
|
||||
"version": "[9.0.8, )"
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore": {
|
||||
"target": "Package",
|
||||
"version": "[9.0.7, )"
|
||||
"version": "[9.0.8, )"
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Design": {
|
||||
"include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive",
|
||||
"suppressParent": "All",
|
||||
"target": "Package",
|
||||
"version": "[9.0.7, )"
|
||||
"version": "[9.0.8, )"
|
||||
},
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": {
|
||||
"target": "Package",
|
||||
"version": "[9.0.7, )"
|
||||
"version": "[9.0.8, )"
|
||||
},
|
||||
"Npgsql": {
|
||||
"target": "Package",
|
||||
@@ -97,7 +101,7 @@
|
||||
"privateAssets": "all"
|
||||
}
|
||||
},
|
||||
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.302/PortableRuntimeIdentifierGraph.json"
|
||||
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
|
||||
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\Vincent Allen\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
|
||||
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
|
||||
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.14.0</NuGetToolVersion>
|
||||
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.14.1</NuGetToolVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<SourceRoot Include="C:\Users\Vincent Allen\.nuget\packages\" />
|
||||
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
|
||||
</ItemGroup>
|
||||
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.entityframeworkcore\9.0.7\buildTransitive\net8.0\Microsoft.EntityFrameworkCore.props" Condition="Exists('$(NuGetPackageRoot)microsoft.entityframeworkcore\9.0.7\buildTransitive\net8.0\Microsoft.EntityFrameworkCore.props')" />
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.entityframeworkcore\9.0.8\buildTransitive\net8.0\Microsoft.EntityFrameworkCore.props" Condition="Exists('$(NuGetPackageRoot)microsoft.entityframeworkcore\9.0.8\buildTransitive\net8.0\Microsoft.EntityFrameworkCore.props')" />
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.codeanalysis.analyzers\3.3.4\buildTransitive\Microsoft.CodeAnalysis.Analyzers.props" Condition="Exists('$(NuGetPackageRoot)microsoft.codeanalysis.analyzers\3.3.4\buildTransitive\Microsoft.CodeAnalysis.Analyzers.props')" />
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.entityframeworkcore.design\9.0.7\build\net8.0\Microsoft.EntityFrameworkCore.Design.props" Condition="Exists('$(NuGetPackageRoot)microsoft.entityframeworkcore.design\9.0.7\build\net8.0\Microsoft.EntityFrameworkCore.Design.props')" />
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.entityframeworkcore.design\9.0.8\build\net8.0\Microsoft.EntityFrameworkCore.Design.props" Condition="Exists('$(NuGetPackageRoot)microsoft.entityframeworkcore.design\9.0.8\build\net8.0\Microsoft.EntityFrameworkCore.Design.props')" />
|
||||
<Import Project="$(NuGetPackageRoot)entityframework\6.5.1\buildTransitive\net6.0\EntityFramework.props" Condition="Exists('$(NuGetPackageRoot)entityframework\6.5.1\buildTransitive\net6.0\EntityFramework.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<Import Project="$(NuGetPackageRoot)system.text.json\9.0.7\buildTransitive\net8.0\System.Text.Json.targets" Condition="Exists('$(NuGetPackageRoot)system.text.json\9.0.7\buildTransitive\net8.0\System.Text.Json.targets')" />
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.extensions.logging.abstractions\9.0.7\buildTransitive\net8.0\Microsoft.Extensions.Logging.Abstractions.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.logging.abstractions\9.0.7\buildTransitive\net8.0\Microsoft.Extensions.Logging.Abstractions.targets')" />
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.extensions.options\9.0.7\buildTransitive\net8.0\Microsoft.Extensions.Options.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.options\9.0.7\buildTransitive\net8.0\Microsoft.Extensions.Options.targets')" />
|
||||
<Import Project="$(NuGetPackageRoot)system.text.json\9.0.8\buildTransitive\net8.0\System.Text.Json.targets" Condition="Exists('$(NuGetPackageRoot)system.text.json\9.0.8\buildTransitive\net8.0\System.Text.Json.targets')" />
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.extensions.logging.abstractions\9.0.8\buildTransitive\net8.0\Microsoft.Extensions.Logging.Abstractions.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.logging.abstractions\9.0.8\buildTransitive\net8.0\Microsoft.Extensions.Logging.Abstractions.targets')" />
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.extensions.options\9.0.8\buildTransitive\net8.0\Microsoft.Extensions.Options.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.options\9.0.8\buildTransitive\net8.0\Microsoft.Extensions.Options.targets')" />
|
||||
<Import Project="$(NuGetPackageRoot)mono.texttemplating\3.0.0\buildTransitive\Mono.TextTemplating.targets" Condition="Exists('$(NuGetPackageRoot)mono.texttemplating\3.0.0\buildTransitive\Mono.TextTemplating.targets')" />
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.codeanalysis.analyzers\3.3.4\buildTransitive\Microsoft.CodeAnalysis.Analyzers.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.codeanalysis.analyzers\3.3.4\buildTransitive\Microsoft.CodeAnalysis.Analyzers.targets')" />
|
||||
<Import Project="$(NuGetPackageRoot)entityframework\6.5.1\buildTransitive\net6.0\EntityFramework.targets" Condition="Exists('$(NuGetPackageRoot)entityframework\6.5.1\buildTransitive\net6.0\EntityFramework.targets')" />
|
||||
|
||||
@@ -45,6 +45,52 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.AspNetCore.Cryptography.Internal/9.0.8": {
|
||||
"type": "package",
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.AspNetCore.Cryptography.Internal.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.AspNetCore.Cryptography.Internal.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.AspNetCore.Cryptography.KeyDerivation/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.AspNetCore.Cryptography.Internal": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.AspNetCore.Cryptography.KeyDerivation.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.AspNetCore.Cryptography.KeyDerivation.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.AspNetCore.Identity.EntityFrameworkCore/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.EntityFrameworkCore.Relational": "9.0.8",
|
||||
"Microsoft.Extensions.Identity.Stores": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.AspNetCore.Identity.EntityFrameworkCore.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.AspNetCore.Identity.EntityFrameworkCore.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Bcl.AsyncInterfaces/7.0.0": {
|
||||
"type": "package",
|
||||
"compile": {
|
||||
@@ -401,13 +447,13 @@
|
||||
"lib/netcoreapp2.0/_._": {}
|
||||
}
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.EntityFrameworkCore.Abstractions": "9.0.7",
|
||||
"Microsoft.EntityFrameworkCore.Analyzers": "9.0.7",
|
||||
"Microsoft.Extensions.Caching.Memory": "9.0.7",
|
||||
"Microsoft.Extensions.Logging": "9.0.7"
|
||||
"Microsoft.EntityFrameworkCore.Abstractions": "9.0.8",
|
||||
"Microsoft.EntityFrameworkCore.Analyzers": "9.0.8",
|
||||
"Microsoft.Extensions.Caching.Memory": "9.0.8",
|
||||
"Microsoft.Extensions.Logging": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
|
||||
@@ -423,7 +469,7 @@
|
||||
"buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props": {}
|
||||
}
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Abstractions/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore.Abstractions/9.0.8": {
|
||||
"type": "package",
|
||||
"compile": {
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
|
||||
@@ -436,10 +482,10 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Analyzers/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore.Analyzers/9.0.8": {
|
||||
"type": "package"
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Design/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore.Design/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Humanizer.Core": "2.14.1",
|
||||
@@ -448,13 +494,13 @@
|
||||
"Microsoft.CodeAnalysis.CSharp": "4.8.0",
|
||||
"Microsoft.CodeAnalysis.CSharp.Workspaces": "4.8.0",
|
||||
"Microsoft.CodeAnalysis.Workspaces.MSBuild": "4.8.0",
|
||||
"Microsoft.EntityFrameworkCore.Relational": "9.0.7",
|
||||
"Microsoft.Extensions.Caching.Memory": "9.0.7",
|
||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.DependencyModel": "9.0.7",
|
||||
"Microsoft.Extensions.Logging": "9.0.7",
|
||||
"Microsoft.EntityFrameworkCore.Relational": "9.0.8",
|
||||
"Microsoft.Extensions.Caching.Memory": "9.0.8",
|
||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.DependencyModel": "9.0.8",
|
||||
"Microsoft.Extensions.Logging": "9.0.8",
|
||||
"Mono.TextTemplating": "3.0.0",
|
||||
"System.Text.Json": "9.0.7"
|
||||
"System.Text.Json": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net8.0/_._": {
|
||||
@@ -470,13 +516,13 @@
|
||||
"build/net8.0/Microsoft.EntityFrameworkCore.Design.props": {}
|
||||
}
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Relational/9.0.7": {
|
||||
"Microsoft.EntityFrameworkCore.Relational/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.EntityFrameworkCore": "9.0.7",
|
||||
"Microsoft.Extensions.Caching.Memory": "9.0.7",
|
||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.Logging": "9.0.7"
|
||||
"Microsoft.EntityFrameworkCore": "9.0.8",
|
||||
"Microsoft.Extensions.Caching.Memory": "9.0.8",
|
||||
"Microsoft.Extensions.Configuration.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.Logging": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
|
||||
@@ -489,10 +535,10 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Caching.Abstractions/9.0.7": {
|
||||
"Microsoft.Extensions.Caching.Abstractions/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
||||
"Microsoft.Extensions.Primitives": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.Extensions.Caching.Abstractions.dll": {
|
||||
@@ -508,14 +554,14 @@
|
||||
"buildTransitive/net8.0/_._": {}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Caching.Memory/9.0.7": {
|
||||
"Microsoft.Extensions.Caching.Memory/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.Caching.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.Options": "9.0.7",
|
||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
||||
"Microsoft.Extensions.Caching.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.Options": "9.0.8",
|
||||
"Microsoft.Extensions.Primitives": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.Extensions.Caching.Memory.dll": {
|
||||
@@ -531,10 +577,10 @@
|
||||
"buildTransitive/net8.0/_._": {}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Configuration.Abstractions/9.0.7": {
|
||||
"Microsoft.Extensions.Configuration.Abstractions/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
||||
"Microsoft.Extensions.Primitives": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
|
||||
@@ -550,10 +596,10 @@
|
||||
"buildTransitive/net8.0/_._": {}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.DependencyInjection/9.0.7": {
|
||||
"Microsoft.Extensions.DependencyInjection/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7"
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.Extensions.DependencyInjection.dll": {
|
||||
@@ -569,7 +615,7 @@
|
||||
"buildTransitive/net8.0/_._": {}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions/9.0.7": {
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions/9.0.8": {
|
||||
"type": "package",
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
|
||||
@@ -585,7 +631,7 @@
|
||||
"buildTransitive/net8.0/_._": {}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.DependencyModel/9.0.7": {
|
||||
"Microsoft.Extensions.DependencyModel/9.0.8": {
|
||||
"type": "package",
|
||||
"compile": {
|
||||
"lib/net9.0/_._": {
|
||||
@@ -601,12 +647,48 @@
|
||||
"buildTransitive/net8.0/_._": {}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Logging/9.0.7": {
|
||||
"Microsoft.Extensions.Identity.Core/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection": "9.0.7",
|
||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.Options": "9.0.7"
|
||||
"Microsoft.AspNetCore.Cryptography.KeyDerivation": "9.0.8",
|
||||
"Microsoft.Extensions.Logging": "9.0.8",
|
||||
"Microsoft.Extensions.Options": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.Extensions.Identity.Core.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.Identity.Core.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Identity.Stores/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.Caching.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.Identity.Core": "9.0.8",
|
||||
"Microsoft.Extensions.Logging": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.Extensions.Identity.Stores.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
},
|
||||
"runtime": {
|
||||
"lib/net9.0/Microsoft.Extensions.Identity.Stores.dll": {
|
||||
"related": ".xml"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Logging/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection": "9.0.8",
|
||||
"Microsoft.Extensions.Logging.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.Options": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.Extensions.Logging.dll": {
|
||||
@@ -622,10 +704,10 @@
|
||||
"buildTransitive/net8.0/_._": {}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Logging.Abstractions/9.0.7": {
|
||||
"Microsoft.Extensions.Logging.Abstractions/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7"
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll": {
|
||||
@@ -641,11 +723,11 @@
|
||||
"buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Options/9.0.7": {
|
||||
"Microsoft.Extensions.Options/9.0.8": {
|
||||
"type": "package",
|
||||
"dependencies": {
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.7",
|
||||
"Microsoft.Extensions.Primitives": "9.0.7"
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.8",
|
||||
"Microsoft.Extensions.Primitives": "9.0.8"
|
||||
},
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.Extensions.Options.dll": {
|
||||
@@ -661,7 +743,7 @@
|
||||
"buildTransitive/net8.0/Microsoft.Extensions.Options.targets": {}
|
||||
}
|
||||
},
|
||||
"Microsoft.Extensions.Primitives/9.0.7": {
|
||||
"Microsoft.Extensions.Primitives/9.0.8": {
|
||||
"type": "package",
|
||||
"compile": {
|
||||
"lib/net9.0/Microsoft.Extensions.Primitives.dll": {
|
||||
@@ -1180,7 +1262,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"System.Text.Json/9.0.7": {
|
||||
"System.Text.Json/9.0.8": {
|
||||
"type": "package",
|
||||
"compile": {
|
||||
"lib/net9.0/_._": {
|
||||
@@ -1317,6 +1399,59 @@
|
||||
"logo.png"
|
||||
]
|
||||
},
|
||||
"Microsoft.AspNetCore.Cryptography.Internal/9.0.8": {
|
||||
"sha512": "NwGO0wh/IjEthBLGA6fWfIiftsNF/paA5RxWp6ji4wWazetJgQ4truR9nU2thAzzFLiXqlg8vGjdVDA8bHu0zA==",
|
||||
"type": "package",
|
||||
"path": "microsoft.aspnetcore.cryptography.internal/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
"Icon.png",
|
||||
"THIRD-PARTY-NOTICES.TXT",
|
||||
"lib/net462/Microsoft.AspNetCore.Cryptography.Internal.dll",
|
||||
"lib/net462/Microsoft.AspNetCore.Cryptography.Internal.xml",
|
||||
"lib/net9.0/Microsoft.AspNetCore.Cryptography.Internal.dll",
|
||||
"lib/net9.0/Microsoft.AspNetCore.Cryptography.Internal.xml",
|
||||
"lib/netstandard2.0/Microsoft.AspNetCore.Cryptography.Internal.dll",
|
||||
"lib/netstandard2.0/Microsoft.AspNetCore.Cryptography.Internal.xml",
|
||||
"microsoft.aspnetcore.cryptography.internal.9.0.8.nupkg.sha512",
|
||||
"microsoft.aspnetcore.cryptography.internal.nuspec"
|
||||
]
|
||||
},
|
||||
"Microsoft.AspNetCore.Cryptography.KeyDerivation/9.0.8": {
|
||||
"sha512": "gK70xxXYwwPiXYKYVmLYMuIO5EOGrRtQghmM6PkgtZ/0lgLEjIs//xgSLvZkV/mroNHA1DEqTcqscEj9OzZ1IA==",
|
||||
"type": "package",
|
||||
"path": "microsoft.aspnetcore.cryptography.keyderivation/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
"Icon.png",
|
||||
"THIRD-PARTY-NOTICES.TXT",
|
||||
"lib/net462/Microsoft.AspNetCore.Cryptography.KeyDerivation.dll",
|
||||
"lib/net462/Microsoft.AspNetCore.Cryptography.KeyDerivation.xml",
|
||||
"lib/net9.0/Microsoft.AspNetCore.Cryptography.KeyDerivation.dll",
|
||||
"lib/net9.0/Microsoft.AspNetCore.Cryptography.KeyDerivation.xml",
|
||||
"lib/netstandard2.0/Microsoft.AspNetCore.Cryptography.KeyDerivation.dll",
|
||||
"lib/netstandard2.0/Microsoft.AspNetCore.Cryptography.KeyDerivation.xml",
|
||||
"microsoft.aspnetcore.cryptography.keyderivation.9.0.8.nupkg.sha512",
|
||||
"microsoft.aspnetcore.cryptography.keyderivation.nuspec"
|
||||
]
|
||||
},
|
||||
"Microsoft.AspNetCore.Identity.EntityFrameworkCore/9.0.8": {
|
||||
"sha512": "z4q9roxXMQePwFM5tXXZS5sKkU78yYXVkj56NYYx9xKe+mxGkJMV1MaO0GFE6HnnM8bE3Xxhs0hAPw2jKbse6w==",
|
||||
"type": "package",
|
||||
"path": "microsoft.aspnetcore.identity.entityframeworkcore/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
"Icon.png",
|
||||
"THIRD-PARTY-NOTICES.TXT",
|
||||
"lib/net9.0/Microsoft.AspNetCore.Identity.EntityFrameworkCore.dll",
|
||||
"lib/net9.0/Microsoft.AspNetCore.Identity.EntityFrameworkCore.xml",
|
||||
"microsoft.aspnetcore.identity.entityframeworkcore.9.0.8.nupkg.sha512",
|
||||
"microsoft.aspnetcore.identity.entityframeworkcore.nuspec"
|
||||
]
|
||||
},
|
||||
"Microsoft.Bcl.AsyncInterfaces/7.0.0": {
|
||||
"sha512": "3aeMZ1N0lJoSyzqiP03hqemtb1BijhsJADdobn/4nsMJ8V1H+CrpuduUe4hlRdx+ikBQju1VGjMD1GJ3Sk05Eg==",
|
||||
"type": "package",
|
||||
@@ -2368,10 +2503,10 @@
|
||||
"version.txt"
|
||||
]
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore/9.0.7": {
|
||||
"sha512": "PbD0q5ax15r91jD4TN7xbDCjldZSz4JfpYN4ZZjAkWeUyROkV92Ydg0O2/1keFA+2u3KPsDkJMmBKv2zQ06ZVg==",
|
||||
"Microsoft.EntityFrameworkCore/9.0.8": {
|
||||
"sha512": "bNGdPhN762+BIIO5MFYLjafRqkSS1MqLOc/erd55InvLnFxt9H3N5JNsuag1ZHyBor1VtD42U0CHpgqkWeAYgQ==",
|
||||
"type": "package",
|
||||
"path": "microsoft.entityframeworkcore/9.0.7",
|
||||
"path": "microsoft.entityframeworkcore/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2380,14 +2515,14 @@
|
||||
"buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props",
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.dll",
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.xml",
|
||||
"microsoft.entityframeworkcore.9.0.7.nupkg.sha512",
|
||||
"microsoft.entityframeworkcore.9.0.8.nupkg.sha512",
|
||||
"microsoft.entityframeworkcore.nuspec"
|
||||
]
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Abstractions/9.0.7": {
|
||||
"sha512": "YUXNerEkCf4OANO+zjuMznpUW7R8XxSCqmBfYhBrbrJVc09i84KkNgeUTaOUXCGogSK/3d7ORRhMqfUobnejBg==",
|
||||
"Microsoft.EntityFrameworkCore.Abstractions/9.0.8": {
|
||||
"sha512": "B2yfAIQRRAQ4zvvWqh+HudD+juV3YoLlpXnrog3tU0PM9AFpuq6xo0+mEglN1P43WgdcUiF+65CWBcZe35s15Q==",
|
||||
"type": "package",
|
||||
"path": "microsoft.entityframeworkcore.abstractions/9.0.7",
|
||||
"path": "microsoft.entityframeworkcore.abstractions/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2395,28 +2530,28 @@
|
||||
"PACKAGE.md",
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll",
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.xml",
|
||||
"microsoft.entityframeworkcore.abstractions.9.0.7.nupkg.sha512",
|
||||
"microsoft.entityframeworkcore.abstractions.9.0.8.nupkg.sha512",
|
||||
"microsoft.entityframeworkcore.abstractions.nuspec"
|
||||
]
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Analyzers/9.0.7": {
|
||||
"sha512": "HqiPjAvjVOsyA1svnjL81/Wk2MRQYMK/lxKVWvw0f5IcA//VcxBepVSAqe7CFirdsPXqe8rFKEwZROWZTz7Jqw==",
|
||||
"Microsoft.EntityFrameworkCore.Analyzers/9.0.8": {
|
||||
"sha512": "2EYStCXt4Hi9p3J3EYMQbItJDtASJd064Kcs8C8hj8Jt5srILrR9qlaL0Ryvk8NrWQoCQvIELsmiuqLEZMLvGA==",
|
||||
"type": "package",
|
||||
"path": "microsoft.entityframeworkcore.analyzers/9.0.7",
|
||||
"path": "microsoft.entityframeworkcore.analyzers/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
"Icon.png",
|
||||
"analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll",
|
||||
"docs/PACKAGE.md",
|
||||
"microsoft.entityframeworkcore.analyzers.9.0.7.nupkg.sha512",
|
||||
"microsoft.entityframeworkcore.analyzers.9.0.8.nupkg.sha512",
|
||||
"microsoft.entityframeworkcore.analyzers.nuspec"
|
||||
]
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Design/9.0.7": {
|
||||
"sha512": "zvZ2/bRwdPrBfQ2fRd2IQL6icyIOtosZSz2QpXtsn7M+c6e4GvpNfpSxBprLfoKhH6NeAFNV9ool0Vp/1DJd/A==",
|
||||
"Microsoft.EntityFrameworkCore.Design/9.0.8": {
|
||||
"sha512": "02e8OcoumSUAES3VkXrMT9EnNCUKWJoifn5+8fFEbAtRhKL3xg2a/Mj6rsAUGF7tkYFox6oKzJCn0jbm6b8Lbw==",
|
||||
"type": "package",
|
||||
"path": "microsoft.entityframeworkcore.design/9.0.7",
|
||||
"path": "microsoft.entityframeworkcore.design/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2425,14 +2560,14 @@
|
||||
"build/net8.0/Microsoft.EntityFrameworkCore.Design.props",
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.Design.dll",
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.Design.xml",
|
||||
"microsoft.entityframeworkcore.design.9.0.7.nupkg.sha512",
|
||||
"microsoft.entityframeworkcore.design.9.0.8.nupkg.sha512",
|
||||
"microsoft.entityframeworkcore.design.nuspec"
|
||||
]
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Relational/9.0.7": {
|
||||
"sha512": "Yo5joquG7L79H5BhtpqP8apu+KFOAYfvmj0dZnVkPElBY14wY5qva0SOcrDWzYw5BrJrhIArfCcJCJHBvMYiKg==",
|
||||
"Microsoft.EntityFrameworkCore.Relational/9.0.8": {
|
||||
"sha512": "OVhfyxiHxMvYpwQ8Jy3YZi4koy6TK5/Q7C1oq3z6db+HEGuu6x9L1BX5zDIdJxxlRePMyO4D8ORiXj/D7+MUqw==",
|
||||
"type": "package",
|
||||
"path": "microsoft.entityframeworkcore.relational/9.0.7",
|
||||
"path": "microsoft.entityframeworkcore.relational/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2440,14 +2575,14 @@
|
||||
"PACKAGE.md",
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll",
|
||||
"lib/net8.0/Microsoft.EntityFrameworkCore.Relational.xml",
|
||||
"microsoft.entityframeworkcore.relational.9.0.7.nupkg.sha512",
|
||||
"microsoft.entityframeworkcore.relational.9.0.8.nupkg.sha512",
|
||||
"microsoft.entityframeworkcore.relational.nuspec"
|
||||
]
|
||||
},
|
||||
"Microsoft.Extensions.Caching.Abstractions/9.0.7": {
|
||||
"sha512": "30necCQehcg9lFkMEIE7HczcoYGML8GUH6jlincA18d896fLZM9wl5tpTPJHgzANQE/6KXRLZSWbgevgg5csSw==",
|
||||
"Microsoft.Extensions.Caching.Abstractions/9.0.8": {
|
||||
"sha512": "4h7bsVoKoiK+SlPM+euX/ayGnKZhl47pPCidLTiio9xyG+vgVVfcYxcYQgjm0SCrdSxjG0EGIAKF8EFr3G8Ifw==",
|
||||
"type": "package",
|
||||
"path": "microsoft.extensions.caching.abstractions/9.0.7",
|
||||
"path": "microsoft.extensions.caching.abstractions/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2467,15 +2602,15 @@
|
||||
"lib/net9.0/Microsoft.Extensions.Caching.Abstractions.xml",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.xml",
|
||||
"microsoft.extensions.caching.abstractions.9.0.7.nupkg.sha512",
|
||||
"microsoft.extensions.caching.abstractions.9.0.8.nupkg.sha512",
|
||||
"microsoft.extensions.caching.abstractions.nuspec",
|
||||
"useSharedDesignerContext.txt"
|
||||
]
|
||||
},
|
||||
"Microsoft.Extensions.Caching.Memory/9.0.7": {
|
||||
"sha512": "nDu6c8fwrHQYccLnWnvyElrdkL3rZ97TZNqL+niMFUcApVBHdpDmKcRvciGymJ4Y0iLDTOo5J2XhDQEbNb+dFg==",
|
||||
"Microsoft.Extensions.Caching.Memory/9.0.8": {
|
||||
"sha512": "grR+oPyj8HVn4DT8CFUUdSw2pZZKS13KjytFe4txpHQliGM1GEDotohmjgvyl3hm7RFB3FRqvbouEX3/1ewp5A==",
|
||||
"type": "package",
|
||||
"path": "microsoft.extensions.caching.memory/9.0.7",
|
||||
"path": "microsoft.extensions.caching.memory/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2495,15 +2630,15 @@
|
||||
"lib/net9.0/Microsoft.Extensions.Caching.Memory.xml",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.xml",
|
||||
"microsoft.extensions.caching.memory.9.0.7.nupkg.sha512",
|
||||
"microsoft.extensions.caching.memory.9.0.8.nupkg.sha512",
|
||||
"microsoft.extensions.caching.memory.nuspec",
|
||||
"useSharedDesignerContext.txt"
|
||||
]
|
||||
},
|
||||
"Microsoft.Extensions.Configuration.Abstractions/9.0.7": {
|
||||
"sha512": "lut/kiVvNsQ120VERMUYSFhpXPpKjjql+giy03LesASPBBcC0o6+aoFdzJH9GaYpFTQ3fGVhVjKjvJDoAW5/IQ==",
|
||||
"Microsoft.Extensions.Configuration.Abstractions/9.0.8": {
|
||||
"sha512": "yNou2KM35RvzOh4vUFtl2l33rWPvOCoba+nzEDJ+BgD8aOL/jew4WPCibQvntRfOJ2pJU8ARygSMD+pdjvDHuA==",
|
||||
"type": "package",
|
||||
"path": "microsoft.extensions.configuration.abstractions/9.0.7",
|
||||
"path": "microsoft.extensions.configuration.abstractions/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2523,15 +2658,15 @@
|
||||
"lib/net9.0/Microsoft.Extensions.Configuration.Abstractions.xml",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.xml",
|
||||
"microsoft.extensions.configuration.abstractions.9.0.7.nupkg.sha512",
|
||||
"microsoft.extensions.configuration.abstractions.9.0.8.nupkg.sha512",
|
||||
"microsoft.extensions.configuration.abstractions.nuspec",
|
||||
"useSharedDesignerContext.txt"
|
||||
]
|
||||
},
|
||||
"Microsoft.Extensions.DependencyInjection/9.0.7": {
|
||||
"sha512": "i05AYA91vgq0as84ROVCyltD2gnxaba/f1Qw2rG7mUsS0gv8cPTr1Gm7jPQHq7JTr4MJoQUcanLVs16tIOUJaQ==",
|
||||
"Microsoft.Extensions.DependencyInjection/9.0.8": {
|
||||
"sha512": "JJjI2Fa+QtZcUyuNjbKn04OjIUX5IgFGFu/Xc+qvzh1rXdZHLcnqqVXhR4093bGirTwacRlHiVg1XYI9xum6QQ==",
|
||||
"type": "package",
|
||||
"path": "microsoft.extensions.dependencyinjection/9.0.7",
|
||||
"path": "microsoft.extensions.dependencyinjection/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2553,15 +2688,15 @@
|
||||
"lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml",
|
||||
"lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll",
|
||||
"lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml",
|
||||
"microsoft.extensions.dependencyinjection.9.0.7.nupkg.sha512",
|
||||
"microsoft.extensions.dependencyinjection.9.0.8.nupkg.sha512",
|
||||
"microsoft.extensions.dependencyinjection.nuspec",
|
||||
"useSharedDesignerContext.txt"
|
||||
]
|
||||
},
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions/9.0.7": {
|
||||
"sha512": "iPK1FxbGFr2Xb+4Y+dTYI8Gupu9pOi8I3JPuPsrogUmEhe2hzZ9LpCmolMEBhVDo2ikcSr7G5zYiwaapHSQTew==",
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions/9.0.8": {
|
||||
"sha512": "xY3lTjj4+ZYmiKIkyWitddrp1uL5uYiweQjqo4BKBw01ZC4HhcfgLghDpPZcUlppgWAFqFy9SgkiYWOMx365pw==",
|
||||
"type": "package",
|
||||
"path": "microsoft.extensions.dependencyinjection.abstractions/9.0.7",
|
||||
"path": "microsoft.extensions.dependencyinjection.abstractions/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2583,15 +2718,15 @@
|
||||
"lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
|
||||
"lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
|
||||
"lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
|
||||
"microsoft.extensions.dependencyinjection.abstractions.9.0.7.nupkg.sha512",
|
||||
"microsoft.extensions.dependencyinjection.abstractions.9.0.8.nupkg.sha512",
|
||||
"microsoft.extensions.dependencyinjection.abstractions.nuspec",
|
||||
"useSharedDesignerContext.txt"
|
||||
]
|
||||
},
|
||||
"Microsoft.Extensions.DependencyModel/9.0.7": {
|
||||
"sha512": "aXEt8QW1Fj9aC81GfkMtfip4wfbkEA7VBvNkx6Rx6ZKyqXIF/9qzRtH6v/2096IDK4lt6dlQp5Ajf+kjHfUdOA==",
|
||||
"Microsoft.Extensions.DependencyModel/9.0.8": {
|
||||
"sha512": "3CW02zNjyqJ2eORo8Zkznpw6+QvK+tYUKZgKuKuAIYdy73TRFvpaqCwYws1k6/lMSJ7ZqABfWn0/wa5bRsIJ4w==",
|
||||
"type": "package",
|
||||
"path": "microsoft.extensions.dependencymodel/9.0.7",
|
||||
"path": "microsoft.extensions.dependencymodel/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2611,15 +2746,53 @@
|
||||
"lib/net9.0/Microsoft.Extensions.DependencyModel.xml",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.DependencyModel.dll",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.DependencyModel.xml",
|
||||
"microsoft.extensions.dependencymodel.9.0.7.nupkg.sha512",
|
||||
"microsoft.extensions.dependencymodel.9.0.8.nupkg.sha512",
|
||||
"microsoft.extensions.dependencymodel.nuspec",
|
||||
"useSharedDesignerContext.txt"
|
||||
]
|
||||
},
|
||||
"Microsoft.Extensions.Logging/9.0.7": {
|
||||
"sha512": "fdIeQpXYV8yxSWG03cCbU2Otdrq4NWuhnQLXokWLv3L9YcK055E7u8WFJvP+uuP4CFeCEoqZQL4yPcjuXhCZrg==",
|
||||
"Microsoft.Extensions.Identity.Core/9.0.8": {
|
||||
"sha512": "giUYz84GHAizDucZp5vWAusDO2s9Jrrg2jQ6HUQNGs5HQMKJVobLPMQSiyg8R4yecH0pIc0QjANh0B/Kw13BHA==",
|
||||
"type": "package",
|
||||
"path": "microsoft.extensions.logging/9.0.7",
|
||||
"path": "microsoft.extensions.identity.core/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
"Icon.png",
|
||||
"THIRD-PARTY-NOTICES.TXT",
|
||||
"lib/net462/Microsoft.Extensions.Identity.Core.dll",
|
||||
"lib/net462/Microsoft.Extensions.Identity.Core.xml",
|
||||
"lib/net9.0/Microsoft.Extensions.Identity.Core.dll",
|
||||
"lib/net9.0/Microsoft.Extensions.Identity.Core.xml",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Identity.Core.dll",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Identity.Core.xml",
|
||||
"microsoft.extensions.identity.core.9.0.8.nupkg.sha512",
|
||||
"microsoft.extensions.identity.core.nuspec"
|
||||
]
|
||||
},
|
||||
"Microsoft.Extensions.Identity.Stores/9.0.8": {
|
||||
"sha512": "sycaHcq78yI591+KxEdd53a7pJGQEl9H/wDsFkaPNE9g7loyq8vufPcc/9RH3KlGt5joR5Ey7PdoRSrlLjCgJg==",
|
||||
"type": "package",
|
||||
"path": "microsoft.extensions.identity.stores/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
"Icon.png",
|
||||
"THIRD-PARTY-NOTICES.TXT",
|
||||
"lib/net462/Microsoft.Extensions.Identity.Stores.dll",
|
||||
"lib/net462/Microsoft.Extensions.Identity.Stores.xml",
|
||||
"lib/net9.0/Microsoft.Extensions.Identity.Stores.dll",
|
||||
"lib/net9.0/Microsoft.Extensions.Identity.Stores.xml",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Identity.Stores.dll",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Identity.Stores.xml",
|
||||
"microsoft.extensions.identity.stores.9.0.8.nupkg.sha512",
|
||||
"microsoft.extensions.identity.stores.nuspec"
|
||||
]
|
||||
},
|
||||
"Microsoft.Extensions.Logging/9.0.8": {
|
||||
"sha512": "Z/7ze+0iheT7FJeZPqJKARYvyC2bmwu3whbm/48BJjdlGVvgDguoCqJIkI/67NkroTYobd5geai1WheNQvWrgA==",
|
||||
"type": "package",
|
||||
"path": "microsoft.extensions.logging/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2641,15 +2814,15 @@
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Logging.xml",
|
||||
"lib/netstandard2.1/Microsoft.Extensions.Logging.dll",
|
||||
"lib/netstandard2.1/Microsoft.Extensions.Logging.xml",
|
||||
"microsoft.extensions.logging.9.0.7.nupkg.sha512",
|
||||
"microsoft.extensions.logging.9.0.8.nupkg.sha512",
|
||||
"microsoft.extensions.logging.nuspec",
|
||||
"useSharedDesignerContext.txt"
|
||||
]
|
||||
},
|
||||
"Microsoft.Extensions.Logging.Abstractions/9.0.7": {
|
||||
"sha512": "sMM6NEAdUTE/elJ2wqjOi0iBWqZmSyaTByLF9e8XHv6DRJFFnOe0N+s8Uc6C91E4SboQCfLswaBIZ+9ZXA98AA==",
|
||||
"Microsoft.Extensions.Logging.Abstractions/9.0.8": {
|
||||
"sha512": "pYnAffJL7ARD/HCnnPvnFKSIHnTSmWz84WIlT9tPeQ4lHNiu0Az7N/8itihWvcF8sT+VVD5lq8V+ckMzu4SbOw==",
|
||||
"type": "package",
|
||||
"path": "microsoft.extensions.logging.abstractions/9.0.7",
|
||||
"path": "microsoft.extensions.logging.abstractions/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2712,15 +2885,15 @@
|
||||
"lib/net9.0/Microsoft.Extensions.Logging.Abstractions.xml",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml",
|
||||
"microsoft.extensions.logging.abstractions.9.0.7.nupkg.sha512",
|
||||
"microsoft.extensions.logging.abstractions.9.0.8.nupkg.sha512",
|
||||
"microsoft.extensions.logging.abstractions.nuspec",
|
||||
"useSharedDesignerContext.txt"
|
||||
]
|
||||
},
|
||||
"Microsoft.Extensions.Options/9.0.7": {
|
||||
"sha512": "trJnF6cRWgR5uMmHpGoHmM1wOVFdIYlELlkO9zX+RfieK0321Y55zrcs4AaEymKup7dxgEN/uJU25CAcMNQRXw==",
|
||||
"Microsoft.Extensions.Options/9.0.8": {
|
||||
"sha512": "OmTaQ0v4gxGQkehpwWIqPoEiwsPuG/u4HUsbOFoWGx4DKET2AXzopnFe/fE608FIhzc/kcg2p8JdyMRCCUzitQ==",
|
||||
"type": "package",
|
||||
"path": "microsoft.extensions.options/9.0.7",
|
||||
"path": "microsoft.extensions.options/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2757,15 +2930,15 @@
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Options.xml",
|
||||
"lib/netstandard2.1/Microsoft.Extensions.Options.dll",
|
||||
"lib/netstandard2.1/Microsoft.Extensions.Options.xml",
|
||||
"microsoft.extensions.options.9.0.7.nupkg.sha512",
|
||||
"microsoft.extensions.options.9.0.8.nupkg.sha512",
|
||||
"microsoft.extensions.options.nuspec",
|
||||
"useSharedDesignerContext.txt"
|
||||
]
|
||||
},
|
||||
"Microsoft.Extensions.Primitives/9.0.7": {
|
||||
"sha512": "ti/zD9BuuO50IqlvhWQs9GHxkCmoph5BHjGiWKdg2t6Or8XoyAfRJiKag+uvd/fpASnNklfsB01WpZ4fhAe0VQ==",
|
||||
"Microsoft.Extensions.Primitives/9.0.8": {
|
||||
"sha512": "tizSIOEsIgSNSSh+hKeUVPK7xmTIjR8s+mJWOu1KXV3htvNQiPMFRMO17OdI1y/4ZApdBVk49u/08QGC9yvLug==",
|
||||
"type": "package",
|
||||
"path": "microsoft.extensions.primitives/9.0.7",
|
||||
"path": "microsoft.extensions.primitives/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -2785,7 +2958,7 @@
|
||||
"lib/net9.0/Microsoft.Extensions.Primitives.xml",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Primitives.dll",
|
||||
"lib/netstandard2.0/Microsoft.Extensions.Primitives.xml",
|
||||
"microsoft.extensions.primitives.9.0.7.nupkg.sha512",
|
||||
"microsoft.extensions.primitives.9.0.8.nupkg.sha512",
|
||||
"microsoft.extensions.primitives.nuspec",
|
||||
"useSharedDesignerContext.txt"
|
||||
]
|
||||
@@ -3653,10 +3826,10 @@
|
||||
"version.txt"
|
||||
]
|
||||
},
|
||||
"System.Text.Json/9.0.7": {
|
||||
"sha512": "u/lN2FEEXs3ghj2ta8tWA4r2MS9Yni07K7jDmnz8h1UPDf0lIIIEMkWx383Zz4fJjJio7gDl+00RYuQ/7R8ZQw==",
|
||||
"System.Text.Json/9.0.8": {
|
||||
"sha512": "mIQir9jBqk0V7X0Nw5hzPJZC8DuGdf+2DS3jAVsr6rq5+/VyH5rza0XGcONJUWBrZ+G6BCwNyjWYd9lncBu48A==",
|
||||
"type": "package",
|
||||
"path": "system.text.json/9.0.7",
|
||||
"path": "system.text.json/9.0.8",
|
||||
"files": [
|
||||
".nupkg.metadata",
|
||||
".signature.p7s",
|
||||
@@ -3719,7 +3892,7 @@
|
||||
"lib/net9.0/System.Text.Json.xml",
|
||||
"lib/netstandard2.0/System.Text.Json.dll",
|
||||
"lib/netstandard2.0/System.Text.Json.xml",
|
||||
"system.text.json.9.0.7.nupkg.sha512",
|
||||
"system.text.json.9.0.8.nupkg.sha512",
|
||||
"system.text.json.nuspec",
|
||||
"useSharedDesignerContext.txt"
|
||||
]
|
||||
@@ -3780,9 +3953,10 @@
|
||||
"projectFileDependencyGroups": {
|
||||
"net9.0": [
|
||||
"EntityFramework >= 6.5.1",
|
||||
"Microsoft.EntityFrameworkCore >= 9.0.7",
|
||||
"Microsoft.EntityFrameworkCore.Design >= 9.0.7",
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions >= 9.0.7",
|
||||
"Microsoft.AspNetCore.Identity.EntityFrameworkCore >= 9.0.8",
|
||||
"Microsoft.EntityFrameworkCore >= 9.0.8",
|
||||
"Microsoft.EntityFrameworkCore.Design >= 9.0.8",
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions >= 9.0.8",
|
||||
"Npgsql >= 9.0.3",
|
||||
"Npgsql.EntityFrameworkCore.PostgreSQL >= 9.0.4"
|
||||
]
|
||||
@@ -3794,17 +3968,17 @@
|
||||
"project": {
|
||||
"version": "1.0.0",
|
||||
"restore": {
|
||||
"projectUniqueName": "E:\\Open-Archival\\OpenArchival.DataAccess\\OpenArchival.DataAccess.csproj",
|
||||
"projectUniqueName": "D:\\Nextcloud\\Documents\\Open-Archival\\OpenArchival.DataAccess\\OpenArchival.DataAccess.csproj",
|
||||
"projectName": "OpenArchival.DataAccess",
|
||||
"projectPath": "E:\\Open-Archival\\OpenArchival.DataAccess\\OpenArchival.DataAccess.csproj",
|
||||
"projectPath": "D:\\Nextcloud\\Documents\\Open-Archival\\OpenArchival.DataAccess\\OpenArchival.DataAccess.csproj",
|
||||
"packagesPath": "C:\\Users\\Vincent Allen\\.nuget\\packages\\",
|
||||
"outputPath": "E:\\Open-Archival\\OpenArchival.DataAccess\\obj\\",
|
||||
"outputPath": "D:\\Nextcloud\\Documents\\Open-Archival\\OpenArchival.DataAccess\\obj\\",
|
||||
"projectStyle": "PackageReference",
|
||||
"fallbackFolders": [
|
||||
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
|
||||
],
|
||||
"configFilePaths": [
|
||||
"E:\\Open-Archival\\NuGet.Config",
|
||||
"D:\\Nextcloud\\Documents\\Open-Archival\\NuGet.Config",
|
||||
"C:\\Users\\Vincent Allen\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||
@@ -3842,19 +4016,23 @@
|
||||
"target": "Package",
|
||||
"version": "[6.5.1, )"
|
||||
},
|
||||
"Microsoft.AspNetCore.Identity.EntityFrameworkCore": {
|
||||
"target": "Package",
|
||||
"version": "[9.0.8, )"
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore": {
|
||||
"target": "Package",
|
||||
"version": "[9.0.7, )"
|
||||
"version": "[9.0.8, )"
|
||||
},
|
||||
"Microsoft.EntityFrameworkCore.Design": {
|
||||
"include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive",
|
||||
"suppressParent": "All",
|
||||
"target": "Package",
|
||||
"version": "[9.0.7, )"
|
||||
"version": "[9.0.8, )"
|
||||
},
|
||||
"Microsoft.Extensions.DependencyInjection.Abstractions": {
|
||||
"target": "Package",
|
||||
"version": "[9.0.7, )"
|
||||
"version": "[9.0.8, )"
|
||||
},
|
||||
"Npgsql": {
|
||||
"target": "Package",
|
||||
@@ -3884,7 +4062,7 @@
|
||||
"privateAssets": "all"
|
||||
}
|
||||
},
|
||||
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.302/PortableRuntimeIdentifierGraph.json"
|
||||
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user