@@ -1,75 +0,0 @@
|
|||||||
using FastEndpoints;
|
|
||||||
using Knots.DTO.Discussion;
|
|
||||||
using Knots.Models;
|
|
||||||
using Microsoft.EntityFrameworkCore;
|
|
||||||
using System.Security.Claims;
|
|
||||||
|
|
||||||
namespace Knots.Endpoints.Discussion;
|
|
||||||
|
|
||||||
public class CreateGroupDiscussionEndpoint(KnotsDbContext db)
|
|
||||||
: Endpoint<CreateGroupDiscussionRequest, GetDiscussionDto>
|
|
||||||
{
|
|
||||||
public override void Configure()
|
|
||||||
{
|
|
||||||
Post("/discussions/group");
|
|
||||||
}
|
|
||||||
|
|
||||||
public override async Task HandleAsync(CreateGroupDiscussionRequest req, CancellationToken ct)
|
|
||||||
{
|
|
||||||
int currentUserId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)!);
|
|
||||||
|
|
||||||
|
|
||||||
if (req.Usernames == null || req.Usernames.Count == 0)
|
|
||||||
{
|
|
||||||
await SendErrorsAsync(400, ct);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
List<Models.User> targets = await db.Users
|
|
||||||
.Where(u => req.Usernames.Contains(u.Username!))
|
|
||||||
.ToListAsync(ct);
|
|
||||||
|
|
||||||
if (targets.Count != req.Usernames.Count)
|
|
||||||
{
|
|
||||||
await SendNotFoundAsync(ct); // un ou plusieurs utilisateurs introuvables
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (targets.Any(t => t.Id == currentUserId))
|
|
||||||
{
|
|
||||||
await SendErrorsAsync(400, ct); // pas de discussion avec soi-même
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
List<UserDiscussion> members = targets
|
|
||||||
.Select(t => new UserDiscussion { UserId = t.Id })
|
|
||||||
.ToList();
|
|
||||||
|
|
||||||
members.Add(new UserDiscussion { UserId = currentUserId });
|
|
||||||
|
|
||||||
Models.Discussion discussion = new()
|
|
||||||
{
|
|
||||||
IsGroup = true,
|
|
||||||
UserDiscussions = members
|
|
||||||
};
|
|
||||||
|
|
||||||
db.Discussions.Add(discussion);
|
|
||||||
await db.SaveChangesAsync(ct);
|
|
||||||
|
|
||||||
await SendOkAsync(new GetDiscussionDto
|
|
||||||
{
|
|
||||||
Id = discussion.Id,
|
|
||||||
IsGroup = true,
|
|
||||||
Name = req.GroupName,
|
|
||||||
MembersCount = members.Count
|
|
||||||
}, ct);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public class CreateGroupDiscussionRequest
|
|
||||||
{
|
|
||||||
public string GroupName { get; set; } = "";
|
|
||||||
public List<string> Usernames { get; set; } = [];
|
|
||||||
}
|
|
||||||
-377
@@ -1,377 +0,0 @@
|
|||||||
// <auto-generated />
|
|
||||||
using System;
|
|
||||||
using Knots;
|
|
||||||
using Microsoft.EntityFrameworkCore;
|
|
||||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
|
||||||
using Microsoft.EntityFrameworkCore.Metadata;
|
|
||||||
using Microsoft.EntityFrameworkCore.Migrations;
|
|
||||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
|
||||||
|
|
||||||
#nullable disable
|
|
||||||
|
|
||||||
namespace Knots.Migrations
|
|
||||||
{
|
|
||||||
[DbContext(typeof(KnotsDbContext))]
|
|
||||||
[Migration("20260610204450_Discussion")]
|
|
||||||
partial class Discussion
|
|
||||||
{
|
|
||||||
/// <inheritdoc />
|
|
||||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|
||||||
{
|
|
||||||
#pragma warning disable 612, 618
|
|
||||||
modelBuilder
|
|
||||||
.HasAnnotation("ProductVersion", "8.0.25")
|
|
||||||
.HasAnnotation("Relational:MaxIdentifierLength", 128);
|
|
||||||
|
|
||||||
SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Discussion", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"));
|
|
||||||
|
|
||||||
b.Property<DateTime>("CreatedAt")
|
|
||||||
.HasColumnType("datetime2");
|
|
||||||
|
|
||||||
b.Property<int?>("GroupId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<bool>("IsGroup")
|
|
||||||
.HasColumnType("bit");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.HasIndex("GroupId");
|
|
||||||
|
|
||||||
b.ToTable("Discussions");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Group", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"));
|
|
||||||
|
|
||||||
b.Property<int>("DiscussionId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("MembersAmount")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<string>("Name")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(50)
|
|
||||||
.HasColumnType("nvarchar(50)");
|
|
||||||
|
|
||||||
b.Property<string>("ProfilePicture")
|
|
||||||
.HasColumnType("nvarchar(max)");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.HasIndex("DiscussionId");
|
|
||||||
|
|
||||||
b.ToTable("Groups");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.GroupUser", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("GroupId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("UserId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int?>("RoleId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.HasKey("GroupId", "UserId");
|
|
||||||
|
|
||||||
b.HasIndex("RoleId");
|
|
||||||
|
|
||||||
b.HasIndex("UserId");
|
|
||||||
|
|
||||||
b.ToTable("GroupUsers");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Key", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"));
|
|
||||||
|
|
||||||
b.Property<string>("EnKey")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(50)
|
|
||||||
.HasColumnType("nvarchar(50)");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.ToTable("Keys");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Message", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"));
|
|
||||||
|
|
||||||
b.Property<string>("Contenu")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(1000)
|
|
||||||
.HasColumnType("nvarchar(1000)");
|
|
||||||
|
|
||||||
b.Property<DateTime>("Date")
|
|
||||||
.HasColumnType("datetime2");
|
|
||||||
|
|
||||||
b.Property<int>("DiscussionId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int?>("GroupId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int?>("KeyId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<bool>("Type")
|
|
||||||
.HasColumnType("bit");
|
|
||||||
|
|
||||||
b.Property<int>("UserId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.HasIndex("DiscussionId");
|
|
||||||
|
|
||||||
b.HasIndex("GroupId");
|
|
||||||
|
|
||||||
b.HasIndex("KeyId");
|
|
||||||
|
|
||||||
b.HasIndex("UserId");
|
|
||||||
|
|
||||||
b.ToTable("Messages");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Role", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"));
|
|
||||||
|
|
||||||
b.Property<string>("Libelle")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(50)
|
|
||||||
.HasColumnType("nvarchar(50)");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.ToTable("Roles");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.User", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"));
|
|
||||||
|
|
||||||
b.Property<string>("Description")
|
|
||||||
.HasMaxLength(200)
|
|
||||||
.HasColumnType("nvarchar(200)");
|
|
||||||
|
|
||||||
b.Property<string>("Email")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(70)
|
|
||||||
.HasColumnType("nvarchar(70)");
|
|
||||||
|
|
||||||
b.Property<string>("Password")
|
|
||||||
.IsRequired()
|
|
||||||
.HasColumnType("nvarchar(max)");
|
|
||||||
|
|
||||||
b.Property<string>("ProfilePicture")
|
|
||||||
.HasColumnType("nvarchar(max)");
|
|
||||||
|
|
||||||
b.Property<int?>("RoleId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<string>("Tel")
|
|
||||||
.IsRequired()
|
|
||||||
.HasColumnType("nvarchar(max)");
|
|
||||||
|
|
||||||
b.Property<string>("Username")
|
|
||||||
.IsRequired()
|
|
||||||
.HasMaxLength(50)
|
|
||||||
.HasColumnType("nvarchar(50)");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.HasIndex("RoleId");
|
|
||||||
|
|
||||||
b.ToTable("Users");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.UserDiscussion", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("UserId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("DiscussionId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.HasKey("UserId", "DiscussionId");
|
|
||||||
|
|
||||||
b.HasIndex("DiscussionId");
|
|
||||||
|
|
||||||
b.ToTable("UserDiscussions");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Discussion", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("Knots.Models.Group", "Group")
|
|
||||||
.WithMany()
|
|
||||||
.HasForeignKey("GroupId")
|
|
||||||
.OnDelete(DeleteBehavior.Restrict);
|
|
||||||
|
|
||||||
b.Navigation("Group");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Group", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("Knots.Models.Discussion", "Discussion")
|
|
||||||
.WithMany()
|
|
||||||
.HasForeignKey("DiscussionId")
|
|
||||||
.OnDelete(DeleteBehavior.Restrict)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.Navigation("Discussion");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.GroupUser", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("Knots.Models.Group", "Group")
|
|
||||||
.WithMany("GroupUsers")
|
|
||||||
.HasForeignKey("GroupId")
|
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.HasOne("Knots.Models.Role", "Role")
|
|
||||||
.WithMany("GroupUsers")
|
|
||||||
.HasForeignKey("RoleId");
|
|
||||||
|
|
||||||
b.HasOne("Knots.Models.User", "User")
|
|
||||||
.WithMany()
|
|
||||||
.HasForeignKey("UserId")
|
|
||||||
.OnDelete(DeleteBehavior.Restrict)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.Navigation("Group");
|
|
||||||
|
|
||||||
b.Navigation("Role");
|
|
||||||
|
|
||||||
b.Navigation("User");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Message", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("Knots.Models.Discussion", "Discussion")
|
|
||||||
.WithMany("Messages")
|
|
||||||
.HasForeignKey("DiscussionId")
|
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.HasOne("Knots.Models.Group", "Group")
|
|
||||||
.WithMany()
|
|
||||||
.HasForeignKey("GroupId");
|
|
||||||
|
|
||||||
b.HasOne("Knots.Models.Key", "Key")
|
|
||||||
.WithMany("Messages")
|
|
||||||
.HasForeignKey("KeyId");
|
|
||||||
|
|
||||||
b.HasOne("Knots.Models.User", "User")
|
|
||||||
.WithMany("Messages")
|
|
||||||
.HasForeignKey("UserId")
|
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.Navigation("Discussion");
|
|
||||||
|
|
||||||
b.Navigation("Group");
|
|
||||||
|
|
||||||
b.Navigation("Key");
|
|
||||||
|
|
||||||
b.Navigation("User");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.User", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("Knots.Models.Role", "Role")
|
|
||||||
.WithMany("Users")
|
|
||||||
.HasForeignKey("RoleId");
|
|
||||||
|
|
||||||
b.Navigation("Role");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.UserDiscussion", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("Knots.Models.Discussion", "Discussion")
|
|
||||||
.WithMany("UserDiscussions")
|
|
||||||
.HasForeignKey("DiscussionId")
|
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.HasOne("Knots.Models.User", "User")
|
|
||||||
.WithMany("UserDiscussions")
|
|
||||||
.HasForeignKey("UserId")
|
|
||||||
.OnDelete(DeleteBehavior.Restrict)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.Navigation("Discussion");
|
|
||||||
|
|
||||||
b.Navigation("User");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Discussion", b =>
|
|
||||||
{
|
|
||||||
b.Navigation("Messages");
|
|
||||||
|
|
||||||
b.Navigation("UserDiscussions");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Group", b =>
|
|
||||||
{
|
|
||||||
b.Navigation("GroupUsers");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Key", b =>
|
|
||||||
{
|
|
||||||
b.Navigation("Messages");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Role", b =>
|
|
||||||
{
|
|
||||||
b.Navigation("GroupUsers");
|
|
||||||
|
|
||||||
b.Navigation("Users");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.User", b =>
|
|
||||||
{
|
|
||||||
b.Navigation("Messages");
|
|
||||||
|
|
||||||
b.Navigation("UserDiscussions");
|
|
||||||
});
|
|
||||||
#pragma warning restore 612, 618
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,170 +0,0 @@
|
|||||||
using Microsoft.EntityFrameworkCore.Migrations;
|
|
||||||
|
|
||||||
#nullable disable
|
|
||||||
|
|
||||||
namespace Knots.Migrations
|
|
||||||
{
|
|
||||||
/// <inheritdoc />
|
|
||||||
public partial class Discussion : Migration
|
|
||||||
{
|
|
||||||
/// <inheritdoc />
|
|
||||||
protected override void Up(MigrationBuilder migrationBuilder)
|
|
||||||
{
|
|
||||||
migrationBuilder.DropForeignKey(
|
|
||||||
name: "FK_Groups_Discussions_DiscussionId",
|
|
||||||
table: "Groups");
|
|
||||||
|
|
||||||
migrationBuilder.DropForeignKey(
|
|
||||||
name: "FK_UserDiscussions_Users_UserId",
|
|
||||||
table: "UserDiscussions");
|
|
||||||
|
|
||||||
migrationBuilder.DropIndex(
|
|
||||||
name: "IX_Groups_DiscussionId",
|
|
||||||
table: "Groups");
|
|
||||||
|
|
||||||
migrationBuilder.DropColumn(
|
|
||||||
name: "KeyId",
|
|
||||||
table: "Groups");
|
|
||||||
|
|
||||||
migrationBuilder.AddColumn<int>(
|
|
||||||
name: "GroupId",
|
|
||||||
table: "Discussions",
|
|
||||||
type: "int",
|
|
||||||
nullable: true);
|
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
name: "GroupUsers",
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
GroupId = table.Column<int>(type: "int", nullable: false),
|
|
||||||
UserId = table.Column<int>(type: "int", nullable: false),
|
|
||||||
RoleId = table.Column<int>(type: "int", nullable: true)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_GroupUsers", x => new { x.GroupId, x.UserId });
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_GroupUsers_Groups_GroupId",
|
|
||||||
column: x => x.GroupId,
|
|
||||||
principalTable: "Groups",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Cascade);
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_GroupUsers_Roles_RoleId",
|
|
||||||
column: x => x.RoleId,
|
|
||||||
principalTable: "Roles",
|
|
||||||
principalColumn: "Id");
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_GroupUsers_Users_UserId",
|
|
||||||
column: x => x.UserId,
|
|
||||||
principalTable: "Users",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Restrict);
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_Groups_DiscussionId",
|
|
||||||
table: "Groups",
|
|
||||||
column: "DiscussionId");
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_Discussions_GroupId",
|
|
||||||
table: "Discussions",
|
|
||||||
column: "GroupId");
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_GroupUsers_RoleId",
|
|
||||||
table: "GroupUsers",
|
|
||||||
column: "RoleId");
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_GroupUsers_UserId",
|
|
||||||
table: "GroupUsers",
|
|
||||||
column: "UserId");
|
|
||||||
|
|
||||||
migrationBuilder.AddForeignKey(
|
|
||||||
name: "FK_Discussions_Groups_GroupId",
|
|
||||||
table: "Discussions",
|
|
||||||
column: "GroupId",
|
|
||||||
principalTable: "Groups",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Restrict);
|
|
||||||
|
|
||||||
migrationBuilder.AddForeignKey(
|
|
||||||
name: "FK_Groups_Discussions_DiscussionId",
|
|
||||||
table: "Groups",
|
|
||||||
column: "DiscussionId",
|
|
||||||
principalTable: "Discussions",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Restrict);
|
|
||||||
|
|
||||||
migrationBuilder.AddForeignKey(
|
|
||||||
name: "FK_UserDiscussions_Users_UserId",
|
|
||||||
table: "UserDiscussions",
|
|
||||||
column: "UserId",
|
|
||||||
principalTable: "Users",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Restrict);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <inheritdoc />
|
|
||||||
protected override void Down(MigrationBuilder migrationBuilder)
|
|
||||||
{
|
|
||||||
migrationBuilder.DropForeignKey(
|
|
||||||
name: "FK_Discussions_Groups_GroupId",
|
|
||||||
table: "Discussions");
|
|
||||||
|
|
||||||
migrationBuilder.DropForeignKey(
|
|
||||||
name: "FK_Groups_Discussions_DiscussionId",
|
|
||||||
table: "Groups");
|
|
||||||
|
|
||||||
migrationBuilder.DropForeignKey(
|
|
||||||
name: "FK_UserDiscussions_Users_UserId",
|
|
||||||
table: "UserDiscussions");
|
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
|
||||||
name: "GroupUsers");
|
|
||||||
|
|
||||||
migrationBuilder.DropIndex(
|
|
||||||
name: "IX_Groups_DiscussionId",
|
|
||||||
table: "Groups");
|
|
||||||
|
|
||||||
migrationBuilder.DropIndex(
|
|
||||||
name: "IX_Discussions_GroupId",
|
|
||||||
table: "Discussions");
|
|
||||||
|
|
||||||
migrationBuilder.DropColumn(
|
|
||||||
name: "GroupId",
|
|
||||||
table: "Discussions");
|
|
||||||
|
|
||||||
migrationBuilder.AddColumn<int>(
|
|
||||||
name: "KeyId",
|
|
||||||
table: "Groups",
|
|
||||||
type: "int",
|
|
||||||
nullable: false,
|
|
||||||
defaultValue: 0);
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_Groups_DiscussionId",
|
|
||||||
table: "Groups",
|
|
||||||
column: "DiscussionId",
|
|
||||||
unique: true);
|
|
||||||
|
|
||||||
migrationBuilder.AddForeignKey(
|
|
||||||
name: "FK_Groups_Discussions_DiscussionId",
|
|
||||||
table: "Groups",
|
|
||||||
column: "DiscussionId",
|
|
||||||
principalTable: "Discussions",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Cascade);
|
|
||||||
|
|
||||||
migrationBuilder.AddForeignKey(
|
|
||||||
name: "FK_UserDiscussions_Users_UserId",
|
|
||||||
table: "UserDiscussions",
|
|
||||||
column: "UserId",
|
|
||||||
principalTable: "Users",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Cascade);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -33,16 +33,11 @@ namespace Knots.Migrations
|
|||||||
b.Property<DateTime>("CreatedAt")
|
b.Property<DateTime>("CreatedAt")
|
||||||
.HasColumnType("datetime2");
|
.HasColumnType("datetime2");
|
||||||
|
|
||||||
b.Property<int?>("GroupId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<bool>("IsGroup")
|
b.Property<bool>("IsGroup")
|
||||||
.HasColumnType("bit");
|
.HasColumnType("bit");
|
||||||
|
|
||||||
b.HasKey("Id");
|
b.HasKey("Id");
|
||||||
|
|
||||||
b.HasIndex("GroupId");
|
|
||||||
|
|
||||||
b.ToTable("Discussions");
|
b.ToTable("Discussions");
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -57,6 +52,9 @@ namespace Knots.Migrations
|
|||||||
b.Property<int>("DiscussionId")
|
b.Property<int>("DiscussionId")
|
||||||
.HasColumnType("int");
|
.HasColumnType("int");
|
||||||
|
|
||||||
|
b.Property<int>("KeyId")
|
||||||
|
.HasColumnType("int");
|
||||||
|
|
||||||
b.Property<int>("MembersAmount")
|
b.Property<int>("MembersAmount")
|
||||||
.HasColumnType("int");
|
.HasColumnType("int");
|
||||||
|
|
||||||
@@ -70,31 +68,12 @@ namespace Knots.Migrations
|
|||||||
|
|
||||||
b.HasKey("Id");
|
b.HasKey("Id");
|
||||||
|
|
||||||
b.HasIndex("DiscussionId");
|
b.HasIndex("DiscussionId")
|
||||||
|
.IsUnique();
|
||||||
|
|
||||||
b.ToTable("Groups");
|
b.ToTable("Groups");
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.GroupUser", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("GroupId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("UserId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int?>("RoleId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.HasKey("GroupId", "UserId");
|
|
||||||
|
|
||||||
b.HasIndex("RoleId");
|
|
||||||
|
|
||||||
b.HasIndex("UserId");
|
|
||||||
|
|
||||||
b.ToTable("GroupUsers");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Key", b =>
|
modelBuilder.Entity("Knots.Models.Key", b =>
|
||||||
{
|
{
|
||||||
b.Property<int>("Id")
|
b.Property<int>("Id")
|
||||||
@@ -233,50 +212,15 @@ namespace Knots.Migrations
|
|||||||
b.ToTable("UserDiscussions");
|
b.ToTable("UserDiscussions");
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Discussion", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("Knots.Models.Group", "Group")
|
|
||||||
.WithMany()
|
|
||||||
.HasForeignKey("GroupId")
|
|
||||||
.OnDelete(DeleteBehavior.Restrict);
|
|
||||||
|
|
||||||
b.Navigation("Group");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Group", b =>
|
modelBuilder.Entity("Knots.Models.Group", b =>
|
||||||
{
|
{
|
||||||
b.HasOne("Knots.Models.Discussion", "Discussion")
|
b.HasOne("Knots.Models.Discussion", "Discussion")
|
||||||
.WithMany()
|
.WithOne("Group")
|
||||||
.HasForeignKey("DiscussionId")
|
.HasForeignKey("Knots.Models.Group", "DiscussionId")
|
||||||
.OnDelete(DeleteBehavior.Restrict)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.Navigation("Discussion");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.GroupUser", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("Knots.Models.Group", "Group")
|
|
||||||
.WithMany("GroupUsers")
|
|
||||||
.HasForeignKey("GroupId")
|
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
.IsRequired();
|
.IsRequired();
|
||||||
|
|
||||||
b.HasOne("Knots.Models.Role", "Role")
|
b.Navigation("Discussion");
|
||||||
.WithMany("GroupUsers")
|
|
||||||
.HasForeignKey("RoleId");
|
|
||||||
|
|
||||||
b.HasOne("Knots.Models.User", "User")
|
|
||||||
.WithMany()
|
|
||||||
.HasForeignKey("UserId")
|
|
||||||
.OnDelete(DeleteBehavior.Restrict)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.Navigation("Group");
|
|
||||||
|
|
||||||
b.Navigation("Role");
|
|
||||||
|
|
||||||
b.Navigation("User");
|
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Message", b =>
|
modelBuilder.Entity("Knots.Models.Message", b =>
|
||||||
@@ -330,7 +274,7 @@ namespace Knots.Migrations
|
|||||||
b.HasOne("Knots.Models.User", "User")
|
b.HasOne("Knots.Models.User", "User")
|
||||||
.WithMany("UserDiscussions")
|
.WithMany("UserDiscussions")
|
||||||
.HasForeignKey("UserId")
|
.HasForeignKey("UserId")
|
||||||
.OnDelete(DeleteBehavior.Restrict)
|
.OnDelete(DeleteBehavior.Cascade)
|
||||||
.IsRequired();
|
.IsRequired();
|
||||||
|
|
||||||
b.Navigation("Discussion");
|
b.Navigation("Discussion");
|
||||||
@@ -340,16 +284,13 @@ namespace Knots.Migrations
|
|||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Discussion", b =>
|
modelBuilder.Entity("Knots.Models.Discussion", b =>
|
||||||
{
|
{
|
||||||
|
b.Navigation("Group");
|
||||||
|
|
||||||
b.Navigation("Messages");
|
b.Navigation("Messages");
|
||||||
|
|
||||||
b.Navigation("UserDiscussions");
|
b.Navigation("UserDiscussions");
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Group", b =>
|
|
||||||
{
|
|
||||||
b.Navigation("GroupUsers");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Key", b =>
|
modelBuilder.Entity("Knots.Models.Key", b =>
|
||||||
{
|
{
|
||||||
b.Navigation("Messages");
|
b.Navigation("Messages");
|
||||||
@@ -357,8 +298,6 @@ namespace Knots.Migrations
|
|||||||
|
|
||||||
modelBuilder.Entity("Knots.Models.Role", b =>
|
modelBuilder.Entity("Knots.Models.Role", b =>
|
||||||
{
|
{
|
||||||
b.Navigation("GroupUsers");
|
|
||||||
|
|
||||||
b.Navigation("Users");
|
b.Navigation("Users");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -13,7 +13,7 @@ using System.Reflection;
|
|||||||
[assembly: System.Reflection.AssemblyCompanyAttribute("Knots")]
|
[assembly: System.Reflection.AssemblyCompanyAttribute("Knots")]
|
||||||
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||||
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+af1b14b0d2a889e3bdfbe2f08dac0cf0ef4922f5")]
|
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+0b9e01c92578a51eb81cd673aaae95ac56d7c4af")]
|
||||||
[assembly: System.Reflection.AssemblyProductAttribute("Knots")]
|
[assembly: System.Reflection.AssemblyProductAttribute("Knots")]
|
||||||
[assembly: System.Reflection.AssemblyTitleAttribute("Knots")]
|
[assembly: System.Reflection.AssemblyTitleAttribute("Knots")]
|
||||||
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
70071d47fa6a38e032a5e27cb02ec3d498f03b9e5a579b09ce080cdcbf79c5ca
|
b62edb6f2119aec2fe98bcce877c4ef16135c025b03ceefc31d7509622b283ee
|
||||||
|
|||||||
@@ -9,11 +9,11 @@ build_property.EnforceExtendedAnalyzerRules =
|
|||||||
build_property._SupportedPlatformList = Linux,macOS,Windows
|
build_property._SupportedPlatformList = Linux,macOS,Windows
|
||||||
build_property.RootNamespace = Knots
|
build_property.RootNamespace = Knots
|
||||||
build_property.RootNamespace = Knots
|
build_property.RootNamespace = Knots
|
||||||
build_property.ProjectDir = C:\Users\Carte\RiderProjects\Knots\Knots\
|
build_property.ProjectDir = C:\Users\dogge\RiderProjects\Knots\Knots\
|
||||||
build_property.EnableComHosting =
|
build_property.EnableComHosting =
|
||||||
build_property.EnableGeneratedComInterfaceComImportInterop =
|
build_property.EnableGeneratedComInterfaceComImportInterop =
|
||||||
build_property.RazorLangVersion = 8.0
|
build_property.RazorLangVersion = 8.0
|
||||||
build_property.SupportLocalizedComponentNames =
|
build_property.SupportLocalizedComponentNames =
|
||||||
build_property.GenerateRazorMetadataSourceChecksumAttributes =
|
build_property.GenerateRazorMetadataSourceChecksumAttributes =
|
||||||
build_property.MSBuildProjectDirectory = C:\Users\Carte\RiderProjects\Knots\Knots
|
build_property.MSBuildProjectDirectory = C:\Users\dogge\RiderProjects\Knots\Knots
|
||||||
build_property._RazorSourceGeneratorDebug =
|
build_property._RazorSourceGeneratorDebug =
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -1 +1 @@
|
|||||||
053df2e2d5f4b0376cb8e5b4fed7175ebe09f3e8d3a4d8035c42b5a7de1f17a9
|
6edaa06a6de0e0e58dbcac8a2a5db11b7c3fa5582c067ae51bfae956cf647dc5
|
||||||
|
|||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
a8415ff929068fa8f2ff3412a5ec6274995459d8b2f0bd67ac17c8c58e30ac97
|
2a517ff3e626fe122f9253056129ac168f6d5d47ce545c1f8a40a45a4c220257
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,23 +1,23 @@
|
|||||||
{
|
{
|
||||||
"format": 1,
|
"format": 1,
|
||||||
"restore": {
|
"restore": {
|
||||||
"C:\\Users\\Carte\\RiderProjects\\Knots\\Knots\\Knots.csproj": {}
|
"C:\\Users\\dogge\\RiderProjects\\Knots\\Knots\\Knots.csproj": {}
|
||||||
},
|
},
|
||||||
"projects": {
|
"projects": {
|
||||||
"C:\\Users\\Carte\\RiderProjects\\Knots\\Knots\\Knots.csproj": {
|
"C:\\Users\\dogge\\RiderProjects\\Knots\\Knots\\Knots.csproj": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"restore": {
|
"restore": {
|
||||||
"projectUniqueName": "C:\\Users\\Carte\\RiderProjects\\Knots\\Knots\\Knots.csproj",
|
"projectUniqueName": "C:\\Users\\dogge\\RiderProjects\\Knots\\Knots\\Knots.csproj",
|
||||||
"projectName": "Knots",
|
"projectName": "Knots",
|
||||||
"projectPath": "C:\\Users\\Carte\\RiderProjects\\Knots\\Knots\\Knots.csproj",
|
"projectPath": "C:\\Users\\dogge\\RiderProjects\\Knots\\Knots\\Knots.csproj",
|
||||||
"packagesPath": "C:\\Users\\Carte\\.nuget\\packages\\",
|
"packagesPath": "C:\\Users\\dogge\\.nuget\\packages\\",
|
||||||
"outputPath": "C:\\Users\\Carte\\RiderProjects\\Knots\\Knots\\obj\\",
|
"outputPath": "C:\\Users\\dogge\\RiderProjects\\Knots\\Knots\\obj\\",
|
||||||
"projectStyle": "PackageReference",
|
"projectStyle": "PackageReference",
|
||||||
"fallbackFolders": [
|
"fallbackFolders": [
|
||||||
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
|
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
|
||||||
],
|
],
|
||||||
"configFilePaths": [
|
"configFilePaths": [
|
||||||
"C:\\Users\\Carte\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
"C:\\Users\\dogge\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
||||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||||
],
|
],
|
||||||
@@ -119,7 +119,7 @@
|
|||||||
"privateAssets": "all"
|
"privateAssets": "all"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"runtimeIdentifierGraphPath": "C:\\Users\\Carte\\.dotnet\\sdk\\8.0.421/PortableRuntimeIdentifierGraph.json"
|
"runtimeIdentifierGraphPath": "C:\\Users\\dogge\\.dotnet\\sdk\\8.0.421/PortableRuntimeIdentifierGraph.json"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,12 +5,12 @@
|
|||||||
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
|
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
|
||||||
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
|
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
|
||||||
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
|
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
|
||||||
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\Carte\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
|
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\dogge\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
|
||||||
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
|
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
|
||||||
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">7.0.0</NuGetToolVersion>
|
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">7.0.0</NuGetToolVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
<SourceRoot Include="C:\Users\Carte\.nuget\packages\" />
|
<SourceRoot Include="C:\Users\dogge\.nuget\packages\" />
|
||||||
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
|
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
<Import Project="$(NuGetPackageRoot)microsoft.entityframeworkcore.design\8.0.25\build\net8.0\Microsoft.EntityFrameworkCore.Design.props" Condition="Exists('$(NuGetPackageRoot)microsoft.entityframeworkcore.design\8.0.25\build\net8.0\Microsoft.EntityFrameworkCore.Design.props')" />
|
<Import Project="$(NuGetPackageRoot)microsoft.entityframeworkcore.design\8.0.25\build\net8.0\Microsoft.EntityFrameworkCore.Design.props" Condition="Exists('$(NuGetPackageRoot)microsoft.entityframeworkcore.design\8.0.25\build\net8.0\Microsoft.EntityFrameworkCore.Design.props')" />
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
<PkgMicrosoft_Extensions_ApiDescription_Server Condition=" '$(PkgMicrosoft_Extensions_ApiDescription_Server)' == '' ">C:\Users\Carte\.nuget\packages\microsoft.extensions.apidescription.server\8.0.0</PkgMicrosoft_Extensions_ApiDescription_Server>
|
<PkgMicrosoft_Extensions_ApiDescription_Server Condition=" '$(PkgMicrosoft_Extensions_ApiDescription_Server)' == '' ">C:\Users\dogge\.nuget\packages\microsoft.extensions.apidescription.server\8.0.0</PkgMicrosoft_Extensions_ApiDescription_Server>
|
||||||
<PkgMicrosoft_CodeAnalysis_Analyzers Condition=" '$(PkgMicrosoft_CodeAnalysis_Analyzers)' == '' ">C:\Users\Carte\.nuget\packages\microsoft.codeanalysis.analyzers\3.3.3</PkgMicrosoft_CodeAnalysis_Analyzers>
|
<PkgMicrosoft_CodeAnalysis_Analyzers Condition=" '$(PkgMicrosoft_CodeAnalysis_Analyzers)' == '' ">C:\Users\dogge\.nuget\packages\microsoft.codeanalysis.analyzers\3.3.3</PkgMicrosoft_CodeAnalysis_Analyzers>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
</Project>
|
</Project>
|
||||||
@@ -6120,23 +6120,23 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"packageFolders": {
|
"packageFolders": {
|
||||||
"C:\\Users\\Carte\\.nuget\\packages\\": {},
|
"C:\\Users\\dogge\\.nuget\\packages\\": {},
|
||||||
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {}
|
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {}
|
||||||
},
|
},
|
||||||
"project": {
|
"project": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"restore": {
|
"restore": {
|
||||||
"projectUniqueName": "C:\\Users\\Carte\\RiderProjects\\Knots\\Knots\\Knots.csproj",
|
"projectUniqueName": "C:\\Users\\dogge\\RiderProjects\\Knots\\Knots\\Knots.csproj",
|
||||||
"projectName": "Knots",
|
"projectName": "Knots",
|
||||||
"projectPath": "C:\\Users\\Carte\\RiderProjects\\Knots\\Knots\\Knots.csproj",
|
"projectPath": "C:\\Users\\dogge\\RiderProjects\\Knots\\Knots\\Knots.csproj",
|
||||||
"packagesPath": "C:\\Users\\Carte\\.nuget\\packages\\",
|
"packagesPath": "C:\\Users\\dogge\\.nuget\\packages\\",
|
||||||
"outputPath": "C:\\Users\\Carte\\RiderProjects\\Knots\\Knots\\obj\\",
|
"outputPath": "C:\\Users\\dogge\\RiderProjects\\Knots\\Knots\\obj\\",
|
||||||
"projectStyle": "PackageReference",
|
"projectStyle": "PackageReference",
|
||||||
"fallbackFolders": [
|
"fallbackFolders": [
|
||||||
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
|
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
|
||||||
],
|
],
|
||||||
"configFilePaths": [
|
"configFilePaths": [
|
||||||
"C:\\Users\\Carte\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
"C:\\Users\\dogge\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
||||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||||
],
|
],
|
||||||
@@ -6238,7 +6238,7 @@
|
|||||||
"privateAssets": "all"
|
"privateAssets": "all"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"runtimeIdentifierGraphPath": "C:\\Users\\Carte\\.dotnet\\sdk\\8.0.421/PortableRuntimeIdentifierGraph.json"
|
"runtimeIdentifierGraphPath": "C:\\Users\\dogge\\.dotnet\\sdk\\8.0.421/PortableRuntimeIdentifierGraph.json"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
17811287059385335
|
17811297224323847
|
||||||
@@ -1 +1 @@
|
|||||||
17811287068653040
|
17811297410231701
|
||||||
Reference in New Issue
Block a user