diff --git a/.gitea/ISSUE_TEMPLATE/bug.yaml b/.gitea/ISSUE_TEMPLATE/bug.yaml index f94e41d..038d270 100644 --- a/.gitea/ISSUE_TEMPLATE/bug.yaml +++ b/.gitea/ISSUE_TEMPLATE/bug.yaml @@ -1,28 +1,28 @@ -name: "IM 缺陷报告" -description: "记录聊天消息、SignalR 或缓存相关的问题" -title: "[BUG]简要描述问题" -labels: ["bug", "high-priority"] -body: - - type: markdown - attributes: - value: "请详细填写 Bug 信息,这将有助于快速定位后端 Redis 或 SignalR 的问题。" - - type: input - id: stream_key - attributes: - label: "相关 StreamKey / 群组 ID" - placeholder: "例如:group:123" - - type: textarea - id: steps - attributes: - label: "复现步骤" - value: | - 1. 登录用户 A 和用户 B - 2. 用户 A 向群组发送消息 - 3. 用户 B 界面没有反应 - validations: - required: true - - type: textarea - id: logs - attributes: - label: "控制台错误日志 (Console Log)" +name: "IM 缺陷报告" +description: "记录聊天消息、SignalR 或缓存相关的问题" +title: "[BUG]简要描述问题" +labels: ["bug", "high-priority"] +body: + - type: markdown + attributes: + value: "请详细填写 Bug 信息,这将有助于快速定位后端 Redis 或 SignalR 的问题。" + - type: input + id: stream_key + attributes: + label: "相关 StreamKey / 群组 ID" + placeholder: "例如:group:123" + - type: textarea + id: steps + attributes: + label: "复现步骤" + value: | + 1. 登录用户 A 和用户 B + 2. 用户 A 向群组发送消息 + 3. 用户 B 界面没有反应 + validations: + required: true + - type: textarea + id: logs + attributes: + label: "控制台错误日志 (Console Log)" placeholder: "在此粘贴浏览器或后端的报错信息..." \ No newline at end of file diff --git a/README.md b/README.md index 34feb2a..6076084 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,3 @@ -# Chat - +# Chat + 一个学习项目 \ No newline at end of file diff --git a/backend/IMTest/.gitignore b/backend/IMTest/.gitignore index 3e16852..0e6ce67 100644 --- a/backend/IMTest/.gitignore +++ b/backend/IMTest/.gitignore @@ -1,3 +1,3 @@ -bin/ -obj/ +bin/ +obj/ .vs/ \ No newline at end of file diff --git a/backend/IMTest/IMTest.csproj b/backend/IMTest/IMTest.csproj index ce9db65..dbe36bc 100644 --- a/backend/IMTest/IMTest.csproj +++ b/backend/IMTest/IMTest.csproj @@ -1,29 +1,29 @@ - - - - net8.0 - enable - enable - - false - true - - - - - - - - - - - - - - - - - - - - + + + + net8.0 + enable + enable + + false + true + + + + + + + + + + + + + + + + + + + + diff --git a/backend/IMTest/Service/AuthServiceTest.cs b/backend/IMTest/Service/AuthServiceTest.cs index de75b8d..0c50b1f 100644 --- a/backend/IMTest/Service/AuthServiceTest.cs +++ b/backend/IMTest/Service/AuthServiceTest.cs @@ -1,208 +1,208 @@ -using AutoMapper; -using IM_API.Dtos.Auth; -using IM_API.Dtos.User; -using IM_API.Exceptions; -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.Services; -using IM_API.Tools; -using Microsoft.EntityFrameworkCore; -using Microsoft.Extensions.Logging; -using Moq; -using System; -using System.Threading; -using System.Threading.Tasks; -using Xunit; - -public class AuthServiceTests -{ - // ---------- InMemory DbContext ---------- - private ImContext CreateDbContext() - { - var options = new DbContextOptionsBuilder() - .UseInMemoryDatabase(Guid.NewGuid().ToString()) - .Options; - - var context = new ImContext(options); - return context; - } - - // ---------- ģ SaveChanges 쳣 DbContext ---------- - private class ThrowOnSaveImContext : ImContext - { - private readonly bool _throw; - public ThrowOnSaveImContext(DbContextOptions options, bool throwOnSave) : base(options) - { - _throw = throwOnSave; - } - - public override Task SaveChangesAsync(CancellationToken cancellationToken = default) - { - if (_throw) throw new InvalidOperationException("Simulated DB save error"); - return base.SaveChangesAsync(cancellationToken); - } - } - - // ---------- Ĭ AutoMapperӳã ---------- - private IMapper CreateMapper() - { - var config = new MapperConfiguration(cfg => - { - cfg.CreateMap(); - cfg.CreateMap(); - }); - return config.CreateMapper(); - } - - // ---------- ServiceעԶ mapper ---------- - private AuthService CreateService(ImContext context, IMapper mapper = null) - { - var loggerMock = new Mock>(); - var mapperToUse = mapper ?? CreateMapper(); - var mockCache = new Mock(); - return new AuthService(context, loggerMock.Object, mapperToUse,mockCache.Object); - } - - // --------------------- --------------------- - - [Fact] - public async Task LoginAsync_ShouldReturnUser_WhenValidCredentials() - { - var context = CreateDbContext(); - context.Users.Add(new User { Id = 1, Username = "Tom", Password = "123456", NickName = "û" }); - await context.SaveChangesAsync(); - - var service = CreateService(context); - - var result = await service.LoginAsync(new LoginRequestDto - { - Username = "Tom", - Password = "123456" - }); - - Assert.NotNull(result); - Assert.Equal(1, result.Id); - Assert.Equal("Tom", result.Username); - } - - [Fact] - public async Task LoginAsync_ShouldThrowException_WhenInvalidCredentials() - { - var context = CreateDbContext(); - var service = CreateService(context); - - await Assert.ThrowsAsync(async () => - { - await service.LoginAsync(new LoginRequestDto - { - Username = "NotExist", - Password = "wrong" - }); - }); - } - - [Fact] - public async Task LoginAsync_IsCaseSensitive_ForUsername() - { - // ˵ǰʵǾȷƥ => ִСд - var context = CreateDbContext(); - context.Users.Add(new User { Id = 10, Username = "Tom", Password = "p" }); - await context.SaveChangesAsync(); - - var service = CreateService(context); - - // ʹСдûӦʧܣǰ߼ִСд - await Assert.ThrowsAsync(async () => - { - await service.LoginAsync(new LoginRequestDto { Username = "tom", Password = "p" }); - }); - } - - [Fact] - public async Task RegisterAsync_ShouldPersistUserAndReturnDto_WhenNewUser() - { - var context = CreateDbContext(); - var service = CreateService(context); - - var request = new RegisterRequestDto - { - Username = "Jerry", - Password = "123456" - }; - - var result = await service.RegisterAsync(request); - - // ֵȷ - Assert.NotNull(result); - Assert.Equal("Jerry", result.Username); - Assert.True(result.Id > 0); - - // DB ȷʵڸû - var persisted = await context.Users.FirstOrDefaultAsync(u => u.Username == "Jerry"); - Assert.NotNull(persisted); - Assert.Equal("Jerry", persisted.Username); - } - - [Fact] - public async Task RegisterAsync_ShouldThrowException_WhenUserExists() - { - var context = CreateDbContext(); - context.Users.Add(new User { Username = "Tom", Password = "12223" }); - await context.SaveChangesAsync(); - - var service = CreateService(context); - - var request = new RegisterRequestDto { Username = "Tom", Password = "123" }; - - await Assert.ThrowsAsync(() => service.RegisterAsync(request)); - } - - [Fact] - public async Task RegisterAsync_ShouldThrow_WhenMapperThrows() - { - var context = CreateDbContext(); - - var mapperMock = new Mock(); - mapperMock.Setup(m => m.Map(It.IsAny())) - .Throws(new Exception("mapper failure")); - - var service = CreateService(context, mapperMock.Object); - - var req = new RegisterRequestDto { Username = "A", Password = "B" }; - - var ex = await Assert.ThrowsAsync(() => service.RegisterAsync(req)); - Assert.Contains("mapper failure", ex.Message); - } - - [Fact] - public async Task RegisterAsync_ShouldPropagateSaveException_WhenSaveFails() - { - var options = new DbContextOptionsBuilder() - .UseInMemoryDatabase(Guid.NewGuid().ToString()) - .Options; - - // ʹԶ SaveChanges ʱ쳣 - var throwingContext = new ThrowOnSaveImContext(options, throwOnSave: true); - - var service = CreateService(throwingContext); - - var req = new RegisterRequestDto { Username = "X", Password = "P" }; - - var ex = await Assert.ThrowsAsync(() => service.RegisterAsync(req)); - Assert.Contains("Simulated DB save error", ex.Message); - } - - [Fact] - public async Task RegisterAsync_NullDto_ThrowsNullReferenceException_CurrentBehavior() - { - // ˵ǰʵûж dto Ϊ null 飬ᴥ NullReferenceException - // 飺иΪ ArgumentNullException ߽вУ鲢ȷ - var context = CreateDbContext(); - var service = CreateService(context); - - await Assert.ThrowsAsync(async () => - { - await service.RegisterAsync(null); - }); - } -} +using AutoMapper; +using IM_API.Dtos.Auth; +using IM_API.Dtos.User; +using IM_API.Exceptions; +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.Services; +using IM_API.Tools; +using Microsoft.EntityFrameworkCore; +using Microsoft.Extensions.Logging; +using Moq; +using System; +using System.Threading; +using System.Threading.Tasks; +using Xunit; + +public class AuthServiceTests +{ + // ---------- InMemory DbContext ---------- + private ImContext CreateDbContext() + { + var options = new DbContextOptionsBuilder() + .UseInMemoryDatabase(Guid.NewGuid().ToString()) + .Options; + + var context = new ImContext(options); + return context; + } + + // ---------- ģ SaveChanges 쳣 DbContext ---------- + private class ThrowOnSaveImContext : ImContext + { + private readonly bool _throw; + public ThrowOnSaveImContext(DbContextOptions options, bool throwOnSave) : base(options) + { + _throw = throwOnSave; + } + + public override Task SaveChangesAsync(CancellationToken cancellationToken = default) + { + if (_throw) throw new InvalidOperationException("Simulated DB save error"); + return base.SaveChangesAsync(cancellationToken); + } + } + + // ---------- Ĭ AutoMapperӳã ---------- + private IMapper CreateMapper() + { + var config = new MapperConfiguration(cfg => + { + cfg.CreateMap(); + cfg.CreateMap(); + }); + return config.CreateMapper(); + } + + // ---------- ServiceעԶ mapper ---------- + private AuthService CreateService(ImContext context, IMapper mapper = null) + { + var loggerMock = new Mock>(); + var mapperToUse = mapper ?? CreateMapper(); + var mockCache = new Mock(); + return new AuthService(context, loggerMock.Object, mapperToUse,mockCache.Object); + } + + // --------------------- --------------------- + + [Fact] + public async Task LoginAsync_ShouldReturnUser_WhenValidCredentials() + { + var context = CreateDbContext(); + context.Users.Add(new User { Id = 1, Username = "Tom", Password = "123456", NickName = "û" }); + await context.SaveChangesAsync(); + + var service = CreateService(context); + + var result = await service.LoginAsync(new LoginRequestDto + { + Username = "Tom", + Password = "123456" + }); + + Assert.NotNull(result); + Assert.Equal(1, result.Id); + Assert.Equal("Tom", result.Username); + } + + [Fact] + public async Task LoginAsync_ShouldThrowException_WhenInvalidCredentials() + { + var context = CreateDbContext(); + var service = CreateService(context); + + await Assert.ThrowsAsync(async () => + { + await service.LoginAsync(new LoginRequestDto + { + Username = "NotExist", + Password = "wrong" + }); + }); + } + + [Fact] + public async Task LoginAsync_IsCaseSensitive_ForUsername() + { + // ˵ǰʵǾȷƥ => ִСд + var context = CreateDbContext(); + context.Users.Add(new User { Id = 10, Username = "Tom", Password = "p" }); + await context.SaveChangesAsync(); + + var service = CreateService(context); + + // ʹСдûӦʧܣǰ߼ִСд + await Assert.ThrowsAsync(async () => + { + await service.LoginAsync(new LoginRequestDto { Username = "tom", Password = "p" }); + }); + } + + [Fact] + public async Task RegisterAsync_ShouldPersistUserAndReturnDto_WhenNewUser() + { + var context = CreateDbContext(); + var service = CreateService(context); + + var request = new RegisterRequestDto + { + Username = "Jerry", + Password = "123456" + }; + + var result = await service.RegisterAsync(request); + + // ֵȷ + Assert.NotNull(result); + Assert.Equal("Jerry", result.Username); + Assert.True(result.Id > 0); + + // DB ȷʵڸû + var persisted = await context.Users.FirstOrDefaultAsync(u => u.Username == "Jerry"); + Assert.NotNull(persisted); + Assert.Equal("Jerry", persisted.Username); + } + + [Fact] + public async Task RegisterAsync_ShouldThrowException_WhenUserExists() + { + var context = CreateDbContext(); + context.Users.Add(new User { Username = "Tom", Password = "12223" }); + await context.SaveChangesAsync(); + + var service = CreateService(context); + + var request = new RegisterRequestDto { Username = "Tom", Password = "123" }; + + await Assert.ThrowsAsync(() => service.RegisterAsync(request)); + } + + [Fact] + public async Task RegisterAsync_ShouldThrow_WhenMapperThrows() + { + var context = CreateDbContext(); + + var mapperMock = new Mock(); + mapperMock.Setup(m => m.Map(It.IsAny())) + .Throws(new Exception("mapper failure")); + + var service = CreateService(context, mapperMock.Object); + + var req = new RegisterRequestDto { Username = "A", Password = "B" }; + + var ex = await Assert.ThrowsAsync(() => service.RegisterAsync(req)); + Assert.Contains("mapper failure", ex.Message); + } + + [Fact] + public async Task RegisterAsync_ShouldPropagateSaveException_WhenSaveFails() + { + var options = new DbContextOptionsBuilder() + .UseInMemoryDatabase(Guid.NewGuid().ToString()) + .Options; + + // ʹԶ SaveChanges ʱ쳣 + var throwingContext = new ThrowOnSaveImContext(options, throwOnSave: true); + + var service = CreateService(throwingContext); + + var req = new RegisterRequestDto { Username = "X", Password = "P" }; + + var ex = await Assert.ThrowsAsync(() => service.RegisterAsync(req)); + Assert.Contains("Simulated DB save error", ex.Message); + } + + [Fact] + public async Task RegisterAsync_NullDto_ThrowsNullReferenceException_CurrentBehavior() + { + // ˵ǰʵûж dto Ϊ null 飬ᴥ NullReferenceException + // 飺иΪ ArgumentNullException ߽вУ鲢ȷ + var context = CreateDbContext(); + var service = CreateService(context); + + await Assert.ThrowsAsync(async () => + { + await service.RegisterAsync(null); + }); + } +} diff --git a/backend/IMTest/Service/FriendServiceTest.cs b/backend/IMTest/Service/FriendServiceTest.cs index 747d7aa..08905f9 100644 --- a/backend/IMTest/Service/FriendServiceTest.cs +++ b/backend/IMTest/Service/FriendServiceTest.cs @@ -1,149 +1,149 @@ -using AutoMapper; -using IM_API.Domain.Events; -using IM_API.Dtos.Friend; -using IM_API.Exceptions; -using IM_API.Models; -using IM_API.Services; -using MassTransit; // 必须引入 -using Microsoft.EntityFrameworkCore; -using Microsoft.Extensions.Logging; -using Moq; -using System; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; -using Xunit; - -public class FriendServiceTests -{ - private readonly Mock _mockEndpoint = new(); - private readonly Mock> _mockLogger = new(); - - #region 辅助构造方法 - private ImContext CreateDbContext() - { - var options = new DbContextOptionsBuilder() - .UseInMemoryDatabase(Guid.NewGuid().ToString()) // 确保每个测试数据库隔离 - .Options; - return new ImContext(options); - } - - private IMapper CreateMapper() - { - var config = new MapperConfiguration(cfg => - { - // 补充你业务中实际需要的映射规则 - cfg.CreateMap(); - cfg.CreateMap(); - cfg.CreateMap() - .ForMember(d => d.UserId, o => o.MapFrom(s => s.ResponseUser)) - .ForMember(d => d.FriendId, o => o.MapFrom(s => s.RequestUser)); - }); - return config.CreateMapper(); - } - - private FriendService CreateService(ImContext context) - { - // 注入 Mock 对象和真实的 Mapper/Context - return new FriendService(context, _mockLogger.Object, CreateMapper(), _mockEndpoint.Object); - } - #endregion - - [Fact] - public async Task SendFriendRequestAsync_Success_ShouldSaveAndPublish() - { - // Arrange - var context = CreateDbContext(); - context.Users.AddRange( - new User { Id = 1, Username = "Sender", Password = "..." }, - new User { Id = 2, Username = "Receiver", Password = "..." } - ); - await context.SaveChangesAsync(); - var service = CreateService(context); - var dto = new FriendRequestDto { ToUserId = 2, FromUserId = 2, Description = "Hello" , RemarkName = "测试备注" }; - - // Act - //var result = await service.SendFriendRequestAsync(dto); - - // Assert - //Assert.True(result); - //Assert.Single(context.FriendRequests); - - // 验证事件是否发布到了 MQ - /* - _mockEndpoint.Verify(x => x.Publish( - It.Is(e => e.FromUserId == 1 && e.ToUserId == 2), - It.IsAny()), - Times.Once); - */ - } - - [Fact] - public async Task SendFriendRequestAsync_UserNotFound_ShouldThrow() - { - // Arrange - var context = CreateDbContext(); - var service = CreateService(context); - var dto = new FriendRequestDto { ToUserId = 99 }; // 不存在的用户 - - // Act & Assert - await Assert.ThrowsAsync(() => service.SendFriendRequestAsync(dto)); - } - - [Fact] - public async Task SendFriendRequestAsync_AlreadyExists_ShouldThrow() - { - // Arrange - var context = CreateDbContext(); - context.Users.Add(new User { Id = 2, Password = "123", Username = "111" }); - context.FriendRequests.Add(new FriendRequest - { - RequestUser = 1, - ResponseUser = 2, - State = (sbyte)FriendRequestState.Pending, - RemarkName = "测试备注" - }); - await context.SaveChangesAsync(); - var service = CreateService(context); - - // Act & Assert - await Assert.ThrowsAsync(() => service.SendFriendRequestAsync(new FriendRequestDto { ToUserId = 2 })); - } - - [Fact] - public async Task BlockFriendAsync_ValidId_ShouldUpdateStatus() - { - // Arrange - var context = CreateDbContext(); - var friend = new Friend { Id = 50, UserId = 1, FriendId = 2, StatusEnum = FriendStatus.Added,RemarkName = "测试备注" }; - context.Friends.Add(friend); - await context.SaveChangesAsync(); - var service = CreateService(context); - - // Act - await service.BlockeFriendAsync(50); - - // Assert - var updated = await context.Friends.FindAsync(50); - Assert.Equal(FriendStatus.Blocked, updated.StatusEnum); - } - - [Fact] - public async Task GetFriendListAsync_ShouldFilterByStatus() - { - // Arrange - var context = CreateDbContext(); - context.Friends.AddRange( - new Friend { UserId = 1, FriendId = 2, StatusEnum = FriendStatus.Added,RemarkName = "111" }, - new Friend { UserId = 1, FriendId = 3, StatusEnum = FriendStatus.Blocked,RemarkName = "222" } - ); - await context.SaveChangesAsync(); - var service = CreateService(context); - - // Act - var result = await service.GetFriendListAsync(1, 1, 10, false); - - // Assert - //Assert.Single(result); // 只应该拿到 Added 状态的 - } +using AutoMapper; +using IM_API.Domain.Events; +using IM_API.Dtos.Friend; +using IM_API.Exceptions; +using IM_API.Models; +using IM_API.Services; +using MassTransit; // 必须引入 +using Microsoft.EntityFrameworkCore; +using Microsoft.Extensions.Logging; +using Moq; +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Xunit; + +public class FriendServiceTests +{ + private readonly Mock _mockEndpoint = new(); + private readonly Mock> _mockLogger = new(); + + #region 辅助构造方法 + private ImContext CreateDbContext() + { + var options = new DbContextOptionsBuilder() + .UseInMemoryDatabase(Guid.NewGuid().ToString()) // 确保每个测试数据库隔离 + .Options; + return new ImContext(options); + } + + private IMapper CreateMapper() + { + var config = new MapperConfiguration(cfg => + { + // 补充你业务中实际需要的映射规则 + cfg.CreateMap(); + cfg.CreateMap(); + cfg.CreateMap() + .ForMember(d => d.UserId, o => o.MapFrom(s => s.ResponseUser)) + .ForMember(d => d.FriendId, o => o.MapFrom(s => s.RequestUser)); + }); + return config.CreateMapper(); + } + + private FriendService CreateService(ImContext context) + { + // 注入 Mock 对象和真实的 Mapper/Context + return new FriendService(context, _mockLogger.Object, CreateMapper(), _mockEndpoint.Object); + } + #endregion + + [Fact] + public async Task SendFriendRequestAsync_Success_ShouldSaveAndPublish() + { + // Arrange + var context = CreateDbContext(); + context.Users.AddRange( + new User { Id = 1, Username = "Sender", Password = "..." }, + new User { Id = 2, Username = "Receiver", Password = "..." } + ); + await context.SaveChangesAsync(); + var service = CreateService(context); + var dto = new FriendRequestDto { ToUserId = 2, FromUserId = 2, Description = "Hello" , RemarkName = "测试备注" }; + + // Act + //var result = await service.SendFriendRequestAsync(dto); + + // Assert + //Assert.True(result); + //Assert.Single(context.FriendRequests); + + // 验证事件是否发布到了 MQ + /* + _mockEndpoint.Verify(x => x.Publish( + It.Is(e => e.FromUserId == 1 && e.ToUserId == 2), + It.IsAny()), + Times.Once); + */ + } + + [Fact] + public async Task SendFriendRequestAsync_UserNotFound_ShouldThrow() + { + // Arrange + var context = CreateDbContext(); + var service = CreateService(context); + var dto = new FriendRequestDto { ToUserId = 99 }; // 不存在的用户 + + // Act & Assert + await Assert.ThrowsAsync(() => service.SendFriendRequestAsync(dto)); + } + + [Fact] + public async Task SendFriendRequestAsync_AlreadyExists_ShouldThrow() + { + // Arrange + var context = CreateDbContext(); + context.Users.Add(new User { Id = 2, Password = "123", Username = "111" }); + context.FriendRequests.Add(new FriendRequest + { + RequestUser = 1, + ResponseUser = 2, + State = (sbyte)FriendRequestState.Pending, + RemarkName = "测试备注" + }); + await context.SaveChangesAsync(); + var service = CreateService(context); + + // Act & Assert + await Assert.ThrowsAsync(() => service.SendFriendRequestAsync(new FriendRequestDto { ToUserId = 2 })); + } + + [Fact] + public async Task BlockFriendAsync_ValidId_ShouldUpdateStatus() + { + // Arrange + var context = CreateDbContext(); + var friend = new Friend { Id = 50, UserId = 1, FriendId = 2, StatusEnum = FriendStatus.Added,RemarkName = "测试备注" }; + context.Friends.Add(friend); + await context.SaveChangesAsync(); + var service = CreateService(context); + + // Act + await service.BlockeFriendAsync(50); + + // Assert + var updated = await context.Friends.FindAsync(50); + Assert.Equal(FriendStatus.Blocked, updated.StatusEnum); + } + + [Fact] + public async Task GetFriendListAsync_ShouldFilterByStatus() + { + // Arrange + var context = CreateDbContext(); + context.Friends.AddRange( + new Friend { UserId = 1, FriendId = 2, StatusEnum = FriendStatus.Added,RemarkName = "111" }, + new Friend { UserId = 1, FriendId = 3, StatusEnum = FriendStatus.Blocked,RemarkName = "222" } + ); + await context.SaveChangesAsync(); + var service = CreateService(context); + + // Act + var result = await service.GetFriendListAsync(1, 1, 10, false); + + // Assert + //Assert.Single(result); // 只应该拿到 Added 状态的 + } } \ No newline at end of file diff --git a/backend/IMTest/Service/GroupServiceTest.cs b/backend/IMTest/Service/GroupServiceTest.cs index 445150a..f9d037c 100644 --- a/backend/IMTest/Service/GroupServiceTest.cs +++ b/backend/IMTest/Service/GroupServiceTest.cs @@ -1,94 +1,94 @@ -using AutoMapper; -using IM_API.Dtos.Group; -using IM_API.Models; -using IM_API.Services; -using Microsoft.EntityFrameworkCore; -using Microsoft.Extensions.Logging; -using Moq; -using Xunit; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using MassTransit; -using IM_API.Configs; -using Microsoft.EntityFrameworkCore.Infrastructure; - -namespace IM_API.Tests.Services -{ - public class GroupServiceTests - { - private readonly ImContext _context; - private readonly IMapper _mapper; - private readonly Mock> _loggerMock = new(); - private readonly Mock _publishMock = new(); - - public GroupServiceTests() - { - // 1. 配置内存数据库 - var options = new DbContextOptionsBuilder() - .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()) - .Options; - _context = new ImContext(options); - - // 2. 配置真实的 AutoMapper (ProjectTo 必须使用真实配置,不能用 Mock) - var config = new MapperConfiguration(cfg => - { - // 替换为你项目中真实的 Profile 类名 - cfg.AddProfile(); - // 如果有多个 Profile,可以继续添加或者加载整个程序集 - // cfg.AddMaps(typeof(GroupProfile).Assembly); - }); - _mapper = config.CreateMapper(); - } - - [Fact] - public async Task GetGroupList_ShouldReturnPagedAndOrderedData() - { - // Arrange (准备数据) - var userId = 1; - var groups = new List - { - new Group { Id = 101, Name = "Group A", Avatar = "1111" }, - new Group { Id = 102, Name = "Group B" , Avatar = "1111"}, - new Group { Id = 103, Name = "Group C", Avatar = "1111" } - }; - - _context.Groups.AddRange(groups); - _context.GroupMembers.AddRange(new List - { - new GroupMember { UserId = userId, GroupId = 101 }, - new GroupMember { UserId = userId, GroupId = 102 }, - new GroupMember { UserId = userId, GroupId = 103 } - }); - await _context.SaveChangesAsync(); - - var userService = new Mock(); - - var service = new GroupService(_context, _mapper, _loggerMock.Object, _publishMock.Object,userService.Object); - - // Act (执行测试: 第1页,每页2条,倒序) - var result = await service.GetGroupListAsync(userId, page: 1, limit: 2, desc: true); - - // Assert (断言) - Assert.NotNull(result); - Assert.Equal(2, result.Count); - Assert.Equal(103, result[0].Id); // 倒序最大的是 103 - Assert.Equal(102, result[1].Id); - } - - [Fact] - public async Task GetGroupList_ShouldReturnEmpty_WhenUserHasNoGroups() - { - - var userSerivce = new Mock(); - // Arrange - var service = new GroupService(_context, _mapper, _loggerMock.Object, _publishMock.Object, userSerivce.Object); - - // Act - var result = await service.GetGroupListAsync(userId: 999, page: 1, limit: 10, desc: false); - - // Assert - Assert.Empty(result); - } - } +using AutoMapper; +using IM_API.Dtos.Group; +using IM_API.Models; +using IM_API.Services; +using Microsoft.EntityFrameworkCore; +using Microsoft.Extensions.Logging; +using Moq; +using Xunit; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using MassTransit; +using IM_API.Configs; +using Microsoft.EntityFrameworkCore.Infrastructure; + +namespace IM_API.Tests.Services +{ + public class GroupServiceTests + { + private readonly ImContext _context; + private readonly IMapper _mapper; + private readonly Mock> _loggerMock = new(); + private readonly Mock _publishMock = new(); + + public GroupServiceTests() + { + // 1. 配置内存数据库 + var options = new DbContextOptionsBuilder() + .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()) + .Options; + _context = new ImContext(options); + + // 2. 配置真实的 AutoMapper (ProjectTo 必须使用真实配置,不能用 Mock) + var config = new MapperConfiguration(cfg => + { + // 替换为你项目中真实的 Profile 类名 + cfg.AddProfile(); + // 如果有多个 Profile,可以继续添加或者加载整个程序集 + // cfg.AddMaps(typeof(GroupProfile).Assembly); + }); + _mapper = config.CreateMapper(); + } + + [Fact] + public async Task GetGroupList_ShouldReturnPagedAndOrderedData() + { + // Arrange (准备数据) + var userId = 1; + var groups = new List + { + new Group { Id = 101, Name = "Group A", Avatar = "1111" }, + new Group { Id = 102, Name = "Group B" , Avatar = "1111"}, + new Group { Id = 103, Name = "Group C", Avatar = "1111" } + }; + + _context.Groups.AddRange(groups); + _context.GroupMembers.AddRange(new List + { + new GroupMember { UserId = userId, GroupId = 101 }, + new GroupMember { UserId = userId, GroupId = 102 }, + new GroupMember { UserId = userId, GroupId = 103 } + }); + await _context.SaveChangesAsync(); + + var userService = new Mock(); + + var service = new GroupService(_context, _mapper, _loggerMock.Object, _publishMock.Object,userService.Object); + + // Act (执行测试: 第1页,每页2条,倒序) + var result = await service.GetGroupListAsync(userId, page: 1, limit: 2, desc: true); + + // Assert (断言) + Assert.NotNull(result); + Assert.Equal(2, result.Count); + Assert.Equal(103, result[0].Id); // 倒序最大的是 103 + Assert.Equal(102, result[1].Id); + } + + [Fact] + public async Task GetGroupList_ShouldReturnEmpty_WhenUserHasNoGroups() + { + + var userSerivce = new Mock(); + // Arrange + var service = new GroupService(_context, _mapper, _loggerMock.Object, _publishMock.Object, userSerivce.Object); + + // Act + var result = await service.GetGroupListAsync(userId: 999, page: 1, limit: 10, desc: false); + + // Assert + Assert.Empty(result); + } + } } \ No newline at end of file diff --git a/backend/IMTest/Service/UserServiceTest.cs b/backend/IMTest/Service/UserServiceTest.cs index 8858b14..dfebd38 100644 --- a/backend/IMTest/Service/UserServiceTest.cs +++ b/backend/IMTest/Service/UserServiceTest.cs @@ -1,186 +1,186 @@ -using AutoMapper; -using IM_API.Dtos.User; -using IM_API.Exceptions; -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.Services; -using IM_API.Tools; -using Microsoft.EntityFrameworkCore; -using Microsoft.Extensions.Logging; -using Moq; -using StackExchange.Redis; -using System; -using System.Threading.Tasks; -using Xunit; - -public class UserServiceTests -{ - private ImContext CreateDbContext() - { - var options = new DbContextOptionsBuilder() - .UseInMemoryDatabase(Guid.NewGuid().ToString()) - .Options; - - return new ImContext(options); - } - - private IMapper CreateMapper() - { - var config = new MapperConfiguration(cfg => - { - cfg.CreateMap(); - cfg.CreateMap(); - }); - return config.CreateMapper(); - } - - private UserService CreateService(ImContext context) - { - var loggerMock = new Mock>(); - var mapper = CreateMapper(); - var mockCache = new Mock(); - var res = new Mock(); - return new UserService(context, loggerMock.Object, mapper , mockCache.Object, res.Object); - } - - // ========== GetUserInfoAsync ========== - [Fact] - public async Task GetUserInfoAsync_ShouldReturnUser_WhenExists() - { - var context = CreateDbContext(); - context.Users.Add(new User { Id = 1, Username = "Tom", Password = "123456" }); - await context.SaveChangesAsync(); - - var service = CreateService(context); - var result = await service.GetUserInfoAsync(1); - - Assert.NotNull(result); - Assert.Equal("Tom", result.Username); - } - - [Fact] - public async Task GetUserInfoAsync_ShouldThrow_WhenNotFound() - { - var service = CreateService(CreateDbContext()); - - await Assert.ThrowsAsync(() => - service.GetUserInfoAsync(999) - ); - } - - // ========== GetUserInfoByUsernameAsync ========== - [Fact] - public async Task GetUserInfoByUsernameAsync_ShouldReturn_WhenExists() - { - var context = CreateDbContext(); - context.Users.Add(new User { Id = 2, Username = "Jerry", Password = "aaa" }); - await context.SaveChangesAsync(); - - var service = CreateService(context); - var result = await service.GetUserInfoByUsernameAsync("Jerry"); - - Assert.NotNull(result); - Assert.Equal(2, result.Id); - } - - [Fact] - public async Task GetUserInfoByUsernameAsync_ShouldThrow_WhenNotFound() - { - var service = CreateService(CreateDbContext()); - - await Assert.ThrowsAsync(() => - service.GetUserInfoByUsernameAsync("Nobody") - ); - } - - // ========== ResetPasswordAsync ========== - [Fact] - public async Task ResetPasswordAsync_ShouldReset_WhenCorrectPassword() - { - var context = CreateDbContext(); - context.Users.Add(new User { Id = 3, Username = "test", Password = "old" }); - await context.SaveChangesAsync(); - - var service = CreateService(context); - var result = await service.ResetPasswordAsync(3, "old", "new"); - - Assert.True(result); - Assert.Equal("new", context.Users.Find(3).Password); - } - - [Fact] - public async Task ResetPasswordAsync_ShouldThrow_WhenWrongPassword() - { - var context = CreateDbContext(); - context.Users.Add(new User { Id = 4, Username = "test", Password = "oldPwd" }); - await context.SaveChangesAsync(); - - var service = CreateService(context); - - await Assert.ThrowsAsync(() => - service.ResetPasswordAsync(4, "wrong", "new") - ); - } - - [Fact] - public async Task ResetPasswordAsync_ShouldThrow_WhenUserNotFound() - { - var service = CreateService(CreateDbContext()); - - await Assert.ThrowsAsync(() => - service.ResetPasswordAsync(123, "anything", "new") - ); - } - - // ========== UpdateOlineStatusAsync ========== - [Fact] - public async Task UpdateOlineStatusAsync_ShouldUpdateStatus() - { - var context = CreateDbContext(); - context.Users.Add(new User { Id = 5, Username = "test", Password = "p", OnlineStatusEnum = UserOnlineStatus.Offline }); - await context.SaveChangesAsync(); - - var service = CreateService(context); - var result = await service.UpdateOlineStatusAsync(5, UserOnlineStatus.Online); - - Assert.True(result); - Assert.Equal(UserOnlineStatus.Online, context.Users.Find(5).OnlineStatusEnum); - } - - [Fact] - public async Task UpdateOlineStatusAsync_ShouldThrow_WhenUserNotFound() - { - var service = CreateService(CreateDbContext()); - - await Assert.ThrowsAsync(() => - service.UpdateOlineStatusAsync(999, UserOnlineStatus.Online) - ); - } - - // ========== UpdateUserAsync ========== - [Fact] - public async Task UpdateUserAsync_ShouldUpdateUserFields() - { - var context = CreateDbContext(); - context.Users.Add(new User { Id = 6, Username = "test", Password = "p", NickName = "OldName" }); - await context.SaveChangesAsync(); - - var service = CreateService(context); - var dto = new UpdateUserDto { NickName = "NewName" }; - - var result = await service.UpdateUserAsync(6, dto); - - Assert.NotNull(result); - Assert.Equal("NewName", context.Users.Find(6).NickName); - } - - [Fact] - public async Task UpdateUserAsync_ShouldThrow_WhenNotFound() - { - var service = CreateService(CreateDbContext()); - - await Assert.ThrowsAsync(() => - service.UpdateUserAsync(123, new UpdateUserDto { NickName = "Test" }) - ); - } -} +using AutoMapper; +using IM_API.Dtos.User; +using IM_API.Exceptions; +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.Services; +using IM_API.Tools; +using Microsoft.EntityFrameworkCore; +using Microsoft.Extensions.Logging; +using Moq; +using StackExchange.Redis; +using System; +using System.Threading.Tasks; +using Xunit; + +public class UserServiceTests +{ + private ImContext CreateDbContext() + { + var options = new DbContextOptionsBuilder() + .UseInMemoryDatabase(Guid.NewGuid().ToString()) + .Options; + + return new ImContext(options); + } + + private IMapper CreateMapper() + { + var config = new MapperConfiguration(cfg => + { + cfg.CreateMap(); + cfg.CreateMap(); + }); + return config.CreateMapper(); + } + + private UserService CreateService(ImContext context) + { + var loggerMock = new Mock>(); + var mapper = CreateMapper(); + var mockCache = new Mock(); + var res = new Mock(); + return new UserService(context, loggerMock.Object, mapper , mockCache.Object, res.Object); + } + + // ========== GetUserInfoAsync ========== + [Fact] + public async Task GetUserInfoAsync_ShouldReturnUser_WhenExists() + { + var context = CreateDbContext(); + context.Users.Add(new User { Id = 1, Username = "Tom", Password = "123456" }); + await context.SaveChangesAsync(); + + var service = CreateService(context); + var result = await service.GetUserInfoAsync(1); + + Assert.NotNull(result); + Assert.Equal("Tom", result.Username); + } + + [Fact] + public async Task GetUserInfoAsync_ShouldThrow_WhenNotFound() + { + var service = CreateService(CreateDbContext()); + + await Assert.ThrowsAsync(() => + service.GetUserInfoAsync(999) + ); + } + + // ========== GetUserInfoByUsernameAsync ========== + [Fact] + public async Task GetUserInfoByUsernameAsync_ShouldReturn_WhenExists() + { + var context = CreateDbContext(); + context.Users.Add(new User { Id = 2, Username = "Jerry", Password = "aaa" }); + await context.SaveChangesAsync(); + + var service = CreateService(context); + var result = await service.GetUserInfoByUsernameAsync("Jerry"); + + Assert.NotNull(result); + Assert.Equal(2, result.Id); + } + + [Fact] + public async Task GetUserInfoByUsernameAsync_ShouldThrow_WhenNotFound() + { + var service = CreateService(CreateDbContext()); + + await Assert.ThrowsAsync(() => + service.GetUserInfoByUsernameAsync("Nobody") + ); + } + + // ========== ResetPasswordAsync ========== + [Fact] + public async Task ResetPasswordAsync_ShouldReset_WhenCorrectPassword() + { + var context = CreateDbContext(); + context.Users.Add(new User { Id = 3, Username = "test", Password = "old" }); + await context.SaveChangesAsync(); + + var service = CreateService(context); + var result = await service.ResetPasswordAsync(3, "old", "new"); + + Assert.True(result); + Assert.Equal("new", context.Users.Find(3).Password); + } + + [Fact] + public async Task ResetPasswordAsync_ShouldThrow_WhenWrongPassword() + { + var context = CreateDbContext(); + context.Users.Add(new User { Id = 4, Username = "test", Password = "oldPwd" }); + await context.SaveChangesAsync(); + + var service = CreateService(context); + + await Assert.ThrowsAsync(() => + service.ResetPasswordAsync(4, "wrong", "new") + ); + } + + [Fact] + public async Task ResetPasswordAsync_ShouldThrow_WhenUserNotFound() + { + var service = CreateService(CreateDbContext()); + + await Assert.ThrowsAsync(() => + service.ResetPasswordAsync(123, "anything", "new") + ); + } + + // ========== UpdateOlineStatusAsync ========== + [Fact] + public async Task UpdateOlineStatusAsync_ShouldUpdateStatus() + { + var context = CreateDbContext(); + context.Users.Add(new User { Id = 5, Username = "test", Password = "p", OnlineStatusEnum = UserOnlineStatus.Offline }); + await context.SaveChangesAsync(); + + var service = CreateService(context); + var result = await service.UpdateOlineStatusAsync(5, UserOnlineStatus.Online); + + Assert.True(result); + Assert.Equal(UserOnlineStatus.Online, context.Users.Find(5).OnlineStatusEnum); + } + + [Fact] + public async Task UpdateOlineStatusAsync_ShouldThrow_WhenUserNotFound() + { + var service = CreateService(CreateDbContext()); + + await Assert.ThrowsAsync(() => + service.UpdateOlineStatusAsync(999, UserOnlineStatus.Online) + ); + } + + // ========== UpdateUserAsync ========== + [Fact] + public async Task UpdateUserAsync_ShouldUpdateUserFields() + { + var context = CreateDbContext(); + context.Users.Add(new User { Id = 6, Username = "test", Password = "p", NickName = "OldName" }); + await context.SaveChangesAsync(); + + var service = CreateService(context); + var dto = new UpdateUserDto { NickName = "NewName" }; + + var result = await service.UpdateUserAsync(6, dto); + + Assert.NotNull(result); + Assert.Equal("NewName", context.Users.Find(6).NickName); + } + + [Fact] + public async Task UpdateUserAsync_ShouldThrow_WhenNotFound() + { + var service = CreateService(CreateDbContext()); + + await Assert.ThrowsAsync(() => + service.UpdateUserAsync(123, new UpdateUserDto { NickName = "Test" }) + ); + } +} diff --git a/backend/IMTest/bin/Debug/net8.0/IMTest.deps.json b/backend/IMTest/bin/Debug/net8.0/IMTest.deps.json index 8a8287e..fca9fa5 100644 --- a/backend/IMTest/bin/Debug/net8.0/IMTest.deps.json +++ b/backend/IMTest/bin/Debug/net8.0/IMTest.deps.json @@ -1,2889 +1,2889 @@ -{ - "runtimeTarget": { - "name": ".NETCoreApp,Version=v8.0", - "signature": "" - }, - "compilationOptions": {}, - "targets": { - ".NETCoreApp,Version=v8.0": { - "IMTest/1.0.0": { - "dependencies": { - "IM_API": "1.0.0", - "Microsoft.EntityFrameworkCore.InMemory": "8.0.22", - "Microsoft.NET.Test.Sdk": "17.8.0", - "Moq": "4.20.72", - "coverlet.collector": "6.0.0", - "xunit": "2.5.3", - "xunit.runner.visualstudio": "2.5.3" - }, - "runtime": { - "IMTest.dll": {} - } - }, - "AutoMapper/12.0.1": { - "dependencies": { - "Microsoft.CSharp": "4.7.0" - }, - "runtime": { - "lib/netstandard2.1/AutoMapper.dll": { - "assemblyVersion": "12.0.0.0", - "fileVersion": "12.0.1.0" - } - } - }, - "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.0": { - "dependencies": { - "AutoMapper": "12.0.1", - "Microsoft.Extensions.Options": "10.0.2" - }, - "runtime": { - "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll": { - "assemblyVersion": "12.0.0.0", - "fileVersion": "12.0.0.0" - } - } - }, - "Castle.Core/5.1.1": { - "dependencies": { - "System.Diagnostics.EventLog": "6.0.0" - }, - "runtime": { - "lib/net6.0/Castle.Core.dll": { - "assemblyVersion": "5.0.0.0", - "fileVersion": "5.1.1.0" - } - } - }, - "coverlet.collector/6.0.0": {}, - "MassTransit/8.5.5": { - "dependencies": { - "MassTransit.Abstractions": "8.5.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "Microsoft.Extensions.Diagnostics.HealthChecks": "8.0.0", - "Microsoft.Extensions.Hosting.Abstractions": "8.0.1", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2" - }, - "runtime": { - "lib/net8.0/MassTransit.dll": { - "assemblyVersion": "8.5.5.0", - "fileVersion": "8.5.5.0" - } - } - }, - "MassTransit.Abstractions/8.5.5": { - "runtime": { - "lib/net8.0/MassTransit.Abstractions.dll": { - "assemblyVersion": "8.5.5.0", - "fileVersion": "8.5.5.0" - } - } - }, - "MassTransit.RabbitMQ/8.5.5": { - "dependencies": { - "MassTransit": "8.5.5", - "RabbitMQ.Client": "7.1.2" - }, - "runtime": { - "lib/net8.0/MassTransit.RabbitMqTransport.dll": { - "assemblyVersion": "8.5.5.0", - "fileVersion": "8.5.5.0" - } - } - }, - "Microsoft.AspNetCore.Authentication.Abstractions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2" - } - }, - "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.21": { - "dependencies": { - "Microsoft.IdentityModel.Protocols.OpenIdConnect": "7.1.2" - }, - "runtime": { - "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { - "assemblyVersion": "8.0.21.0", - "fileVersion": "8.0.2125.47515" - } - } - }, - "Microsoft.AspNetCore.Authorization/2.3.0": { - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2" - } - }, - "Microsoft.AspNetCore.Authorization.Policy/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Authentication.Abstractions": "2.3.0", - "Microsoft.AspNetCore.Authorization": "2.3.0" - } - }, - "Microsoft.AspNetCore.Connections.Abstractions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Features": "2.3.0", - "System.IO.Pipelines": "8.0.0" - } - }, - "Microsoft.AspNetCore.Hosting.Abstractions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Hosting.Server.Abstractions": "2.3.0", - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", - "Microsoft.Extensions.Hosting.Abstractions": "8.0.1" - } - }, - "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Features": "2.3.0", - "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" - } - }, - "Microsoft.AspNetCore.Http/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", - "Microsoft.AspNetCore.WebUtilities": "2.3.0", - "Microsoft.Extensions.ObjectPool": "8.0.11", - "Microsoft.Extensions.Options": "10.0.2", - "Microsoft.Net.Http.Headers": "2.3.0" - } - }, - "Microsoft.AspNetCore.Http.Abstractions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Features": "2.3.0", - "System.Text.Encodings.Web": "8.0.0" - } - }, - "Microsoft.AspNetCore.Http.Connections/1.2.0": { - "dependencies": { - "Microsoft.AspNetCore.Authorization.Policy": "2.3.0", - "Microsoft.AspNetCore.Hosting.Abstractions": "2.3.0", - "Microsoft.AspNetCore.Http": "2.3.0", - "Microsoft.AspNetCore.Http.Connections.Common": "1.2.0", - "Microsoft.AspNetCore.Routing": "2.3.0", - "Microsoft.AspNetCore.WebSockets": "2.3.0", - "Newtonsoft.Json": "13.0.4", - "System.Net.WebSockets.WebSocketProtocol": "5.1.0" - } - }, - "Microsoft.AspNetCore.Http.Connections.Common/1.2.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "2.3.0", - "Newtonsoft.Json": "13.0.4", - "System.Buffers": "4.6.0", - "System.IO.Pipelines": "8.0.0" - } - }, - "Microsoft.AspNetCore.Http.Extensions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", - "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0", - "Microsoft.Net.Http.Headers": "2.3.0", - "System.Buffers": "4.6.0" - } - }, - "Microsoft.AspNetCore.Http.Features/2.3.0": { - "dependencies": { - "Microsoft.Extensions.Primitives": "10.0.2" - } - }, - "Microsoft.AspNetCore.Routing/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Extensions": "2.3.0", - "Microsoft.AspNetCore.Routing.Abstractions": "2.3.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.ObjectPool": "8.0.11", - "Microsoft.Extensions.Options": "10.0.2" - } - }, - "Microsoft.AspNetCore.Routing.Abstractions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0" - } - }, - "Microsoft.AspNetCore.SignalR/1.2.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Connections": "1.2.0", - "Microsoft.AspNetCore.SignalR.Core": "1.2.0", - "Microsoft.AspNetCore.WebSockets": "2.3.0", - "System.IO.Pipelines": "8.0.0" - } - }, - "Microsoft.AspNetCore.SignalR.Common/1.2.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "2.3.0", - "Microsoft.Extensions.Options": "10.0.2", - "Newtonsoft.Json": "13.0.4", - "System.Buffers": "4.6.0" - } - }, - "Microsoft.AspNetCore.SignalR.Core/1.2.0": { - "dependencies": { - "Microsoft.AspNetCore.Authorization": "2.3.0", - "Microsoft.AspNetCore.SignalR.Common": "1.2.0", - "Microsoft.AspNetCore.SignalR.Protocols.Json": "1.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "System.IO.Pipelines": "8.0.0", - "System.Reflection.Emit": "4.7.0", - "System.Threading.Channels": "8.0.0" - } - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/1.2.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "1.2.0", - "Newtonsoft.Json": "13.0.4", - "System.IO.Pipelines": "8.0.0" - } - }, - "Microsoft.AspNetCore.WebSockets/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Extensions": "2.3.0", - "Microsoft.Extensions.Options": "10.0.2", - "System.Net.WebSockets.WebSocketProtocol": "5.1.0" - } - }, - "Microsoft.AspNetCore.WebUtilities/2.3.0": { - "dependencies": { - "Microsoft.Net.Http.Headers": "2.3.0", - "System.Text.Encodings.Web": "8.0.0" - } - }, - "Microsoft.Bcl.AsyncInterfaces/1.1.0": { - "runtime": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "assemblyVersion": "1.0.0.0", - "fileVersion": "4.700.19.56404" - } - } - }, - "Microsoft.CodeCoverage/17.8.0": { - "runtime": { - "lib/netcoreapp3.1/Microsoft.VisualStudio.CodeCoverage.Shim.dll": { - "assemblyVersion": "15.0.0.0", - "fileVersion": "17.800.623.45702" - } - } - }, - "Microsoft.CSharp/4.7.0": {}, - "Microsoft.EntityFrameworkCore/8.0.22": { - "dependencies": { - "Microsoft.EntityFrameworkCore.Abstractions": "8.0.22", - "Microsoft.EntityFrameworkCore.Analyzers": "8.0.22", - "Microsoft.Extensions.Caching.Memory": "8.0.1", - "Microsoft.Extensions.Logging": "8.0.1" - }, - "runtime": { - "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { - "assemblyVersion": "8.0.22.0", - "fileVersion": "8.0.2225.52804" - } - } - }, - "Microsoft.EntityFrameworkCore.Abstractions/8.0.22": { - "runtime": { - "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { - "assemblyVersion": "8.0.22.0", - "fileVersion": "8.0.2225.52804" - } - } - }, - "Microsoft.EntityFrameworkCore.Analyzers/8.0.22": {}, - "Microsoft.EntityFrameworkCore.InMemory/8.0.22": { - "dependencies": { - "Microsoft.EntityFrameworkCore": "8.0.22" - }, - "runtime": { - "lib/net8.0/Microsoft.EntityFrameworkCore.InMemory.dll": { - "assemblyVersion": "8.0.22.0", - "fileVersion": "8.0.2225.52804" - } - } - }, - "Microsoft.EntityFrameworkCore.Relational/8.0.13": { - "dependencies": { - "Microsoft.EntityFrameworkCore": "8.0.22", - "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { - "assemblyVersion": "8.0.13.0", - "fileVersion": "8.0.1325.6604" - } - } - }, - "Microsoft.Extensions.ApiDescription.Server/6.0.5": {}, - "Microsoft.Extensions.Caching.Abstractions/10.0.2": { - "dependencies": { - "Microsoft.Extensions.Primitives": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "Microsoft.Extensions.Caching.Memory/8.0.1": { - "dependencies": { - "Microsoft.Extensions.Caching.Abstractions": "10.0.2", - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2", - "Microsoft.Extensions.Primitives": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1024.46610" - } - } - }, - "Microsoft.Extensions.Caching.StackExchangeRedis/10.0.2": { - "dependencies": { - "Microsoft.Extensions.Caching.Abstractions": "10.0.2", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2", - "StackExchange.Redis": "2.9.32" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.Extensions.Caching.StackExchangeRedis.dll": { - "assemblyVersion": "10.0.2.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { - "dependencies": { - "Microsoft.Extensions.Primitives": "10.0.2" - } - }, - "Microsoft.Extensions.DependencyInjection/8.0.1": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1024.46610" - } - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "Microsoft.Extensions.Diagnostics.Abstractions/8.0.1": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Diagnostics.Abstractions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1024.46610" - } - } - }, - "Microsoft.Extensions.Diagnostics.HealthChecks/8.0.0": { - "dependencies": { - "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions": "8.0.0", - "Microsoft.Extensions.Hosting.Abstractions": "8.0.1", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2" - } - }, - "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/8.0.0": {}, - "Microsoft.Extensions.FileProviders.Abstractions/8.0.0": { - "dependencies": { - "Microsoft.Extensions.Primitives": "10.0.2" - } - }, - "Microsoft.Extensions.Hosting.Abstractions/8.0.1": { - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "8.0.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "Microsoft.Extensions.Diagnostics.Abstractions": "8.0.1", - "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Hosting.Abstractions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1024.46610" - } - } - }, - "Microsoft.Extensions.Logging/8.0.1": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "8.0.1", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1024.46610" - } - } - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.2": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "System.Diagnostics.DiagnosticSource": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "Microsoft.Extensions.ObjectPool/8.0.11": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.ObjectPool.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1124.52116" - } - } - }, - "Microsoft.Extensions.Options/10.0.2": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "Microsoft.Extensions.Primitives": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "Microsoft.Extensions.Primitives/10.0.2": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "Microsoft.IdentityModel.Abstractions/8.14.0": { - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll": { - "assemblyVersion": "8.14.0.0", - "fileVersion": "8.14.0.60815" - } - } - }, - "Microsoft.IdentityModel.JsonWebTokens/8.14.0": { - "dependencies": { - "Microsoft.IdentityModel.Tokens": "8.14.0" - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll": { - "assemblyVersion": "8.14.0.0", - "fileVersion": "8.14.0.60815" - } - } - }, - "Microsoft.IdentityModel.Logging/8.14.0": { - "dependencies": { - "Microsoft.IdentityModel.Abstractions": "8.14.0" - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Logging.dll": { - "assemblyVersion": "8.14.0.0", - "fileVersion": "8.14.0.60815" - } - } - }, - "Microsoft.IdentityModel.Protocols/7.1.2": { - "dependencies": { - "Microsoft.IdentityModel.Logging": "8.14.0", - "Microsoft.IdentityModel.Tokens": "8.14.0" - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Protocols.dll": { - "assemblyVersion": "7.1.2.0", - "fileVersion": "7.1.2.41121" - } - } - }, - "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.1.2": { - "dependencies": { - "Microsoft.IdentityModel.Protocols": "7.1.2", - "System.IdentityModel.Tokens.Jwt": "8.14.0" - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { - "assemblyVersion": "7.1.2.0", - "fileVersion": "7.1.2.41121" - } - } - }, - "Microsoft.IdentityModel.Tokens/8.14.0": { - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.IdentityModel.Logging": "8.14.0" - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Tokens.dll": { - "assemblyVersion": "8.14.0.0", - "fileVersion": "8.14.0.60815" - } - } - }, - "Microsoft.Net.Http.Headers/2.3.0": { - "dependencies": { - "Microsoft.Extensions.Primitives": "10.0.2", - "System.Buffers": "4.6.0" - } - }, - "Microsoft.NET.Test.Sdk/17.8.0": { - "dependencies": { - "Microsoft.CodeCoverage": "17.8.0", - "Microsoft.TestPlatform.TestHost": "17.8.0" - } - }, - "Microsoft.NETCore.Platforms/1.1.0": {}, - "Microsoft.NETCore.Targets/1.1.0": {}, - "Microsoft.OpenApi/1.6.14": { - "runtime": { - "lib/netstandard2.0/Microsoft.OpenApi.dll": { - "assemblyVersion": "1.6.14.0", - "fileVersion": "1.6.14.0" - } - } - }, - "Microsoft.TestPlatform.ObjectModel/17.8.0": { - "dependencies": { - "NuGet.Frameworks": "6.5.0", - "System.Reflection.Metadata": "1.6.0" - }, - "runtime": { - "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll": { - "assemblyVersion": "15.0.0.0", - "fileVersion": "17.800.23.55801" - }, - "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll": { - "assemblyVersion": "15.0.0.0", - "fileVersion": "17.800.23.55801" - }, - "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll": { - "assemblyVersion": "15.0.0.0", - "fileVersion": "17.800.23.55801" - } - }, - "resources": { - "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "zh-Hant" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "zh-Hant" - } - } - }, - "Microsoft.TestPlatform.TestHost/17.8.0": { - "dependencies": { - "Microsoft.TestPlatform.ObjectModel": "17.8.0", - "Newtonsoft.Json": "13.0.4" - }, - "runtime": { - "lib/netcoreapp3.1/Microsoft.TestPlatform.CommunicationUtilities.dll": { - "assemblyVersion": "15.0.0.0", - "fileVersion": "17.800.23.55801" - }, - "lib/netcoreapp3.1/Microsoft.TestPlatform.CrossPlatEngine.dll": { - "assemblyVersion": "15.0.0.0", - "fileVersion": "17.800.23.55801" - }, - "lib/netcoreapp3.1/Microsoft.TestPlatform.Utilities.dll": { - "assemblyVersion": "15.0.0.0", - "fileVersion": "17.800.23.55801" - }, - "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.Common.dll": { - "assemblyVersion": "15.0.0.0", - "fileVersion": "17.800.23.55801" - }, - "lib/netcoreapp3.1/testhost.dll": { - "assemblyVersion": "15.0.0.0", - "fileVersion": "17.800.23.55801" - } - }, - "resources": { - "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "zh-Hant" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "zh-Hant" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "zh-Hant" - } - } - }, - "Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.22.1": {}, - "Microsoft.Win32.Primitives/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "Moq/4.20.72": { - "dependencies": { - "Castle.Core": "5.1.1" - }, - "runtime": { - "lib/net6.0/Moq.dll": { - "assemblyVersion": "4.20.72.0", - "fileVersion": "4.20.72.0" - } - } - }, - "MySqlConnector/2.3.5": { - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "10.0.2" - }, - "runtime": { - "lib/net8.0/MySqlConnector.dll": { - "assemblyVersion": "2.0.0.0", - "fileVersion": "2.3.5.0" - } - } - }, - "NETStandard.Library/1.6.1": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.Win32.Primitives": "4.3.0", - "System.AppContext": "4.3.0", - "System.Collections": "4.3.0", - "System.Collections.Concurrent": "4.3.0", - "System.Console": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tools": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Globalization": "4.3.0", - "System.Globalization.Calendars": "4.3.0", - "System.IO": "4.3.0", - "System.IO.Compression": "4.3.0", - "System.IO.Compression.ZipFile": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Linq": "4.3.0", - "System.Linq.Expressions": "4.3.0", - "System.Net.Http": "4.3.0", - "System.Net.Primitives": "4.3.0", - "System.Net.Sockets": "4.3.0", - "System.ObjectModel": "4.3.0", - "System.Reflection": "4.3.0", - "System.Reflection.Extensions": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.InteropServices.RuntimeInformation": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Security.Cryptography.X509Certificates": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Text.Encoding.Extensions": "4.3.0", - "System.Text.RegularExpressions": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "System.Threading.Timer": "4.3.0", - "System.Xml.ReaderWriter": "4.3.0", - "System.Xml.XDocument": "4.3.0" - } - }, - "Newtonsoft.Json/13.0.4": { - "runtime": { - "lib/net6.0/Newtonsoft.Json.dll": { - "assemblyVersion": "13.0.0.0", - "fileVersion": "13.0.4.30916" - } - } - }, - "NuGet.Frameworks/6.5.0": { - "runtime": { - "lib/netstandard2.0/NuGet.Frameworks.dll": { - "assemblyVersion": "6.5.0.154", - "fileVersion": "6.5.0.154" - } - } - }, - "Pipelines.Sockets.Unofficial/2.2.8": { - "dependencies": { - "System.IO.Pipelines": "8.0.0" - }, - "runtime": { - "lib/net5.0/Pipelines.Sockets.Unofficial.dll": { - "assemblyVersion": "1.0.0.0", - "fileVersion": "2.2.8.1080" - } - } - }, - "Pomelo.EntityFrameworkCore.MySql/8.0.3": { - "dependencies": { - "Microsoft.EntityFrameworkCore.Relational": "8.0.13", - "MySqlConnector": "2.3.5" - }, - "runtime": { - "lib/net8.0/Pomelo.EntityFrameworkCore.MySql.dll": { - "assemblyVersion": "8.0.3.0", - "fileVersion": "8.0.3.0" - } - } - }, - "RabbitMQ.Client/7.1.2": { - "dependencies": { - "System.IO.Pipelines": "8.0.0", - "System.Threading.RateLimiting": "8.0.0" - }, - "runtime": { - "lib/net8.0/RabbitMQ.Client.dll": { - "assemblyVersion": "7.0.0.0", - "fileVersion": "7.1.2.0" - } - } - }, - "RedLock.net/2.3.2": { - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "1.1.0", - "Microsoft.Extensions.Logging": "8.0.1", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "StackExchange.Redis": "2.9.32" - }, - "runtime": { - "lib/netstandard2.0/RedLockNet.Abstractions.dll": { - "assemblyVersion": "2.3.2.0", - "fileVersion": "2.3.2.0" - }, - "lib/netstandard2.0/RedLockNet.SERedis.dll": { - "assemblyVersion": "2.3.2.0", - "fileVersion": "2.3.2.0" - } - } - }, - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.native.System/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - } - }, - "runtime.native.System.IO.Compression/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - } - }, - "runtime.native.System.Net.Http/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - } - }, - "runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "dependencies": { - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "4.3.0" - } - }, - "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "dependencies": { - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": {}, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, - "StackExchange.Redis/2.9.32": { - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Pipelines.Sockets.Unofficial": "2.2.8" - }, - "runtime": { - "lib/net8.0/StackExchange.Redis.dll": { - "assemblyVersion": "2.0.0.0", - "fileVersion": "2.9.32.54708" - } - } - }, - "Swashbuckle.AspNetCore/6.6.2": { - "dependencies": { - "Microsoft.Extensions.ApiDescription.Server": "6.0.5", - "Swashbuckle.AspNetCore.Swagger": "6.6.2", - "Swashbuckle.AspNetCore.SwaggerGen": "6.6.2", - "Swashbuckle.AspNetCore.SwaggerUI": "6.6.2" - } - }, - "Swashbuckle.AspNetCore.Swagger/6.6.2": { - "dependencies": { - "Microsoft.OpenApi": "1.6.14" - }, - "runtime": { - "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": { - "assemblyVersion": "6.6.2.0", - "fileVersion": "6.6.2.401" - } - } - }, - "Swashbuckle.AspNetCore.SwaggerGen/6.6.2": { - "dependencies": { - "Swashbuckle.AspNetCore.Swagger": "6.6.2" - }, - "runtime": { - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { - "assemblyVersion": "6.6.2.0", - "fileVersion": "6.6.2.401" - } - } - }, - "Swashbuckle.AspNetCore.SwaggerUI/6.6.2": { - "runtime": { - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { - "assemblyVersion": "6.6.2.0", - "fileVersion": "6.6.2.401" - } - } - }, - "System.AppContext/4.3.0": { - "dependencies": { - "System.Runtime": "4.3.0" - } - }, - "System.Buffers/4.6.0": {}, - "System.Collections/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Collections.Concurrent/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Globalization": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.Console/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0" - } - }, - "System.Diagnostics.Debug/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Diagnostics.DiagnosticSource/10.0.2": { - "runtime": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "System.Diagnostics.EventLog/6.0.0": {}, - "System.Diagnostics.Tools/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Diagnostics.Tracing/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Globalization/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Globalization.Calendars/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Globalization": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Globalization.Extensions/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Globalization": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.InteropServices": "4.3.0" - } - }, - "System.IdentityModel.Tokens.Jwt/8.14.0": { - "dependencies": { - "Microsoft.IdentityModel.JsonWebTokens": "8.14.0", - "Microsoft.IdentityModel.Tokens": "8.14.0" - }, - "runtime": { - "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll": { - "assemblyVersion": "8.14.0.0", - "fileVersion": "8.14.0.60815" - } - } - }, - "System.IO/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.IO.Compression/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Buffers": "4.6.0", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "runtime.native.System": "4.3.0", - "runtime.native.System.IO.Compression": "4.3.0" - } - }, - "System.IO.Compression.ZipFile/4.3.0": { - "dependencies": { - "System.Buffers": "4.6.0", - "System.IO": "4.3.0", - "System.IO.Compression": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Text.Encoding": "4.3.0" - } - }, - "System.IO.FileSystem/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.IO.FileSystem.Primitives/4.3.0": { - "dependencies": { - "System.Runtime": "4.3.0" - } - }, - "System.IO.Pipelines/8.0.0": {}, - "System.Linq/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0" - } - }, - "System.Linq.Expressions/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Linq": "4.3.0", - "System.ObjectModel": "4.3.0", - "System.Reflection": "4.3.0", - "System.Reflection.Emit": "4.7.0", - "System.Reflection.Emit.ILGeneration": "4.3.0", - "System.Reflection.Emit.Lightweight": "4.3.0", - "System.Reflection.Extensions": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Reflection.TypeExtensions": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.Net.Http/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.DiagnosticSource": "10.0.2", - "System.Diagnostics.Tracing": "4.3.0", - "System.Globalization": "4.3.0", - "System.Globalization.Extensions": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.Net.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.OpenSsl": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Security.Cryptography.X509Certificates": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "runtime.native.System": "4.3.0", - "runtime.native.System.Net.Http": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "System.Net.Primitives/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0" - } - }, - "System.Net.Sockets/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.Net.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.Net.WebSockets.WebSocketProtocol/5.1.0": { - "runtime": { - "lib/net6.0/System.Net.WebSockets.WebSocketProtocol.dll": { - "assemblyVersion": "5.1.0.0", - "fileVersion": "5.100.24.56208" - } - } - }, - "System.ObjectModel/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.Reflection/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Emit/4.7.0": {}, - "System.Reflection.Emit.ILGeneration/4.3.0": { - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Emit.Lightweight/4.3.0": { - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Emit.ILGeneration": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Extensions/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.Metadata/1.6.0": {}, - "System.Reflection.Primitives/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Reflection.TypeExtensions/4.3.0": { - "dependencies": { - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Resources.ResourceManager/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Globalization": "4.3.0", - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - } - }, - "System.Runtime/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - } - }, - "System.Runtime.Extensions/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Runtime.Handles/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Runtime.InteropServices/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Reflection": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0" - } - }, - "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Extensions": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Threading": "4.3.0", - "runtime.native.System": "4.3.0" - } - }, - "System.Runtime.Numerics/4.3.0": { - "dependencies": { - "System.Globalization": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0" - } - }, - "System.Security.Cryptography.Algorithms/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.Apple": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "System.Security.Cryptography.Cng/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0" - } - }, - "System.Security.Cryptography.Csp/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0" - } - }, - "System.Security.Cryptography.Encoding/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Collections.Concurrent": "4.3.0", - "System.Linq": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "System.Security.Cryptography.OpenSsl/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "System.Security.Cryptography.Primitives/4.3.0": { - "dependencies": { - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.Security.Cryptography.X509Certificates/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.Globalization.Calendars": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Cng": "4.3.0", - "System.Security.Cryptography.Csp": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.OpenSsl": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "runtime.native.System": "4.3.0", - "runtime.native.System.Net.Http": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - } - }, - "System.Text.Encoding/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Text.Encoding.Extensions/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0" - } - }, - "System.Text.Encodings.Web/8.0.0": {}, - "System.Text.RegularExpressions/4.3.0": { - "dependencies": { - "System.Runtime": "4.3.0" - } - }, - "System.Threading/4.3.0": { - "dependencies": { - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.Threading.Channels/8.0.0": {}, - "System.Threading.RateLimiting/8.0.0": {}, - "System.Threading.Tasks/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Threading.Tasks.Extensions/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - } - }, - "System.Threading.Timer/4.3.0": { - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - } - }, - "System.Xml.ReaderWriter/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Text.Encoding.Extensions": "4.3.0", - "System.Text.RegularExpressions": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "System.Threading.Tasks.Extensions": "4.3.0" - } - }, - "System.Xml.XDocument/4.3.0": { - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tools": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Xml.ReaderWriter": "4.3.0" - } - }, - "xunit/2.5.3": { - "dependencies": { - "xunit.analyzers": "1.4.0", - "xunit.assert": "2.5.3", - "xunit.core": "2.5.3" - } - }, - "xunit.abstractions/2.0.3": { - "runtime": { - "lib/netstandard2.0/xunit.abstractions.dll": { - "assemblyVersion": "2.0.0.0", - "fileVersion": "2.0.0.0" - } - } - }, - "xunit.analyzers/1.4.0": {}, - "xunit.assert/2.5.3": { - "dependencies": { - "NETStandard.Library": "1.6.1" - }, - "runtime": { - "lib/netstandard1.1/xunit.assert.dll": { - "assemblyVersion": "2.5.3.0", - "fileVersion": "2.5.3.0" - } - } - }, - "xunit.core/2.5.3": { - "dependencies": { - "xunit.extensibility.core": "2.5.3", - "xunit.extensibility.execution": "2.5.3" - } - }, - "xunit.extensibility.core/2.5.3": { - "dependencies": { - "NETStandard.Library": "1.6.1", - "xunit.abstractions": "2.0.3" - }, - "runtime": { - "lib/netstandard1.1/xunit.core.dll": { - "assemblyVersion": "2.5.3.0", - "fileVersion": "2.5.3.0" - } - } - }, - "xunit.extensibility.execution/2.5.3": { - "dependencies": { - "NETStandard.Library": "1.6.1", - "xunit.extensibility.core": "2.5.3" - }, - "runtime": { - "lib/netstandard1.1/xunit.execution.dotnet.dll": { - "assemblyVersion": "2.5.3.0", - "fileVersion": "2.5.3.0" - } - } - }, - "xunit.runner.visualstudio/2.5.3": {}, - "IM_API/1.0.0": { - "dependencies": { - "AutoMapper": "12.0.1", - "AutoMapper.Extensions.Microsoft.DependencyInjection": "12.0.0", - "MassTransit.RabbitMQ": "8.5.5", - "Microsoft.AspNetCore.Authentication.JwtBearer": "8.0.21", - "Microsoft.AspNetCore.SignalR": "1.2.0", - "Microsoft.Extensions.Caching.StackExchangeRedis": "10.0.2", - "Microsoft.VisualStudio.Azure.Containers.Tools.Targets": "1.22.1", - "Newtonsoft.Json": "13.0.4", - "Pomelo.EntityFrameworkCore.MySql": "8.0.3", - "RedLock.net": "2.3.2", - "StackExchange.Redis": "2.9.32", - "Swashbuckle.AspNetCore": "6.6.2", - "System.IdentityModel.Tokens.Jwt": "8.14.0" - }, - "runtime": { - "IM_API.dll": { - "assemblyVersion": "1.0.0.0", - "fileVersion": "1.0.0.0" - } - } - } - } - }, - "libraries": { - "IMTest/1.0.0": { - "type": "project", - "serviceable": false, - "sha512": "" - }, - "AutoMapper/12.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-hvV62vl6Hp/WfQ24yzo3Co9+OPl8wH8hApwVtgWpiAynVJkUcs7xvehnSftawL8Pe8FrPffBRM3hwzLQqWDNjA==", - "path": "automapper/12.0.1", - "hashPath": "automapper.12.0.1.nupkg.sha512" - }, - "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-XCJ4E3oKrbRl1qY9Mr+7uyC0xZj1+bqQjmQRWTiTKiVuuXTny+7YFWHi20tPjwkMukLbicN6yGlDy5PZ4wyi1w==", - "path": "automapper.extensions.microsoft.dependencyinjection/12.0.0", - "hashPath": "automapper.extensions.microsoft.dependencyinjection.12.0.0.nupkg.sha512" - }, - "Castle.Core/5.1.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-rpYtIczkzGpf+EkZgDr9CClTdemhsrwA/W5hMoPjLkRFnXzH44zDLoovXeKtmxb1ykXK9aJVODSpiJml8CTw2g==", - "path": "castle.core/5.1.1", - "hashPath": "castle.core.5.1.1.nupkg.sha512" - }, - "coverlet.collector/6.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-tW3lsNS+dAEII6YGUX/VMoJjBS1QvsxqJeqLaJXub08y1FSjasFPtQ4UBUsudE9PNrzLjooClMsPtY2cZLdXpQ==", - "path": "coverlet.collector/6.0.0", - "hashPath": "coverlet.collector.6.0.0.nupkg.sha512" - }, - "MassTransit/8.5.5": { - "type": "package", - "serviceable": true, - "sha512": "sha512-bSg8k5q+rP1s+dIGXLLbctqDGdIkfDjdxwNWtCUH7xNCN9ZuM7mqSPQPIFgaYIi34e81m4FqAqo4CAHuWPkhRA==", - "path": "masstransit/8.5.5", - "hashPath": "masstransit.8.5.5.nupkg.sha512" - }, - "MassTransit.Abstractions/8.5.5": { - "type": "package", - "serviceable": true, - "sha512": "sha512-0mn2Ay17dD6z5tgSLjbVRlldSbL9iowzFEfVgVfBXVG5ttz9dSWeR4TrdD6pqH93GWXp4CvSmF8i1HqxLX7DZw==", - "path": "masstransit.abstractions/8.5.5", - "hashPath": "masstransit.abstractions.8.5.5.nupkg.sha512" - }, - "MassTransit.RabbitMQ/8.5.5": { - "type": "package", - "serviceable": true, - "sha512": "sha512-UxWn4o90YVMF9PBkJeoskOFPneh6YtnI1fLJHtvZiSAG0eoiRrWPGa+6FQCvjkQ/ljCKfjzok2eGZc/vmNZ01A==", - "path": "masstransit.rabbitmq/8.5.5", - "hashPath": "masstransit.rabbitmq.8.5.5.nupkg.sha512" - }, - "Microsoft.AspNetCore.Authentication.Abstractions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ve6uvLwKNRkfnO/QeN9M8eUJ49lCnWv/6/9p6iTEuiI6Rtsz+myaBAjdMzLuTViQY032xbTF5AdZF5BJzJJyXQ==", - "path": "microsoft.aspnetcore.authentication.abstractions/2.3.0", - "hashPath": "microsoft.aspnetcore.authentication.abstractions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.21": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ZuUpJ4DvmVArmTlyGGg+b9IdKgd8Kw0SmEzhjy4dQw8R6rxfNqCXfGvGm3ld7xlrgthJFou/le9tadsSyjFLuw==", - "path": "microsoft.aspnetcore.authentication.jwtbearer/8.0.21", - "hashPath": "microsoft.aspnetcore.authentication.jwtbearer.8.0.21.nupkg.sha512" - }, - "Microsoft.AspNetCore.Authorization/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-2/aBgLqBXva/+w8pzRNY8ET43Gi+dr1gv/7ySfbsh23lTK6IAgID5MGUEa1hreNIF+0XpW4tX7QwVe70+YvaPg==", - "path": "microsoft.aspnetcore.authorization/2.3.0", - "hashPath": "microsoft.aspnetcore.authorization.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Authorization.Policy/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-vn31uQ1dA1MIV2WNNDOOOm88V5KgR9esfi0LyQ6eVaGq2h0Yw+R29f5A6qUNJt+RccS3qkYayylAy9tP1wV+7Q==", - "path": "microsoft.aspnetcore.authorization.policy/2.3.0", - "hashPath": "microsoft.aspnetcore.authorization.policy.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Connections.Abstractions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ULFSa+/L+WiAHVlIFHyg0OmHChU9Hx+K+xnt0hbIU5XmT1EGy0pNDx23QAzDtAy9jxQrTG6MX0MdvMeU4D4c7w==", - "path": "microsoft.aspnetcore.connections.abstractions/2.3.0", - "hashPath": "microsoft.aspnetcore.connections.abstractions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Hosting.Abstractions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-4ivq53W2k6Nj4eez9wc81ytfGj6HR1NaZJCpOrvghJo9zHuQF57PLhPoQH5ItyCpHXnrN/y7yJDUm+TGYzrx0w==", - "path": "microsoft.aspnetcore.hosting.abstractions/2.3.0", - "hashPath": "microsoft.aspnetcore.hosting.abstractions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-F5iHx7odAbFKBV1DNPDkFFcVmD5Tk7rk+tYm3LMQxHEFFdjlg5QcYb5XhHAefl5YaaPeG6ad+/ck8kSG3/D6kw==", - "path": "microsoft.aspnetcore.hosting.server.abstractions/2.3.0", - "hashPath": "microsoft.aspnetcore.hosting.server.abstractions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-I9azEG2tZ4DDHAFgv+N38e6Yhttvf+QjE2j2UYyCACE7Swm5/0uoihCMWZ87oOZYeqiEFSxbsfpT71OYHe2tpw==", - "path": "microsoft.aspnetcore.http/2.3.0", - "hashPath": "microsoft.aspnetcore.http.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Abstractions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-39r9PPrjA6s0blyFv5qarckjNkaHRA5B+3b53ybuGGNTXEj1/DStQJ4NWjFL6QTRQpL9zt7nDyKxZdJOlcnq+Q==", - "path": "microsoft.aspnetcore.http.abstractions/2.3.0", - "hashPath": "microsoft.aspnetcore.http.abstractions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections/1.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VYMCOLvdT0y3O9lk4jUuIs8+re7u5+i+ka6ZZ6fIzSJ94c/JeMnAOOg39EB2i4crPXvLoiSdzKWlNPJgTbCZ2g==", - "path": "microsoft.aspnetcore.http.connections/1.2.0", - "hashPath": "microsoft.aspnetcore.http.connections.1.2.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections.Common/1.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-yUA7eg6kv7Wbz5TCW4PqS5/kYE5VxUIEDvoxjw4p1RwS2LGm84F9fBtM0mD6wrRfiv1NUyJ7WBjn3PWd/ccO+w==", - "path": "microsoft.aspnetcore.http.connections.common/1.2.0", - "hashPath": "microsoft.aspnetcore.http.connections.common.1.2.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Extensions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-EY2u/wFF5jsYwGXXswfQWrSsFPmiXsniAlUWo3rv/MGYf99ZFsENDnZcQP6W3c/+xQmQXq0NauzQ7jyy+o1LDQ==", - "path": "microsoft.aspnetcore.http.extensions/2.3.0", - "hashPath": "microsoft.aspnetcore.http.extensions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Features/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-f10WUgcsKqrkmnz6gt8HeZ7kyKjYN30PO7cSic1lPtH7paPtnQqXPOveul/SIPI43PhRD4trttg4ywnrEmmJpA==", - "path": "microsoft.aspnetcore.http.features/2.3.0", - "hashPath": "microsoft.aspnetcore.http.features.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Routing/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-no5/VC0CAQuT4PK4rp2K5fqwuSfzr2mdB6m1XNfWVhHnwzpRQzKAu9flChiT/JTLKwVI0Vq2MSmSW2OFMDCNXg==", - "path": "microsoft.aspnetcore.routing/2.3.0", - "hashPath": "microsoft.aspnetcore.routing.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Routing.Abstractions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ZkFpUrSmp6TocxZLBEX3IBv5dPMbQuMs6L/BPl0WRfn32UVOtNYJQ0bLdh3cL9LMV0rmTW/5R0w8CBYxr0AOUw==", - "path": "microsoft.aspnetcore.routing.abstractions/2.3.0", - "hashPath": "microsoft.aspnetcore.routing.abstractions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR/1.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-XoCcsOTdtBiXyOzUtpbCl0IaqMOYjnr+6dbDxvUCFn7NR6bu7CwrlQ3oQzkltTwDZH0b6VEUN9wZPOYvPHi+Lg==", - "path": "microsoft.aspnetcore.signalr/1.2.0", - "hashPath": "microsoft.aspnetcore.signalr.1.2.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Common/1.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-FZeXIaoWqe145ZPdfiptwkw/sP1BX1UD0706GNBwwoaFiKsNbLEl/Trhj2+idlp3qbX1BEwkQesKNxkopVY5Xg==", - "path": "microsoft.aspnetcore.signalr.common/1.2.0", - "hashPath": "microsoft.aspnetcore.signalr.common.1.2.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Core/1.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-eZTuMkSDw1uwjhLhJbMxgW2Cuyxfn0Kfqm8OBmqvuzE9Qc/VVzh8dGrAp2F9Pk7XKTDHmlhc5RTLcPPAZ5PSZw==", - "path": "microsoft.aspnetcore.signalr.core/1.2.0", - "hashPath": "microsoft.aspnetcore.signalr.core.1.2.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/1.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-hNvZ7kQxp5Udqd/IFWViU35bUJvi4xnNzjkF28HRvrdrS7JNsIASTvMqArP6HLQUc3j6nlUOeShNhVmgI1wzHg==", - "path": "microsoft.aspnetcore.signalr.protocols.json/1.2.0", - "hashPath": "microsoft.aspnetcore.signalr.protocols.json.1.2.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.WebSockets/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-+T4zpnVPkIjvvkyhTH3WBJlTfqmTBRozvnMudAUDvcb4e+NrWf52q8BXh52rkCrBgX6Cudf6F/UhZwTowyBtKg==", - "path": "microsoft.aspnetcore.websockets/2.3.0", - "hashPath": "microsoft.aspnetcore.websockets.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.WebUtilities/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-trbXdWzoAEUVd0PE2yTopkz4kjZaAIA7xUWekd5uBw+7xE8Do/YOVTeb9d9koPTlbtZT539aESJjSLSqD8eYrQ==", - "path": "microsoft.aspnetcore.webutilities/2.3.0", - "hashPath": "microsoft.aspnetcore.webutilities.2.3.0.nupkg.sha512" - }, - "Microsoft.Bcl.AsyncInterfaces/1.1.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-1Am6l4Vpn3/K32daEqZI+FFr96OlZkgwK2LcT3pZ2zWubR5zTPW3/FkO1Rat9kb7oQOa4rxgl9LJHc5tspCWfg==", - "path": "microsoft.bcl.asyncinterfaces/1.1.0", - "hashPath": "microsoft.bcl.asyncinterfaces.1.1.0.nupkg.sha512" - }, - "Microsoft.CodeCoverage/17.8.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-KC8SXWbGIdoFVdlxKk9WHccm0llm9HypcHMLUUFabRiTS3SO2fQXNZfdiF3qkEdTJhbRrxhdRxjL4jbtwPq4Ew==", - "path": "microsoft.codecoverage/17.8.0", - "hashPath": "microsoft.codecoverage.17.8.0.nupkg.sha512" - }, - "Microsoft.CSharp/4.7.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==", - "path": "microsoft.csharp/4.7.0", - "hashPath": "microsoft.csharp.4.7.0.nupkg.sha512" - }, - "Microsoft.EntityFrameworkCore/8.0.22": { - "type": "package", - "serviceable": true, - "sha512": "sha512-nKGrD/WOO1d7qtXvghFAHre5Fk3ubw41pDFM0hbFxVIkMFxl4B0ug2LylMHOq+dgAceUeo3bx0qMh6/Jl9NbrA==", - "path": "microsoft.entityframeworkcore/8.0.22", - "hashPath": "microsoft.entityframeworkcore.8.0.22.nupkg.sha512" - }, - "Microsoft.EntityFrameworkCore.Abstractions/8.0.22": { - "type": "package", - "serviceable": true, - "sha512": "sha512-p4Fw9mpJnZHmkdOGCbBqbvuyj1LnnFxNon8snMKIQ0MGSB+j9f6ffWDfvGRaOS/9ikqQG9RMOTzZk52q1G23ng==", - "path": "microsoft.entityframeworkcore.abstractions/8.0.22", - "hashPath": "microsoft.entityframeworkcore.abstractions.8.0.22.nupkg.sha512" - }, - "Microsoft.EntityFrameworkCore.Analyzers/8.0.22": { - "type": "package", - "serviceable": true, - "sha512": "sha512-lrSWwr+X+Fn5XGOwOYFQJWx+u+eameqhMjQ1mohXUE2N7LauucZAtcH/j+yXwQntosKoXU1TOoggTL/zmYqbHQ==", - "path": "microsoft.entityframeworkcore.analyzers/8.0.22", - "hashPath": "microsoft.entityframeworkcore.analyzers.8.0.22.nupkg.sha512" - }, - "Microsoft.EntityFrameworkCore.InMemory/8.0.22": { - "type": "package", - "serviceable": true, - "sha512": "sha512-dPbM/KLIh/AdHRjh/OhrzhAiHRLT0JBC5KSvAZ71eg42+QwF9aEuBfTzqr+GJE6DK9CLhqh9jXAqRKFojPki5g==", - "path": "microsoft.entityframeworkcore.inmemory/8.0.22", - "hashPath": "microsoft.entityframeworkcore.inmemory.8.0.22.nupkg.sha512" - }, - "Microsoft.EntityFrameworkCore.Relational/8.0.13": { - "type": "package", - "serviceable": true, - "sha512": "sha512-uQR2iTar+6ZEjEHTwgH0/7ySSRme4R9sDiupfG3w/eBub3365fPw/MjhsuOMQkdq9YzLM7veH4Qt/K9OqL26Qg==", - "path": "microsoft.entityframeworkcore.relational/8.0.13", - "hashPath": "microsoft.entityframeworkcore.relational.8.0.13.nupkg.sha512" - }, - "Microsoft.Extensions.ApiDescription.Server/6.0.5": { - "type": "package", - "serviceable": true, - "sha512": "sha512-Ckb5EDBUNJdFWyajfXzUIMRkhf52fHZOQuuZg/oiu8y7zDCVwD0iHhew6MnThjHmevanpxL3f5ci2TtHQEN6bw==", - "path": "microsoft.extensions.apidescription.server/6.0.5", - "hashPath": "microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512" - }, - "Microsoft.Extensions.Caching.Abstractions/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-WIRPDa/qoKHmJhTAPCO/zLu9kRLQ2Fd6HD5tzgdXJ3xGEVXDHP6FvakKJjynwKrVDld8H4G4tcbW53wuC/wxMQ==", - "path": "microsoft.extensions.caching.abstractions/10.0.2", - "hashPath": "microsoft.extensions.caching.abstractions.10.0.2.nupkg.sha512" - }, - "Microsoft.Extensions.Caching.Memory/8.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==", - "path": "microsoft.extensions.caching.memory/8.0.1", - "hashPath": "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512" - }, - "Microsoft.Extensions.Caching.StackExchangeRedis/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-WEx0VM6KVv4Bf6lwe4WQTd4EixIfw38ZU3u/7zMe+uC5fOyiANu8Os/qyiqv2iEsIJb296tbd2E2BTaWIha3Vg==", - "path": "microsoft.extensions.caching.stackexchangeredis/10.0.2", - "hashPath": "microsoft.extensions.caching.stackexchangeredis.10.0.2.nupkg.sha512" - }, - "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==", - "path": "microsoft.extensions.configuration.abstractions/8.0.0", - "hashPath": "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection/8.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==", - "path": "microsoft.extensions.dependencyinjection/8.0.1", - "hashPath": "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-zOIurr59+kUf9vNcsUkCvKWZv+fPosUZXURZesYkJCvl0EzTc9F7maAO4Cd2WEV7ZJJ0AZrFQvuH6Npph9wdBw==", - "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.2", - "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.2.nupkg.sha512" - }, - "Microsoft.Extensions.Diagnostics.Abstractions/8.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-elH2vmwNmsXuKmUeMQ4YW9ldXiF+gSGDgg1vORksob5POnpaI6caj1Hu8zaYbEuibhqCoWg0YRWDazBY3zjBfg==", - "path": "microsoft.extensions.diagnostics.abstractions/8.0.1", - "hashPath": "microsoft.extensions.diagnostics.abstractions.8.0.1.nupkg.sha512" - }, - "Microsoft.Extensions.Diagnostics.HealthChecks/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-P9SoBuVZhJPpALZmSq72aQEb9ryP67EdquaCZGXGrrcASTNHYdrUhnpgSwIipgM5oVC+dKpRXg5zxobmF9xr5g==", - "path": "microsoft.extensions.diagnostics.healthchecks/8.0.0", - "hashPath": "microsoft.extensions.diagnostics.healthchecks.8.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-AT2qqos3IgI09ok36Qag9T8bb6kHJ3uT9Q5ki6CySybFsK6/9JbvQAgAHf1pVEjST0/N4JaFaCbm40R5edffwg==", - "path": "microsoft.extensions.diagnostics.healthchecks.abstractions/8.0.0", - "hashPath": "microsoft.extensions.diagnostics.healthchecks.abstractions.8.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.FileProviders.Abstractions/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ZbaMlhJlpisjuWbvXr4LdAst/1XxH3vZ6A0BsgTphZ2L4PGuxRLz7Jr/S7mkAAnOn78Vu0fKhEgNF5JO3zfjqQ==", - "path": "microsoft.extensions.fileproviders.abstractions/8.0.0", - "hashPath": "microsoft.extensions.fileproviders.abstractions.8.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Hosting.Abstractions/8.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-nHwq9aPBdBPYXPti6wYEEfgXddfBrYC+CQLn+qISiwQq5tpfaqDZSKOJNxoe9rfQxGf1c+2wC/qWFe1QYJPYqw==", - "path": "microsoft.extensions.hosting.abstractions/8.0.1", - "hashPath": "microsoft.extensions.hosting.abstractions.8.0.1.nupkg.sha512" - }, - "Microsoft.Extensions.Logging/8.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==", - "path": "microsoft.extensions.logging/8.0.1", - "hashPath": "microsoft.extensions.logging.8.0.1.nupkg.sha512" - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-RZkez/JjpnO+MZ6efKkSynN6ZztLpw3WbxNzjLCPBd97wWj1S9ZYPWi0nmT4kWBRa6atHsdM1ydGkUr8GudyDQ==", - "path": "microsoft.extensions.logging.abstractions/10.0.2", - "hashPath": "microsoft.extensions.logging.abstractions.10.0.2.nupkg.sha512" - }, - "Microsoft.Extensions.ObjectPool/8.0.11": { - "type": "package", - "serviceable": true, - "sha512": "sha512-6ApKcHNJigXBfZa6XlDQ8feJpq7SG1ogZXg6M4FiNzgd6irs3LUAzo0Pfn4F2ZI9liGnH1XIBR/OtSbZmJAV5w==", - "path": "microsoft.extensions.objectpool/8.0.11", - "hashPath": "microsoft.extensions.objectpool.8.0.11.nupkg.sha512" - }, - "Microsoft.Extensions.Options/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-1De2LJjmxdqopI5AYC5dIhoZQ79AR5ayywxNF1rXrXFtKQfbQOV9+n/IsZBa7qWlr0MqoGpW8+OY2v/57udZOA==", - "path": "microsoft.extensions.options/10.0.2", - "hashPath": "microsoft.extensions.options.10.0.2.nupkg.sha512" - }, - "Microsoft.Extensions.Primitives/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-QmSiO+oLBEooGgB3i0GRXyeYRDHjllqt3k365jwfZlYWhvSHA3UL2NEVV5m8aZa041eIlblo6KMI5txvTMpTwA==", - "path": "microsoft.extensions.primitives/10.0.2", - "hashPath": "microsoft.extensions.primitives.10.0.2.nupkg.sha512" - }, - "Microsoft.IdentityModel.Abstractions/8.14.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-iwbCpSjD3ehfTwBhtSNEtKPK0ICun6ov7Ibx6ISNA9bfwIyzI2Siwyi9eJFCJBwxowK9xcA1mj+jBWiigeqgcQ==", - "path": "microsoft.identitymodel.abstractions/8.14.0", - "hashPath": "microsoft.identitymodel.abstractions.8.14.0.nupkg.sha512" - }, - "Microsoft.IdentityModel.JsonWebTokens/8.14.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-4jOpiA4THdtpLyMdAb24dtj7+6GmvhOhxf5XHLYWmPKF8ApEnApal1UnJsKO4HxUWRXDA6C4WQVfYyqsRhpNpQ==", - "path": "microsoft.identitymodel.jsonwebtokens/8.14.0", - "hashPath": "microsoft.identitymodel.jsonwebtokens.8.14.0.nupkg.sha512" - }, - "Microsoft.IdentityModel.Logging/8.14.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-eqqnemdW38CKZEHS6diA50BV94QICozDZEvSrsvN3SJXUFwVB9gy+/oz76gldP7nZliA16IglXjXTCTdmU/Ejg==", - "path": "microsoft.identitymodel.logging/8.14.0", - "hashPath": "microsoft.identitymodel.logging.8.14.0.nupkg.sha512" - }, - "Microsoft.IdentityModel.Protocols/7.1.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-SydLwMRFx6EHPWJ+N6+MVaoArN1Htt92b935O3RUWPY1yUF63zEjvd3lBu79eWdZUwedP8TN2I5V9T3nackvIQ==", - "path": "microsoft.identitymodel.protocols/7.1.2", - "hashPath": "microsoft.identitymodel.protocols.7.1.2.nupkg.sha512" - }, - "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.1.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-6lHQoLXhnMQ42mGrfDkzbIOR3rzKM1W1tgTeMPLgLCqwwGw0d96xFi/UiX/fYsu7d6cD5MJiL3+4HuI8VU+sVQ==", - "path": "microsoft.identitymodel.protocols.openidconnect/7.1.2", - "hashPath": "microsoft.identitymodel.protocols.openidconnect.7.1.2.nupkg.sha512" - }, - "Microsoft.IdentityModel.Tokens/8.14.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-lKIZiBiGd36k02TCdMHp1KlNWisyIvQxcYJvIkz7P4gSQ9zi8dgh6S5Grj8NNG7HWYIPfQymGyoZ6JB5d1Lo1g==", - "path": "microsoft.identitymodel.tokens/8.14.0", - "hashPath": "microsoft.identitymodel.tokens.8.14.0.nupkg.sha512" - }, - "Microsoft.Net.Http.Headers/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-/M0wVg6tJUOHutWD3BMOUVZAioJVXe0tCpFiovzv0T9T12TBf4MnaHP0efO8TCr1a6O9RZgQeZ9Gdark8L9XdA==", - "path": "microsoft.net.http.headers/2.3.0", - "hashPath": "microsoft.net.http.headers.2.3.0.nupkg.sha512" - }, - "Microsoft.NET.Test.Sdk/17.8.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-BmTYGbD/YuDHmApIENdoyN1jCk0Rj1fJB0+B/fVekyTdVidr91IlzhqzytiUgaEAzL1ZJcYCme0MeBMYvJVzvw==", - "path": "microsoft.net.test.sdk/17.8.0", - "hashPath": "microsoft.net.test.sdk.17.8.0.nupkg.sha512" - }, - "Microsoft.NETCore.Platforms/1.1.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-kz0PEW2lhqygehI/d6XsPCQzD7ff7gUJaVGPVETX611eadGsA3A877GdSlU0LRVMCTH/+P3o2iDTak+S08V2+A==", - "path": "microsoft.netcore.platforms/1.1.0", - "hashPath": "microsoft.netcore.platforms.1.1.0.nupkg.sha512" - }, - "Microsoft.NETCore.Targets/1.1.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-aOZA3BWfz9RXjpzt0sRJJMjAscAUm3Hoa4UWAfceV9UTYxgwZ1lZt5nO2myFf+/jetYQo4uTP7zS8sJY67BBxg==", - "path": "microsoft.netcore.targets/1.1.0", - "hashPath": "microsoft.netcore.targets.1.1.0.nupkg.sha512" - }, - "Microsoft.OpenApi/1.6.14": { - "type": "package", - "serviceable": true, - "sha512": "sha512-tTaBT8qjk3xINfESyOPE2rIellPvB7qpVqiWiyA/lACVvz+xOGiXhFUfohcx82NLbi5avzLW0lx+s6oAqQijfw==", - "path": "microsoft.openapi/1.6.14", - "hashPath": "microsoft.openapi.1.6.14.nupkg.sha512" - }, - "Microsoft.TestPlatform.ObjectModel/17.8.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-AYy6vlpGMfz5kOFq99L93RGbqftW/8eQTqjT9iGXW6s9MRP3UdtY8idJ8rJcjeSja8A18IhIro5YnH3uv1nz4g==", - "path": "microsoft.testplatform.objectmodel/17.8.0", - "hashPath": "microsoft.testplatform.objectmodel.17.8.0.nupkg.sha512" - }, - "Microsoft.TestPlatform.TestHost/17.8.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-9ivcl/7SGRmOT0YYrHQGohWiT5YCpkmy/UEzldfVisLm6QxbLaK3FAJqZXI34rnRLmqqDCeMQxKINwmKwAPiDw==", - "path": "microsoft.testplatform.testhost/17.8.0", - "hashPath": "microsoft.testplatform.testhost.17.8.0.nupkg.sha512" - }, - "Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.22.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-EfYANhAWqmWKoLwN6bxoiPZSOfJSO9lzX+UrU6GVhLhPub1Hd+5f0zL0/tggIA6mRz6Ebw2xCNcIsM4k+7NPng==", - "path": "microsoft.visualstudio.azure.containers.tools.targets/1.22.1", - "hashPath": "microsoft.visualstudio.azure.containers.tools.targets.1.22.1.nupkg.sha512" - }, - "Microsoft.Win32.Primitives/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-9ZQKCWxH7Ijp9BfahvL2Zyf1cJIk8XYLF6Yjzr2yi0b2cOut/HQ31qf1ThHAgCc3WiZMdnWcfJCgN82/0UunxA==", - "path": "microsoft.win32.primitives/4.3.0", - "hashPath": "microsoft.win32.primitives.4.3.0.nupkg.sha512" - }, - "Moq/4.20.72": { - "type": "package", - "serviceable": true, - "sha512": "sha512-EA55cjyNn8eTNWrgrdZJH5QLFp2L43oxl1tlkoYUKIE9pRwL784OWiTXeCV5ApS+AMYEAlt7Fo03A2XfouvHmQ==", - "path": "moq/4.20.72", - "hashPath": "moq.4.20.72.nupkg.sha512" - }, - "MySqlConnector/2.3.5": { - "type": "package", - "serviceable": true, - "sha512": "sha512-AmEfUPkFl+Ev6jJ8Dhns3CYHBfD12RHzGYWuLt6DfG6/af6YvOMyPz74ZPPjBYQGRJkumD2Z48Kqm8s5DJuhLA==", - "path": "mysqlconnector/2.3.5", - "hashPath": "mysqlconnector.2.3.5.nupkg.sha512" - }, - "NETStandard.Library/1.6.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-WcSp3+vP+yHNgS8EV5J7pZ9IRpeDuARBPN28by8zqff1wJQXm26PVU8L3/fYLBJVU7BtDyqNVWq2KlCVvSSR4A==", - "path": "netstandard.library/1.6.1", - "hashPath": "netstandard.library.1.6.1.nupkg.sha512" - }, - "Newtonsoft.Json/13.0.4": { - "type": "package", - "serviceable": true, - "sha512": "sha512-pdgNNMai3zv51W5aq268sujXUyx7SNdE2bj1wZcWjAQrKMFZV260lbqYop1d2GM67JI1huLRwxo9ZqnfF/lC6A==", - "path": "newtonsoft.json/13.0.4", - "hashPath": "newtonsoft.json.13.0.4.nupkg.sha512" - }, - "NuGet.Frameworks/6.5.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-QWINE2x3MbTODsWT1Gh71GaGb5icBz4chS8VYvTgsBnsi8esgN6wtHhydd7fvToWECYGq7T4cgBBDiKD/363fg==", - "path": "nuget.frameworks/6.5.0", - "hashPath": "nuget.frameworks.6.5.0.nupkg.sha512" - }, - "Pipelines.Sockets.Unofficial/2.2.8": { - "type": "package", - "serviceable": true, - "sha512": "sha512-zG2FApP5zxSx6OcdJQLbZDk2AVlN2BNQD6MorwIfV6gVj0RRxWPEp2LXAxqDGZqeNV1Zp0BNPcNaey/GXmTdvQ==", - "path": "pipelines.sockets.unofficial/2.2.8", - "hashPath": "pipelines.sockets.unofficial.2.2.8.nupkg.sha512" - }, - "Pomelo.EntityFrameworkCore.MySql/8.0.3": { - "type": "package", - "serviceable": true, - "sha512": "sha512-gOHP6v/nFp5V/FgHqv9mZocGqCLGofihEX9dTbLhiXX3H7SJHmGX70GIPUpiqLT+1jIfDxg1PZh9MTUKuk7Kig==", - "path": "pomelo.entityframeworkcore.mysql/8.0.3", - "hashPath": "pomelo.entityframeworkcore.mysql.8.0.3.nupkg.sha512" - }, - "RabbitMQ.Client/7.1.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-y3c6ulgULScWthHw5PLM1ShHRLhxg0vCtzX/hh61gRgNecL3ZC3WoBW2HYHoXOVRqTl99Br9E7CZEytGZEsCyQ==", - "path": "rabbitmq.client/7.1.2", - "hashPath": "rabbitmq.client.7.1.2.nupkg.sha512" - }, - "RedLock.net/2.3.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-jlrALAArm4dCE292U3EtRoMnVKJ9M6sunbZn/oG5OuzlGtTpusXBfvDrnGWbgGDlWV027f5E9H5CiVnPxiq8+g==", - "path": "redlock.net/2.3.2", - "hashPath": "redlock.net.2.3.2.nupkg.sha512" - }, - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-HdSSp5MnJSsg08KMfZThpuLPJpPwE5hBXvHwoKWosyHHfe8Mh5WKT0ylEOf6yNzX6Ngjxe4Whkafh5q7Ymac4Q==", - "path": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-+yH1a49wJMy8Zt4yx5RhJrxO/DBDByAiCzNwiETI+1S4mPdCu0OY4djdciC7Vssk0l22wQaDLrXxXkp+3+7bVA==", - "path": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-c3YNH1GQJbfIPJeCnr4avseugSqPrxwIqzthYyZDN6EuOyNOzq+y2KSUfRcXauya1sF4foESTgwM5e1A8arAKw==", - "path": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.native.System/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-c/qWt2LieNZIj1jGnVNsE2Kl23Ya2aSTBuXMD6V7k9KWr6l16Tqdwq+hJScEpWER9753NWC8h96PaVNY5Ld7Jw==", - "path": "runtime.native.system/4.3.0", - "hashPath": "runtime.native.system.4.3.0.nupkg.sha512" - }, - "runtime.native.System.IO.Compression/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-INBPonS5QPEgn7naufQFXJEp3zX6L4bwHgJ/ZH78aBTpeNfQMtf7C6VrAFhlq2xxWBveIOWyFzQjJ8XzHMhdOQ==", - "path": "runtime.native.system.io.compression/4.3.0", - "hashPath": "runtime.native.system.io.compression.4.3.0.nupkg.sha512" - }, - "runtime.native.System.Net.Http/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ZVuZJqnnegJhd2k/PtAbbIcZ3aZeITq3sj06oKfMBSfphW3HDmk/t4ObvbOk/JA/swGR0LNqMksAh/f7gpTROg==", - "path": "runtime.native.system.net.http/4.3.0", - "hashPath": "runtime.native.system.net.http.4.3.0.nupkg.sha512" - }, - "runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-DloMk88juo0OuOWr56QG7MNchmafTLYWvABy36izkrLI5VledI0rq28KGs1i9wbpeT9NPQrx/wTf8U2vazqQ3Q==", - "path": "runtime.native.system.security.cryptography.apple/4.3.0", - "hashPath": "runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512" - }, - "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-NS1U+700m4KFRHR5o4vo9DSlTmlCKu/u7dtE5sUHVIPB+xpXxYQvgBgA6wEIeCz6Yfn0Z52/72WYsToCEPJnrw==", - "path": "runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-b3pthNgxxFcD+Pc0WSEoC0+md3MyhRS6aCEeenvNE3Fdw1HyJ18ZhRFVJJzIeR/O/jpxPboB805Ho0T3Ul7w8A==", - "path": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-KeLz4HClKf+nFS7p/6Fi/CqyLXh81FpiGzcmuS8DGi9lUqSnZ6Es23/gv2O+1XVGfrbNmviF7CckBpavkBoIFQ==", - "path": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-kVXCuMTrTlxq4XOOMAysuNwsXWpYeboGddNGpIgNSZmv1b6r/s/DPk0fYMB7Q5Qo4bY68o48jt4T4y5BVecbCQ==", - "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple/4.3.0", - "hashPath": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512" - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-X7IdhILzr4ROXd8mI1BUCQMSHSQwelUlBjF1JyTKCjXaOGn2fB4EKBxQbCK2VjO3WaWIdlXZL3W6TiIVnrhX4g==", - "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-nyFNiCk/r+VOiIqreLix8yN+q3Wga9+SE8BCgkf+2BwEKiNx6DyvFjCgkfV743/grxv8jHJ8gUK4XEQw7yzRYg==", - "path": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ytoewC6wGorL7KoCAvRfsgoJPJbNq+64k2SqW6JcOAebWsFUvCCYgfzQMrnpvPiEl4OrblUlhF2ji+Q1+SVLrQ==", - "path": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-I8bKw2I8k58Wx7fMKQJn2R8lamboCAiHfHeV/pS65ScKWMMI0+wJkLYlEKvgW1D/XvSl/221clBoR2q9QNNM7A==", - "path": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VB5cn/7OzUfzdnC8tqAIMQciVLiq2epm2NrAm1E9OjNRyG4lVhfR61SMcLizejzQP8R8Uf/0l5qOIbUEi+RdEg==", - "path": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "hashPath": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "StackExchange.Redis/2.9.32": { - "type": "package", - "serviceable": true, - "sha512": "sha512-j5Rjbf7gWz5izrn0UWQy9RlQY4cQDPkwJfVqATnVsOa/+zzJrps12LOgacMsDl/Vit2f01cDiDkG/Rst8v2iGw==", - "path": "stackexchange.redis/2.9.32", - "hashPath": "stackexchange.redis.2.9.32.nupkg.sha512" - }, - "Swashbuckle.AspNetCore/6.6.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-+NB4UYVYN6AhDSjW0IJAd1AGD8V33gemFNLPaxKTtPkHB+HaKAKf9MGAEUPivEWvqeQfcKIw8lJaHq6LHljRuw==", - "path": "swashbuckle.aspnetcore/6.6.2", - "hashPath": "swashbuckle.aspnetcore.6.6.2.nupkg.sha512" - }, - "Swashbuckle.AspNetCore.Swagger/6.6.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ovgPTSYX83UrQUWiS5vzDcJ8TEX1MAxBgDFMK45rC24MorHEPQlZAHlaXj/yth4Zf6xcktpUgTEBvffRQVwDKA==", - "path": "swashbuckle.aspnetcore.swagger/6.6.2", - "hashPath": "swashbuckle.aspnetcore.swagger.6.6.2.nupkg.sha512" - }, - "Swashbuckle.AspNetCore.SwaggerGen/6.6.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-zv4ikn4AT1VYuOsDCpktLq4QDq08e7Utzbir86M5/ZkRaLXbCPF11E1/vTmOiDzRTl0zTZINQU2qLKwTcHgfrA==", - "path": "swashbuckle.aspnetcore.swaggergen/6.6.2", - "hashPath": "swashbuckle.aspnetcore.swaggergen.6.6.2.nupkg.sha512" - }, - "Swashbuckle.AspNetCore.SwaggerUI/6.6.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-mBBb+/8Hm2Q3Wygag+hu2jj69tZW5psuv0vMRXY07Wy+Rrj40vRP8ZTbKBhs91r45/HXT4aY4z0iSBYx1h6JvA==", - "path": "swashbuckle.aspnetcore.swaggerui/6.6.2", - "hashPath": "swashbuckle.aspnetcore.swaggerui.6.6.2.nupkg.sha512" - }, - "System.AppContext/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-fKC+rmaLfeIzUhagxY17Q9siv/sPrjjKcfNg1Ic8IlQkZLipo8ljcaZQu4VtI4Jqbzjc2VTjzGLF6WmsRXAEgA==", - "path": "system.appcontext/4.3.0", - "hashPath": "system.appcontext.4.3.0.nupkg.sha512" - }, - "System.Buffers/4.6.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-lN6tZi7Q46zFzAbRYXTIvfXcyvQQgxnY7Xm6C6xQ9784dEL1amjM6S6Iw4ZpsvesAKnRVsM4scrDQaDqSClkjA==", - "path": "system.buffers/4.6.0", - "hashPath": "system.buffers.4.6.0.nupkg.sha512" - }, - "System.Collections/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-3Dcj85/TBdVpL5Zr+gEEBUuFe2icOnLalmEh9hfck1PTYbbyWuZgh4fmm2ysCLTrqLQw6t3TgTyJ+VLp+Qb+Lw==", - "path": "system.collections/4.3.0", - "hashPath": "system.collections.4.3.0.nupkg.sha512" - }, - "System.Collections.Concurrent/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ztl69Xp0Y/UXCL+3v3tEU+lIy+bvjKNUmopn1wep/a291pVPK7dxBd6T7WnlQqRog+d1a/hSsgRsmFnIBKTPLQ==", - "path": "system.collections.concurrent/4.3.0", - "hashPath": "system.collections.concurrent.4.3.0.nupkg.sha512" - }, - "System.Console/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-DHDrIxiqk1h03m6khKWV2X8p/uvN79rgSqpilL6uzpmSfxfU5ng8VcPtW4qsDsQDHiTv6IPV9TmD5M/vElPNLg==", - "path": "system.console/4.3.0", - "hashPath": "system.console.4.3.0.nupkg.sha512" - }, - "System.Diagnostics.Debug/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ZUhUOdqmaG5Jk3Xdb8xi5kIyQYAA4PnTNlHx1mu9ZY3qv4ELIdKbnL/akbGaKi2RnNUWaZsAs31rvzFdewTj2g==", - "path": "system.diagnostics.debug/4.3.0", - "hashPath": "system.diagnostics.debug.4.3.0.nupkg.sha512" - }, - "System.Diagnostics.DiagnosticSource/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-lYWBy8fKkJHaRcOuw30d67PrtVjR5754sz5Wl76s8P+vJ9FSThh9b7LIcTSODx1LY7NB3Srvg+JMnzd67qNZOw==", - "path": "system.diagnostics.diagnosticsource/10.0.2", - "hashPath": "system.diagnostics.diagnosticsource.10.0.2.nupkg.sha512" - }, - "System.Diagnostics.EventLog/6.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-lcyUiXTsETK2ALsZrX+nWuHSIQeazhqPphLfaRxzdGaG93+0kELqpgEHtwWOlQe7+jSFnKwaCAgL4kjeZCQJnw==", - "path": "system.diagnostics.eventlog/6.0.0", - "hashPath": "system.diagnostics.eventlog.6.0.0.nupkg.sha512" - }, - "System.Diagnostics.Tools/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-UUvkJfSYJMM6x527dJg2VyWPSRqIVB0Z7dbjHst1zmwTXz5CcXSYJFWRpuigfbO1Lf7yfZiIaEUesfnl/g5EyA==", - "path": "system.diagnostics.tools/4.3.0", - "hashPath": "system.diagnostics.tools.4.3.0.nupkg.sha512" - }, - "System.Diagnostics.Tracing/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-rswfv0f/Cqkh78rA5S8eN8Neocz234+emGCtTF3lxPY96F+mmmUen6tbn0glN6PMvlKQb9bPAY5e9u7fgPTkKw==", - "path": "system.diagnostics.tracing/4.3.0", - "hashPath": "system.diagnostics.tracing.4.3.0.nupkg.sha512" - }, - "System.Globalization/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-kYdVd2f2PAdFGblzFswE4hkNANJBKRmsfa2X5LG2AcWE1c7/4t0pYae1L8vfZ5xvE2nK/R9JprtToA61OSHWIg==", - "path": "system.globalization/4.3.0", - "hashPath": "system.globalization.4.3.0.nupkg.sha512" - }, - "System.Globalization.Calendars/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-GUlBtdOWT4LTV3I+9/PJW+56AnnChTaOqqTLFtdmype/L500M2LIyXgmtd9X2P2VOkmJd5c67H5SaC2QcL1bFA==", - "path": "system.globalization.calendars/4.3.0", - "hashPath": "system.globalization.calendars.4.3.0.nupkg.sha512" - }, - "System.Globalization.Extensions/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-FhKmdR6MPG+pxow6wGtNAWdZh7noIOpdD5TwQ3CprzgIE1bBBoim0vbR1+AWsWjQmU7zXHgQo4TWSP6lCeiWcQ==", - "path": "system.globalization.extensions/4.3.0", - "hashPath": "system.globalization.extensions.4.3.0.nupkg.sha512" - }, - "System.IdentityModel.Tokens.Jwt/8.14.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-EYGgN/S+HK7S6F3GaaPLFAfK0UzMrkXFyWCvXpQWFYmZln3dqtbyIO7VuTM/iIIPMzkelg8ZLlBPvMhxj6nOAA==", - "path": "system.identitymodel.tokens.jwt/8.14.0", - "hashPath": "system.identitymodel.tokens.jwt.8.14.0.nupkg.sha512" - }, - "System.IO/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-3qjaHvxQPDpSOYICjUoTsmoq5u6QJAFRUITgeT/4gqkF1bajbSmb1kwSxEA8AHlofqgcKJcM8udgieRNhaJ5Cg==", - "path": "system.io/4.3.0", - "hashPath": "system.io.4.3.0.nupkg.sha512" - }, - "System.IO.Compression/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-YHndyoiV90iu4iKG115ibkhrG+S3jBm8Ap9OwoUAzO5oPDAWcr0SFwQFm0HjM8WkEZWo0zvLTyLmbvTkW1bXgg==", - "path": "system.io.compression/4.3.0", - "hashPath": "system.io.compression.4.3.0.nupkg.sha512" - }, - "System.IO.Compression.ZipFile/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-G4HwjEsgIwy3JFBduZ9quBkAu+eUwjIdJleuNSgmUojbH6O3mlvEIme+GHx/cLlTAPcrnnL7GqvB9pTlWRfhOg==", - "path": "system.io.compression.zipfile/4.3.0", - "hashPath": "system.io.compression.zipfile.4.3.0.nupkg.sha512" - }, - "System.IO.FileSystem/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-3wEMARTnuio+ulnvi+hkRNROYwa1kylvYahhcLk4HSoVdl+xxTFVeVlYOfLwrDPImGls0mDqbMhrza8qnWPTdA==", - "path": "system.io.filesystem/4.3.0", - "hashPath": "system.io.filesystem.4.3.0.nupkg.sha512" - }, - "System.IO.FileSystem.Primitives/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-6QOb2XFLch7bEc4lIcJH49nJN2HV+OC3fHDgsLVsBVBk3Y4hFAnOBGzJ2lUu7CyDDFo9IBWkSsnbkT6IBwwiMw==", - "path": "system.io.filesystem.primitives/4.3.0", - "hashPath": "system.io.filesystem.primitives.4.3.0.nupkg.sha512" - }, - "System.IO.Pipelines/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-FHNOatmUq0sqJOkTx+UF/9YK1f180cnW5FVqnQMvYUN0elp6wFzbtPSiqbo1/ru8ICp43JM1i7kKkk6GsNGHlA==", - "path": "system.io.pipelines/8.0.0", - "hashPath": "system.io.pipelines.8.0.0.nupkg.sha512" - }, - "System.Linq/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-5DbqIUpsDp0dFftytzuMmc0oeMdQwjcP/EWxsksIz/w1TcFRkZ3yKKz0PqiYFMmEwPSWw+qNVqD7PJ889JzHbw==", - "path": "system.linq/4.3.0", - "hashPath": "system.linq.4.3.0.nupkg.sha512" - }, - "System.Linq.Expressions/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-PGKkrd2khG4CnlyJwxwwaWWiSiWFNBGlgXvJpeO0xCXrZ89ODrQ6tjEWS/kOqZ8GwEOUATtKtzp1eRgmYNfclg==", - "path": "system.linq.expressions/4.3.0", - "hashPath": "system.linq.expressions.4.3.0.nupkg.sha512" - }, - "System.Net.Http/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-sYg+FtILtRQuYWSIAuNOELwVuVsxVyJGWQyOnlAzhV4xvhyFnON1bAzYYC+jjRW8JREM45R0R5Dgi8MTC5sEwA==", - "path": "system.net.http/4.3.0", - "hashPath": "system.net.http.4.3.0.nupkg.sha512" - }, - "System.Net.Primitives/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-qOu+hDwFwoZPbzPvwut2qATe3ygjeQBDQj91xlsaqGFQUI5i4ZnZb8yyQuLGpDGivEPIt8EJkd1BVzVoP31FXA==", - "path": "system.net.primitives/4.3.0", - "hashPath": "system.net.primitives.4.3.0.nupkg.sha512" - }, - "System.Net.Sockets/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-m6icV6TqQOAdgt5N/9I5KNpjom/5NFtkmGseEH+AK/hny8XrytLH3+b5M8zL/Ycg3fhIocFpUMyl/wpFnVRvdw==", - "path": "system.net.sockets/4.3.0", - "hashPath": "system.net.sockets.4.3.0.nupkg.sha512" - }, - "System.Net.WebSockets.WebSocketProtocol/5.1.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-cVTT/Zw4JuUeX8H0tdWii0OMHsA5MY2PaFYOq/Hstw0jk479jZ+f8baCicWFNzJlCPWAe0uoNCELoB5eNmaMqA==", - "path": "system.net.websockets.websocketprotocol/5.1.0", - "hashPath": "system.net.websockets.websocketprotocol.5.1.0.nupkg.sha512" - }, - "System.ObjectModel/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-bdX+80eKv9bN6K4N+d77OankKHGn6CH711a6fcOpMQu2Fckp/Ft4L/kW9WznHpyR0NRAvJutzOMHNNlBGvxQzQ==", - "path": "system.objectmodel/4.3.0", - "hashPath": "system.objectmodel.4.3.0.nupkg.sha512" - }, - "System.Reflection/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-KMiAFoW7MfJGa9nDFNcfu+FpEdiHpWgTcS2HdMpDvt9saK3y/G4GwprPyzqjFH9NTaGPQeWNHU+iDlDILj96aQ==", - "path": "system.reflection/4.3.0", - "hashPath": "system.reflection.4.3.0.nupkg.sha512" - }, - "System.Reflection.Emit/4.7.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VR4kk8XLKebQ4MZuKuIni/7oh+QGFmZW3qORd1GvBq/8026OpW501SzT/oypwiQl4TvT8ErnReh/NzY9u+C6wQ==", - "path": "system.reflection.emit/4.7.0", - "hashPath": "system.reflection.emit.4.7.0.nupkg.sha512" - }, - "System.Reflection.Emit.ILGeneration/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-59tBslAk9733NXLrUJrwNZEzbMAcu8k344OYo+wfSVygcgZ9lgBdGIzH/nrg3LYhXceynyvTc8t5/GD4Ri0/ng==", - "path": "system.reflection.emit.ilgeneration/4.3.0", - "hashPath": "system.reflection.emit.ilgeneration.4.3.0.nupkg.sha512" - }, - "System.Reflection.Emit.Lightweight/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-oadVHGSMsTmZsAF864QYN1t1QzZjIcuKU3l2S9cZOwDdDueNTrqq1yRj7koFfIGEnKpt6NjpL3rOzRhs4ryOgA==", - "path": "system.reflection.emit.lightweight/4.3.0", - "hashPath": "system.reflection.emit.lightweight.4.3.0.nupkg.sha512" - }, - "System.Reflection.Extensions/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-rJkrJD3kBI5B712aRu4DpSIiHRtr6QlfZSQsb0hYHrDCZORXCFjQfoipo2LaMUHoT9i1B7j7MnfaEKWDFmFQNQ==", - "path": "system.reflection.extensions/4.3.0", - "hashPath": "system.reflection.extensions.4.3.0.nupkg.sha512" - }, - "System.Reflection.Metadata/1.6.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-COC1aiAJjCoA5GBF+QKL2uLqEBew4JsCkQmoHKbN3TlOZKa2fKLz5CpiRQKDz0RsAOEGsVKqOD5bomsXq/4STQ==", - "path": "system.reflection.metadata/1.6.0", - "hashPath": "system.reflection.metadata.1.6.0.nupkg.sha512" - }, - "System.Reflection.Primitives/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-5RXItQz5As4xN2/YUDxdpsEkMhvw3e6aNveFXUn4Hl/udNTCNhnKp8lT9fnc3MhvGKh1baak5CovpuQUXHAlIA==", - "path": "system.reflection.primitives/4.3.0", - "hashPath": "system.reflection.primitives.4.3.0.nupkg.sha512" - }, - "System.Reflection.TypeExtensions/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-7u6ulLcZbyxB5Gq0nMkQttcdBTx57ibzw+4IOXEfR+sXYQoHvjW5LTLyNr8O22UIMrqYbchJQJnos4eooYzYJA==", - "path": "system.reflection.typeextensions/4.3.0", - "hashPath": "system.reflection.typeextensions.4.3.0.nupkg.sha512" - }, - "System.Resources.ResourceManager/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-/zrcPkkWdZmI4F92gL/TPumP98AVDu/Wxr3CSJGQQ+XN6wbRZcyfSKVoPo17ilb3iOr0cCRqJInGwNMolqhS8A==", - "path": "system.resources.resourcemanager/4.3.0", - "hashPath": "system.resources.resourcemanager.4.3.0.nupkg.sha512" - }, - "System.Runtime/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-JufQi0vPQ0xGnAczR13AUFglDyVYt4Kqnz1AZaiKZ5+GICq0/1MH/mO/eAJHt/mHW1zjKBJd7kV26SrxddAhiw==", - "path": "system.runtime/4.3.0", - "hashPath": "system.runtime.4.3.0.nupkg.sha512" - }, - "System.Runtime.Extensions/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-guW0uK0fn5fcJJ1tJVXYd7/1h5F+pea1r7FLSOz/f8vPEqbR2ZAknuRDvTQ8PzAilDveOxNjSfr0CHfIQfFk8g==", - "path": "system.runtime.extensions/4.3.0", - "hashPath": "system.runtime.extensions.4.3.0.nupkg.sha512" - }, - "System.Runtime.Handles/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-OKiSUN7DmTWeYb3l51A7EYaeNMnvxwE249YtZz7yooT4gOZhmTjIn48KgSsw2k2lYdLgTKNJw/ZIfSElwDRVgg==", - "path": "system.runtime.handles/4.3.0", - "hashPath": "system.runtime.handles.4.3.0.nupkg.sha512" - }, - "System.Runtime.InteropServices/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-uv1ynXqiMK8mp1GM3jDqPCFN66eJ5w5XNomaK2XD+TuCroNTLFGeZ+WCmBMcBDyTFKou3P6cR6J/QsaqDp7fGQ==", - "path": "system.runtime.interopservices/4.3.0", - "hashPath": "system.runtime.interopservices.4.3.0.nupkg.sha512" - }, - "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-cbz4YJMqRDR7oLeMRbdYv7mYzc++17lNhScCX0goO2XpGWdvAt60CGN+FHdePUEHCe/Jy9jUlvNAiNdM+7jsOw==", - "path": "system.runtime.interopservices.runtimeinformation/4.3.0", - "hashPath": "system.runtime.interopservices.runtimeinformation.4.3.0.nupkg.sha512" - }, - "System.Runtime.Numerics/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-yMH+MfdzHjy17l2KESnPiF2dwq7T+xLnSJar7slyimAkUh/gTrS9/UQOtv7xarskJ2/XDSNvfLGOBQPjL7PaHQ==", - "path": "system.runtime.numerics/4.3.0", - "hashPath": "system.runtime.numerics.4.3.0.nupkg.sha512" - }, - "System.Security.Cryptography.Algorithms/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-W1kd2Y8mYSCgc3ULTAZ0hOP2dSdG5YauTb1089T0/kRcN2MpSAW1izOFROrJgxSlMn3ArsgHXagigyi+ibhevg==", - "path": "system.security.cryptography.algorithms/4.3.0", - "hashPath": "system.security.cryptography.algorithms.4.3.0.nupkg.sha512" - }, - "System.Security.Cryptography.Cng/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-03idZOqFlsKRL4W+LuCpJ6dBYDUWReug6lZjBa3uJWnk5sPCUXckocevTaUA8iT/MFSrY/2HXkOt753xQ/cf8g==", - "path": "system.security.cryptography.cng/4.3.0", - "hashPath": "system.security.cryptography.cng.4.3.0.nupkg.sha512" - }, - "System.Security.Cryptography.Csp/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-X4s/FCkEUnRGnwR3aSfVIkldBmtURMhmexALNTwpjklzxWU7yjMk7GHLKOZTNkgnWnE0q7+BCf9N2LVRWxewaA==", - "path": "system.security.cryptography.csp/4.3.0", - "hashPath": "system.security.cryptography.csp.4.3.0.nupkg.sha512" - }, - "System.Security.Cryptography.Encoding/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-1DEWjZZly9ae9C79vFwqaO5kaOlI5q+3/55ohmq/7dpDyDfc8lYe7YVxJUZ5MF/NtbkRjwFRo14yM4OEo9EmDw==", - "path": "system.security.cryptography.encoding/4.3.0", - "hashPath": "system.security.cryptography.encoding.4.3.0.nupkg.sha512" - }, - "System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-h4CEgOgv5PKVF/HwaHzJRiVboL2THYCou97zpmhjghx5frc7fIvlkY1jL+lnIQyChrJDMNEXS6r7byGif8Cy4w==", - "path": "system.security.cryptography.openssl/4.3.0", - "hashPath": "system.security.cryptography.openssl.4.3.0.nupkg.sha512" - }, - "System.Security.Cryptography.Primitives/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-7bDIyVFNL/xKeFHjhobUAQqSpJq9YTOpbEs6mR233Et01STBMXNAc/V+BM6dwYGc95gVh/Zf+iVXWzj3mE8DWg==", - "path": "system.security.cryptography.primitives/4.3.0", - "hashPath": "system.security.cryptography.primitives.4.3.0.nupkg.sha512" - }, - "System.Security.Cryptography.X509Certificates/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-t2Tmu6Y2NtJ2um0RtcuhP7ZdNNxXEgUm2JeoA/0NvlMjAhKCnM1NX07TDl3244mVp3QU6LPEhT3HTtH1uF7IYw==", - "path": "system.security.cryptography.x509certificates/4.3.0", - "hashPath": "system.security.cryptography.x509certificates.4.3.0.nupkg.sha512" - }, - "System.Text.Encoding/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-BiIg+KWaSDOITze6jGQynxg64naAPtqGHBwDrLaCtixsa5bKiR8dpPOHA7ge3C0JJQizJE+sfkz1wV+BAKAYZw==", - "path": "system.text.encoding/4.3.0", - "hashPath": "system.text.encoding.4.3.0.nupkg.sha512" - }, - "System.Text.Encoding.Extensions/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-YVMK0Bt/A43RmwizJoZ22ei2nmrhobgeiYwFzC4YAN+nue8RF6djXDMog0UCn+brerQoYVyaS+ghy9P/MUVcmw==", - "path": "system.text.encoding.extensions/4.3.0", - "hashPath": "system.text.encoding.extensions.4.3.0.nupkg.sha512" - }, - "System.Text.Encodings.Web/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ==", - "path": "system.text.encodings.web/8.0.0", - "hashPath": "system.text.encodings.web.8.0.0.nupkg.sha512" - }, - "System.Text.RegularExpressions/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-RpT2DA+L660cBt1FssIE9CAGpLFdFPuheB7pLpKpn6ZXNby7jDERe8Ua/Ne2xGiwLVG2JOqziiaVCGDon5sKFA==", - "path": "system.text.regularexpressions/4.3.0", - "hashPath": "system.text.regularexpressions.4.3.0.nupkg.sha512" - }, - "System.Threading/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VkUS0kOBcUf3Wwm0TSbrevDDZ6BlM+b/HRiapRFWjM5O0NS0LviG0glKmFK+hhPDd1XFeSdU1GmlLhb2CoVpIw==", - "path": "system.threading/4.3.0", - "hashPath": "system.threading.4.3.0.nupkg.sha512" - }, - "System.Threading.Channels/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-CMaFr7v+57RW7uZfZkPExsPB6ljwzhjACWW1gfU35Y56rk72B/Wu+sTqxVmGSk4SFUlPc3cjeKND0zktziyjBA==", - "path": "system.threading.channels/8.0.0", - "hashPath": "system.threading.channels.8.0.0.nupkg.sha512" - }, - "System.Threading.RateLimiting/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-7mu9v0QDv66ar3DpGSZHg9NuNcxDaaAcnMULuZlaTpP9+hwXhrxNGsF5GmLkSHxFdb5bBc1TzeujsRgTrPWi+Q==", - "path": "system.threading.ratelimiting/8.0.0", - "hashPath": "system.threading.ratelimiting.8.0.0.nupkg.sha512" - }, - "System.Threading.Tasks/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-LbSxKEdOUhVe8BezB/9uOGGppt+nZf6e1VFyw6v3DN6lqitm0OSn2uXMOdtP0M3W4iMcqcivm2J6UgqiwwnXiA==", - "path": "system.threading.tasks/4.3.0", - "hashPath": "system.threading.tasks.4.3.0.nupkg.sha512" - }, - "System.Threading.Tasks.Extensions/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-npvJkVKl5rKXrtl1Kkm6OhOUaYGEiF9wFbppFRWSMoApKzt2PiPHT2Bb8a5sAWxprvdOAtvaARS9QYMznEUtug==", - "path": "system.threading.tasks.extensions/4.3.0", - "hashPath": "system.threading.tasks.extensions.4.3.0.nupkg.sha512" - }, - "System.Threading.Timer/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-Z6YfyYTCg7lOZjJzBjONJTFKGN9/NIYKSxhU5GRd+DTwHSZyvWp1xuI5aR+dLg+ayyC5Xv57KiY4oJ0tMO89fQ==", - "path": "system.threading.timer/4.3.0", - "hashPath": "system.threading.timer.4.3.0.nupkg.sha512" - }, - "System.Xml.ReaderWriter/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-GrprA+Z0RUXaR4N7/eW71j1rgMnEnEVlgii49GZyAjTH7uliMnrOU3HNFBr6fEDBCJCIdlVNq9hHbaDR621XBA==", - "path": "system.xml.readerwriter/4.3.0", - "hashPath": "system.xml.readerwriter.4.3.0.nupkg.sha512" - }, - "System.Xml.XDocument/4.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-5zJ0XDxAIg8iy+t4aMnQAu0MqVbqyvfoUVl1yDV61xdo3Vth45oA2FoY4pPkxYAH5f8ixpmTqXeEIya95x0aCQ==", - "path": "system.xml.xdocument/4.3.0", - "hashPath": "system.xml.xdocument.4.3.0.nupkg.sha512" - }, - "xunit/2.5.3": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VxYDiWSwrLxOJ3UEN+ZPrBybB0SFShQ1E6PjT65VdoKCJhorgerFznThjSwawRH/WAip73YnucDVsE8WRj/8KQ==", - "path": "xunit/2.5.3", - "hashPath": "xunit.2.5.3.nupkg.sha512" - }, - "xunit.abstractions/2.0.3": { - "type": "package", - "serviceable": true, - "sha512": "sha512-pot1I4YOxlWjIb5jmwvvQNbTrZ3lJQ+jUGkGjWE3hEFM0l5gOnBWS+H3qsex68s5cO52g+44vpGzhAt+42vwKg==", - "path": "xunit.abstractions/2.0.3", - "hashPath": "xunit.abstractions.2.0.3.nupkg.sha512" - }, - "xunit.analyzers/1.4.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-7ljnTJfFjz5zK+Jf0h2dd2QOSO6UmFizXsojv/x4QX7TU5vEgtKZPk9RvpkiuUqg2bddtNZufBoKQalsi7djfA==", - "path": "xunit.analyzers/1.4.0", - "hashPath": "xunit.analyzers.1.4.0.nupkg.sha512" - }, - "xunit.assert/2.5.3": { - "type": "package", - "serviceable": true, - "sha512": "sha512-MK3HiBckO3vdxEdUxXZyyRPsBNPsC/nz6y1gj/UZIZkjMnsVQyZPU8yxS/3cjTchYcqskt/nqUOS5wmD8JezdQ==", - "path": "xunit.assert/2.5.3", - "hashPath": "xunit.assert.2.5.3.nupkg.sha512" - }, - "xunit.core/2.5.3": { - "type": "package", - "serviceable": true, - "sha512": "sha512-FE8yEEUkoMLd6kOHDXm/QYfX/dYzwc0c+Q4MQon6VGRwFuy6UVGwK/CFA5LEea+ZBEmcco7AEl2q78VjsA0j/w==", - "path": "xunit.core/2.5.3", - "hashPath": "xunit.core.2.5.3.nupkg.sha512" - }, - "xunit.extensibility.core/2.5.3": { - "type": "package", - "serviceable": true, - "sha512": "sha512-IjAQlPeZWXP89pl1EuOG9991GH1qgAL0rQfkmX2UV+PDenbYb7oBnQopL9ujE6YaXxgaQazp7lFjsDyyxD6Mtw==", - "path": "xunit.extensibility.core/2.5.3", - "hashPath": "xunit.extensibility.core.2.5.3.nupkg.sha512" - }, - "xunit.extensibility.execution/2.5.3": { - "type": "package", - "serviceable": true, - "sha512": "sha512-w9eGCHl+gJj1GzZSf0VTzYPp/gv4fiUDkr+yR7/Wv9/ucO2CHltGg2TnyySLFjzekkjuxVJZUE+tZyDNzryJFw==", - "path": "xunit.extensibility.execution/2.5.3", - "hashPath": "xunit.extensibility.execution.2.5.3.nupkg.sha512" - }, - "xunit.runner.visualstudio/2.5.3": { - "type": "package", - "serviceable": true, - "sha512": "sha512-HFFL6O+QLEOfs555SqHii48ovVa4CqGYanY+B32BjLpPptdE+wEJmCFNXlLHdEOD5LYeayb9EroaUpydGpcybg==", - "path": "xunit.runner.visualstudio/2.5.3", - "hashPath": "xunit.runner.visualstudio.2.5.3.nupkg.sha512" - }, - "IM_API/1.0.0": { - "type": "project", - "serviceable": false, - "sha512": "" - } - } +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v8.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v8.0": { + "IMTest/1.0.0": { + "dependencies": { + "IM_API": "1.0.0", + "Microsoft.EntityFrameworkCore.InMemory": "8.0.22", + "Microsoft.NET.Test.Sdk": "17.8.0", + "Moq": "4.20.72", + "coverlet.collector": "6.0.0", + "xunit": "2.5.3", + "xunit.runner.visualstudio": "2.5.3" + }, + "runtime": { + "IMTest.dll": {} + } + }, + "AutoMapper/12.0.1": { + "dependencies": { + "Microsoft.CSharp": "4.7.0" + }, + "runtime": { + "lib/netstandard2.1/AutoMapper.dll": { + "assemblyVersion": "12.0.0.0", + "fileVersion": "12.0.1.0" + } + } + }, + "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.0": { + "dependencies": { + "AutoMapper": "12.0.1", + "Microsoft.Extensions.Options": "10.0.2" + }, + "runtime": { + "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll": { + "assemblyVersion": "12.0.0.0", + "fileVersion": "12.0.0.0" + } + } + }, + "Castle.Core/5.1.1": { + "dependencies": { + "System.Diagnostics.EventLog": "6.0.0" + }, + "runtime": { + "lib/net6.0/Castle.Core.dll": { + "assemblyVersion": "5.0.0.0", + "fileVersion": "5.1.1.0" + } + } + }, + "coverlet.collector/6.0.0": {}, + "MassTransit/8.5.5": { + "dependencies": { + "MassTransit.Abstractions": "8.5.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "Microsoft.Extensions.Diagnostics.HealthChecks": "8.0.0", + "Microsoft.Extensions.Hosting.Abstractions": "8.0.1", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2" + }, + "runtime": { + "lib/net8.0/MassTransit.dll": { + "assemblyVersion": "8.5.5.0", + "fileVersion": "8.5.5.0" + } + } + }, + "MassTransit.Abstractions/8.5.5": { + "runtime": { + "lib/net8.0/MassTransit.Abstractions.dll": { + "assemblyVersion": "8.5.5.0", + "fileVersion": "8.5.5.0" + } + } + }, + "MassTransit.RabbitMQ/8.5.5": { + "dependencies": { + "MassTransit": "8.5.5", + "RabbitMQ.Client": "7.1.2" + }, + "runtime": { + "lib/net8.0/MassTransit.RabbitMqTransport.dll": { + "assemblyVersion": "8.5.5.0", + "fileVersion": "8.5.5.0" + } + } + }, + "Microsoft.AspNetCore.Authentication.Abstractions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2" + } + }, + "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.21": { + "dependencies": { + "Microsoft.IdentityModel.Protocols.OpenIdConnect": "7.1.2" + }, + "runtime": { + "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { + "assemblyVersion": "8.0.21.0", + "fileVersion": "8.0.2125.47515" + } + } + }, + "Microsoft.AspNetCore.Authorization/2.3.0": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2" + } + }, + "Microsoft.AspNetCore.Authorization.Policy/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Authentication.Abstractions": "2.3.0", + "Microsoft.AspNetCore.Authorization": "2.3.0" + } + }, + "Microsoft.AspNetCore.Connections.Abstractions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Features": "2.3.0", + "System.IO.Pipelines": "8.0.0" + } + }, + "Microsoft.AspNetCore.Hosting.Abstractions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Hosting.Server.Abstractions": "2.3.0", + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", + "Microsoft.Extensions.Hosting.Abstractions": "8.0.1" + } + }, + "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Features": "2.3.0", + "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" + } + }, + "Microsoft.AspNetCore.Http/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", + "Microsoft.AspNetCore.WebUtilities": "2.3.0", + "Microsoft.Extensions.ObjectPool": "8.0.11", + "Microsoft.Extensions.Options": "10.0.2", + "Microsoft.Net.Http.Headers": "2.3.0" + } + }, + "Microsoft.AspNetCore.Http.Abstractions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Features": "2.3.0", + "System.Text.Encodings.Web": "8.0.0" + } + }, + "Microsoft.AspNetCore.Http.Connections/1.2.0": { + "dependencies": { + "Microsoft.AspNetCore.Authorization.Policy": "2.3.0", + "Microsoft.AspNetCore.Hosting.Abstractions": "2.3.0", + "Microsoft.AspNetCore.Http": "2.3.0", + "Microsoft.AspNetCore.Http.Connections.Common": "1.2.0", + "Microsoft.AspNetCore.Routing": "2.3.0", + "Microsoft.AspNetCore.WebSockets": "2.3.0", + "Newtonsoft.Json": "13.0.4", + "System.Net.WebSockets.WebSocketProtocol": "5.1.0" + } + }, + "Microsoft.AspNetCore.Http.Connections.Common/1.2.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "2.3.0", + "Newtonsoft.Json": "13.0.4", + "System.Buffers": "4.6.0", + "System.IO.Pipelines": "8.0.0" + } + }, + "Microsoft.AspNetCore.Http.Extensions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", + "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0", + "Microsoft.Net.Http.Headers": "2.3.0", + "System.Buffers": "4.6.0" + } + }, + "Microsoft.AspNetCore.Http.Features/2.3.0": { + "dependencies": { + "Microsoft.Extensions.Primitives": "10.0.2" + } + }, + "Microsoft.AspNetCore.Routing/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Extensions": "2.3.0", + "Microsoft.AspNetCore.Routing.Abstractions": "2.3.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.ObjectPool": "8.0.11", + "Microsoft.Extensions.Options": "10.0.2" + } + }, + "Microsoft.AspNetCore.Routing.Abstractions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0" + } + }, + "Microsoft.AspNetCore.SignalR/1.2.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Connections": "1.2.0", + "Microsoft.AspNetCore.SignalR.Core": "1.2.0", + "Microsoft.AspNetCore.WebSockets": "2.3.0", + "System.IO.Pipelines": "8.0.0" + } + }, + "Microsoft.AspNetCore.SignalR.Common/1.2.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "2.3.0", + "Microsoft.Extensions.Options": "10.0.2", + "Newtonsoft.Json": "13.0.4", + "System.Buffers": "4.6.0" + } + }, + "Microsoft.AspNetCore.SignalR.Core/1.2.0": { + "dependencies": { + "Microsoft.AspNetCore.Authorization": "2.3.0", + "Microsoft.AspNetCore.SignalR.Common": "1.2.0", + "Microsoft.AspNetCore.SignalR.Protocols.Json": "1.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "System.IO.Pipelines": "8.0.0", + "System.Reflection.Emit": "4.7.0", + "System.Threading.Channels": "8.0.0" + } + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/1.2.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "1.2.0", + "Newtonsoft.Json": "13.0.4", + "System.IO.Pipelines": "8.0.0" + } + }, + "Microsoft.AspNetCore.WebSockets/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Extensions": "2.3.0", + "Microsoft.Extensions.Options": "10.0.2", + "System.Net.WebSockets.WebSocketProtocol": "5.1.0" + } + }, + "Microsoft.AspNetCore.WebUtilities/2.3.0": { + "dependencies": { + "Microsoft.Net.Http.Headers": "2.3.0", + "System.Text.Encodings.Web": "8.0.0" + } + }, + "Microsoft.Bcl.AsyncInterfaces/1.1.0": { + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "assemblyVersion": "1.0.0.0", + "fileVersion": "4.700.19.56404" + } + } + }, + "Microsoft.CodeCoverage/17.8.0": { + "runtime": { + "lib/netcoreapp3.1/Microsoft.VisualStudio.CodeCoverage.Shim.dll": { + "assemblyVersion": "15.0.0.0", + "fileVersion": "17.800.623.45702" + } + } + }, + "Microsoft.CSharp/4.7.0": {}, + "Microsoft.EntityFrameworkCore/8.0.22": { + "dependencies": { + "Microsoft.EntityFrameworkCore.Abstractions": "8.0.22", + "Microsoft.EntityFrameworkCore.Analyzers": "8.0.22", + "Microsoft.Extensions.Caching.Memory": "8.0.1", + "Microsoft.Extensions.Logging": "8.0.1" + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { + "assemblyVersion": "8.0.22.0", + "fileVersion": "8.0.2225.52804" + } + } + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.22": { + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "assemblyVersion": "8.0.22.0", + "fileVersion": "8.0.2225.52804" + } + } + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.22": {}, + "Microsoft.EntityFrameworkCore.InMemory/8.0.22": { + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.22" + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.InMemory.dll": { + "assemblyVersion": "8.0.22.0", + "fileVersion": "8.0.2225.52804" + } + } + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.13": { + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.22", + "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "assemblyVersion": "8.0.13.0", + "fileVersion": "8.0.1325.6604" + } + } + }, + "Microsoft.Extensions.ApiDescription.Server/6.0.5": {}, + "Microsoft.Extensions.Caching.Abstractions/10.0.2": { + "dependencies": { + "Microsoft.Extensions.Primitives": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "10.0.2", + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2", + "Microsoft.Extensions.Primitives": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1024.46610" + } + } + }, + "Microsoft.Extensions.Caching.StackExchangeRedis/10.0.2": { + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "10.0.2", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2", + "StackExchange.Redis": "2.9.32" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Caching.StackExchangeRedis.dll": { + "assemblyVersion": "10.0.2.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "dependencies": { + "Microsoft.Extensions.Primitives": "10.0.2" + } + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1024.46610" + } + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "Microsoft.Extensions.Diagnostics.Abstractions/8.0.1": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Diagnostics.Abstractions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1024.46610" + } + } + }, + "Microsoft.Extensions.Diagnostics.HealthChecks/8.0.0": { + "dependencies": { + "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions": "8.0.0", + "Microsoft.Extensions.Hosting.Abstractions": "8.0.1", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2" + } + }, + "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/8.0.0": {}, + "Microsoft.Extensions.FileProviders.Abstractions/8.0.0": { + "dependencies": { + "Microsoft.Extensions.Primitives": "10.0.2" + } + }, + "Microsoft.Extensions.Hosting.Abstractions/8.0.1": { + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "8.0.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "Microsoft.Extensions.Diagnostics.Abstractions": "8.0.1", + "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Hosting.Abstractions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1024.46610" + } + } + }, + "Microsoft.Extensions.Logging/8.0.1": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "8.0.1", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1024.46610" + } + } + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.2": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "System.Diagnostics.DiagnosticSource": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "Microsoft.Extensions.ObjectPool/8.0.11": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.ObjectPool.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1124.52116" + } + } + }, + "Microsoft.Extensions.Options/10.0.2": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "Microsoft.Extensions.Primitives": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "Microsoft.Extensions.Primitives/10.0.2": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "Microsoft.IdentityModel.Abstractions/8.14.0": { + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll": { + "assemblyVersion": "8.14.0.0", + "fileVersion": "8.14.0.60815" + } + } + }, + "Microsoft.IdentityModel.JsonWebTokens/8.14.0": { + "dependencies": { + "Microsoft.IdentityModel.Tokens": "8.14.0" + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll": { + "assemblyVersion": "8.14.0.0", + "fileVersion": "8.14.0.60815" + } + } + }, + "Microsoft.IdentityModel.Logging/8.14.0": { + "dependencies": { + "Microsoft.IdentityModel.Abstractions": "8.14.0" + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Logging.dll": { + "assemblyVersion": "8.14.0.0", + "fileVersion": "8.14.0.60815" + } + } + }, + "Microsoft.IdentityModel.Protocols/7.1.2": { + "dependencies": { + "Microsoft.IdentityModel.Logging": "8.14.0", + "Microsoft.IdentityModel.Tokens": "8.14.0" + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Protocols.dll": { + "assemblyVersion": "7.1.2.0", + "fileVersion": "7.1.2.41121" + } + } + }, + "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.1.2": { + "dependencies": { + "Microsoft.IdentityModel.Protocols": "7.1.2", + "System.IdentityModel.Tokens.Jwt": "8.14.0" + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { + "assemblyVersion": "7.1.2.0", + "fileVersion": "7.1.2.41121" + } + } + }, + "Microsoft.IdentityModel.Tokens/8.14.0": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.IdentityModel.Logging": "8.14.0" + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Tokens.dll": { + "assemblyVersion": "8.14.0.0", + "fileVersion": "8.14.0.60815" + } + } + }, + "Microsoft.Net.Http.Headers/2.3.0": { + "dependencies": { + "Microsoft.Extensions.Primitives": "10.0.2", + "System.Buffers": "4.6.0" + } + }, + "Microsoft.NET.Test.Sdk/17.8.0": { + "dependencies": { + "Microsoft.CodeCoverage": "17.8.0", + "Microsoft.TestPlatform.TestHost": "17.8.0" + } + }, + "Microsoft.NETCore.Platforms/1.1.0": {}, + "Microsoft.NETCore.Targets/1.1.0": {}, + "Microsoft.OpenApi/1.6.14": { + "runtime": { + "lib/netstandard2.0/Microsoft.OpenApi.dll": { + "assemblyVersion": "1.6.14.0", + "fileVersion": "1.6.14.0" + } + } + }, + "Microsoft.TestPlatform.ObjectModel/17.8.0": { + "dependencies": { + "NuGet.Frameworks": "6.5.0", + "System.Reflection.Metadata": "1.6.0" + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll": { + "assemblyVersion": "15.0.0.0", + "fileVersion": "17.800.23.55801" + }, + "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll": { + "assemblyVersion": "15.0.0.0", + "fileVersion": "17.800.23.55801" + }, + "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll": { + "assemblyVersion": "15.0.0.0", + "fileVersion": "17.800.23.55801" + } + }, + "resources": { + "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "zh-Hant" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.TestPlatform.TestHost/17.8.0": { + "dependencies": { + "Microsoft.TestPlatform.ObjectModel": "17.8.0", + "Newtonsoft.Json": "13.0.4" + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.TestPlatform.CommunicationUtilities.dll": { + "assemblyVersion": "15.0.0.0", + "fileVersion": "17.800.23.55801" + }, + "lib/netcoreapp3.1/Microsoft.TestPlatform.CrossPlatEngine.dll": { + "assemblyVersion": "15.0.0.0", + "fileVersion": "17.800.23.55801" + }, + "lib/netcoreapp3.1/Microsoft.TestPlatform.Utilities.dll": { + "assemblyVersion": "15.0.0.0", + "fileVersion": "17.800.23.55801" + }, + "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.Common.dll": { + "assemblyVersion": "15.0.0.0", + "fileVersion": "17.800.23.55801" + }, + "lib/netcoreapp3.1/testhost.dll": { + "assemblyVersion": "15.0.0.0", + "fileVersion": "17.800.23.55801" + } + }, + "resources": { + "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "zh-Hant" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "zh-Hant" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.22.1": {}, + "Microsoft.Win32.Primitives/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + } + }, + "Moq/4.20.72": { + "dependencies": { + "Castle.Core": "5.1.1" + }, + "runtime": { + "lib/net6.0/Moq.dll": { + "assemblyVersion": "4.20.72.0", + "fileVersion": "4.20.72.0" + } + } + }, + "MySqlConnector/2.3.5": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "10.0.2" + }, + "runtime": { + "lib/net8.0/MySqlConnector.dll": { + "assemblyVersion": "2.0.0.0", + "fileVersion": "2.3.5.0" + } + } + }, + "NETStandard.Library/1.6.1": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.Win32.Primitives": "4.3.0", + "System.AppContext": "4.3.0", + "System.Collections": "4.3.0", + "System.Collections.Concurrent": "4.3.0", + "System.Console": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tools": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Calendars": "4.3.0", + "System.IO": "4.3.0", + "System.IO.Compression": "4.3.0", + "System.IO.Compression.ZipFile": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Linq": "4.3.0", + "System.Linq.Expressions": "4.3.0", + "System.Net.Http": "4.3.0", + "System.Net.Primitives": "4.3.0", + "System.Net.Sockets": "4.3.0", + "System.ObjectModel": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.InteropServices.RuntimeInformation": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Security.Cryptography.X509Certificates": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Text.Encoding.Extensions": "4.3.0", + "System.Text.RegularExpressions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "System.Threading.Timer": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0", + "System.Xml.XDocument": "4.3.0" + } + }, + "Newtonsoft.Json/13.0.4": { + "runtime": { + "lib/net6.0/Newtonsoft.Json.dll": { + "assemblyVersion": "13.0.0.0", + "fileVersion": "13.0.4.30916" + } + } + }, + "NuGet.Frameworks/6.5.0": { + "runtime": { + "lib/netstandard2.0/NuGet.Frameworks.dll": { + "assemblyVersion": "6.5.0.154", + "fileVersion": "6.5.0.154" + } + } + }, + "Pipelines.Sockets.Unofficial/2.2.8": { + "dependencies": { + "System.IO.Pipelines": "8.0.0" + }, + "runtime": { + "lib/net5.0/Pipelines.Sockets.Unofficial.dll": { + "assemblyVersion": "1.0.0.0", + "fileVersion": "2.2.8.1080" + } + } + }, + "Pomelo.EntityFrameworkCore.MySql/8.0.3": { + "dependencies": { + "Microsoft.EntityFrameworkCore.Relational": "8.0.13", + "MySqlConnector": "2.3.5" + }, + "runtime": { + "lib/net8.0/Pomelo.EntityFrameworkCore.MySql.dll": { + "assemblyVersion": "8.0.3.0", + "fileVersion": "8.0.3.0" + } + } + }, + "RabbitMQ.Client/7.1.2": { + "dependencies": { + "System.IO.Pipelines": "8.0.0", + "System.Threading.RateLimiting": "8.0.0" + }, + "runtime": { + "lib/net8.0/RabbitMQ.Client.dll": { + "assemblyVersion": "7.0.0.0", + "fileVersion": "7.1.2.0" + } + } + }, + "RedLock.net/2.3.2": { + "dependencies": { + "Microsoft.Bcl.AsyncInterfaces": "1.1.0", + "Microsoft.Extensions.Logging": "8.0.1", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "StackExchange.Redis": "2.9.32" + }, + "runtime": { + "lib/netstandard2.0/RedLockNet.Abstractions.dll": { + "assemblyVersion": "2.3.2.0", + "fileVersion": "2.3.2.0" + }, + "lib/netstandard2.0/RedLockNet.SERedis.dll": { + "assemblyVersion": "2.3.2.0", + "fileVersion": "2.3.2.0" + } + } + }, + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, + "runtime.native.System/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + } + }, + "runtime.native.System.IO.Compression/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + } + }, + "runtime.native.System.Net.Http/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + } + }, + "runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "dependencies": { + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "4.3.0" + } + }, + "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "dependencies": { + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + } + }, + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": {}, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": {}, + "StackExchange.Redis/2.9.32": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Pipelines.Sockets.Unofficial": "2.2.8" + }, + "runtime": { + "lib/net8.0/StackExchange.Redis.dll": { + "assemblyVersion": "2.0.0.0", + "fileVersion": "2.9.32.54708" + } + } + }, + "Swashbuckle.AspNetCore/6.6.2": { + "dependencies": { + "Microsoft.Extensions.ApiDescription.Server": "6.0.5", + "Swashbuckle.AspNetCore.Swagger": "6.6.2", + "Swashbuckle.AspNetCore.SwaggerGen": "6.6.2", + "Swashbuckle.AspNetCore.SwaggerUI": "6.6.2" + } + }, + "Swashbuckle.AspNetCore.Swagger/6.6.2": { + "dependencies": { + "Microsoft.OpenApi": "1.6.14" + }, + "runtime": { + "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": { + "assemblyVersion": "6.6.2.0", + "fileVersion": "6.6.2.401" + } + } + }, + "Swashbuckle.AspNetCore.SwaggerGen/6.6.2": { + "dependencies": { + "Swashbuckle.AspNetCore.Swagger": "6.6.2" + }, + "runtime": { + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { + "assemblyVersion": "6.6.2.0", + "fileVersion": "6.6.2.401" + } + } + }, + "Swashbuckle.AspNetCore.SwaggerUI/6.6.2": { + "runtime": { + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { + "assemblyVersion": "6.6.2.0", + "fileVersion": "6.6.2.401" + } + } + }, + "System.AppContext/4.3.0": { + "dependencies": { + "System.Runtime": "4.3.0" + } + }, + "System.Buffers/4.6.0": {}, + "System.Collections/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + } + }, + "System.Collections.Concurrent/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0" + } + }, + "System.Console/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0" + } + }, + "System.Diagnostics.Debug/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + } + }, + "System.Diagnostics.DiagnosticSource/10.0.2": { + "runtime": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "System.Diagnostics.EventLog/6.0.0": {}, + "System.Diagnostics.Tools/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + } + }, + "System.Diagnostics.Tracing/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + } + }, + "System.Globalization/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + } + }, + "System.Globalization.Calendars/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Globalization": "4.3.0", + "System.Runtime": "4.3.0" + } + }, + "System.Globalization.Extensions/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.InteropServices": "4.3.0" + } + }, + "System.IdentityModel.Tokens.Jwt/8.14.0": { + "dependencies": { + "Microsoft.IdentityModel.JsonWebTokens": "8.14.0", + "Microsoft.IdentityModel.Tokens": "8.14.0" + }, + "runtime": { + "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll": { + "assemblyVersion": "8.14.0.0", + "fileVersion": "8.14.0.60815" + } + } + }, + "System.IO/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading.Tasks": "4.3.0" + } + }, + "System.IO.Compression/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Buffers": "4.6.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.IO.Compression": "4.3.0" + } + }, + "System.IO.Compression.ZipFile/4.3.0": { + "dependencies": { + "System.Buffers": "4.6.0", + "System.IO": "4.3.0", + "System.IO.Compression": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Text.Encoding": "4.3.0" + } + }, + "System.IO.FileSystem/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading.Tasks": "4.3.0" + } + }, + "System.IO.FileSystem.Primitives/4.3.0": { + "dependencies": { + "System.Runtime": "4.3.0" + } + }, + "System.IO.Pipelines/8.0.0": {}, + "System.Linq/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0" + } + }, + "System.Linq.Expressions/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Linq": "4.3.0", + "System.ObjectModel": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Emit": "4.7.0", + "System.Reflection.Emit.ILGeneration": "4.3.0", + "System.Reflection.Emit.Lightweight": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Reflection.TypeExtensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0" + } + }, + "System.Net.Http/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.DiagnosticSource": "10.0.2", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Extensions": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.Net.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.OpenSsl": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Security.Cryptography.X509Certificates": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.Net.Http": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + } + }, + "System.Net.Primitives/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0" + } + }, + "System.Net.Sockets/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.Net.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading.Tasks": "4.3.0" + } + }, + "System.Net.WebSockets.WebSocketProtocol/5.1.0": { + "runtime": { + "lib/net6.0/System.Net.WebSockets.WebSocketProtocol.dll": { + "assemblyVersion": "5.1.0.0", + "fileVersion": "5.100.24.56208" + } + } + }, + "System.ObjectModel/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0" + } + }, + "System.Reflection/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + } + }, + "System.Reflection.Emit/4.7.0": {}, + "System.Reflection.Emit.ILGeneration/4.3.0": { + "dependencies": { + "System.Reflection": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + } + }, + "System.Reflection.Emit.Lightweight/4.3.0": { + "dependencies": { + "System.Reflection": "4.3.0", + "System.Reflection.Emit.ILGeneration": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + } + }, + "System.Reflection.Extensions/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + } + }, + "System.Reflection.Metadata/1.6.0": {}, + "System.Reflection.Primitives/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + } + }, + "System.Reflection.TypeExtensions/4.3.0": { + "dependencies": { + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + } + }, + "System.Resources.ResourceManager/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Globalization": "4.3.0", + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + } + }, + "System.Runtime/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + } + }, + "System.Runtime.Extensions/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + } + }, + "System.Runtime.Handles/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + } + }, + "System.Runtime.InteropServices/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Reflection": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0" + } + }, + "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { + "dependencies": { + "System.Reflection": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Threading": "4.3.0", + "runtime.native.System": "4.3.0" + } + }, + "System.Runtime.Numerics/4.3.0": { + "dependencies": { + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0" + } + }, + "System.Security.Cryptography.Algorithms/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.Apple": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + } + }, + "System.Security.Cryptography.Cng/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0" + } + }, + "System.Security.Cryptography.Csp/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.IO": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0" + } + }, + "System.Security.Cryptography.Encoding/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.Collections.Concurrent": "4.3.0", + "System.Linq": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + } + }, + "System.Security.Cryptography.OpenSsl/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + } + }, + "System.Security.Cryptography.Primitives/4.3.0": { + "dependencies": { + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0" + } + }, + "System.Security.Cryptography.X509Certificates/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Calendars": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Cng": "4.3.0", + "System.Security.Cryptography.Csp": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.OpenSsl": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.Net.Http": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + } + }, + "System.Text.Encoding/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + } + }, + "System.Text.Encoding.Extensions/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0" + } + }, + "System.Text.Encodings.Web/8.0.0": {}, + "System.Text.RegularExpressions/4.3.0": { + "dependencies": { + "System.Runtime": "4.3.0" + } + }, + "System.Threading/4.3.0": { + "dependencies": { + "System.Runtime": "4.3.0", + "System.Threading.Tasks": "4.3.0" + } + }, + "System.Threading.Channels/8.0.0": {}, + "System.Threading.RateLimiting/8.0.0": {}, + "System.Threading.Tasks/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + } + }, + "System.Threading.Tasks.Extensions/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading.Tasks": "4.3.0" + } + }, + "System.Threading.Timer/4.3.0": { + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + } + }, + "System.Xml.ReaderWriter/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Text.Encoding.Extensions": "4.3.0", + "System.Text.RegularExpressions": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "System.Threading.Tasks.Extensions": "4.3.0" + } + }, + "System.Xml.XDocument/4.3.0": { + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tools": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0" + } + }, + "xunit/2.5.3": { + "dependencies": { + "xunit.analyzers": "1.4.0", + "xunit.assert": "2.5.3", + "xunit.core": "2.5.3" + } + }, + "xunit.abstractions/2.0.3": { + "runtime": { + "lib/netstandard2.0/xunit.abstractions.dll": { + "assemblyVersion": "2.0.0.0", + "fileVersion": "2.0.0.0" + } + } + }, + "xunit.analyzers/1.4.0": {}, + "xunit.assert/2.5.3": { + "dependencies": { + "NETStandard.Library": "1.6.1" + }, + "runtime": { + "lib/netstandard1.1/xunit.assert.dll": { + "assemblyVersion": "2.5.3.0", + "fileVersion": "2.5.3.0" + } + } + }, + "xunit.core/2.5.3": { + "dependencies": { + "xunit.extensibility.core": "2.5.3", + "xunit.extensibility.execution": "2.5.3" + } + }, + "xunit.extensibility.core/2.5.3": { + "dependencies": { + "NETStandard.Library": "1.6.1", + "xunit.abstractions": "2.0.3" + }, + "runtime": { + "lib/netstandard1.1/xunit.core.dll": { + "assemblyVersion": "2.5.3.0", + "fileVersion": "2.5.3.0" + } + } + }, + "xunit.extensibility.execution/2.5.3": { + "dependencies": { + "NETStandard.Library": "1.6.1", + "xunit.extensibility.core": "2.5.3" + }, + "runtime": { + "lib/netstandard1.1/xunit.execution.dotnet.dll": { + "assemblyVersion": "2.5.3.0", + "fileVersion": "2.5.3.0" + } + } + }, + "xunit.runner.visualstudio/2.5.3": {}, + "IM_API/1.0.0": { + "dependencies": { + "AutoMapper": "12.0.1", + "AutoMapper.Extensions.Microsoft.DependencyInjection": "12.0.0", + "MassTransit.RabbitMQ": "8.5.5", + "Microsoft.AspNetCore.Authentication.JwtBearer": "8.0.21", + "Microsoft.AspNetCore.SignalR": "1.2.0", + "Microsoft.Extensions.Caching.StackExchangeRedis": "10.0.2", + "Microsoft.VisualStudio.Azure.Containers.Tools.Targets": "1.22.1", + "Newtonsoft.Json": "13.0.4", + "Pomelo.EntityFrameworkCore.MySql": "8.0.3", + "RedLock.net": "2.3.2", + "StackExchange.Redis": "2.9.32", + "Swashbuckle.AspNetCore": "6.6.2", + "System.IdentityModel.Tokens.Jwt": "8.14.0" + }, + "runtime": { + "IM_API.dll": { + "assemblyVersion": "1.0.0.0", + "fileVersion": "1.0.0.0" + } + } + } + } + }, + "libraries": { + "IMTest/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "AutoMapper/12.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-hvV62vl6Hp/WfQ24yzo3Co9+OPl8wH8hApwVtgWpiAynVJkUcs7xvehnSftawL8Pe8FrPffBRM3hwzLQqWDNjA==", + "path": "automapper/12.0.1", + "hashPath": "automapper.12.0.1.nupkg.sha512" + }, + "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XCJ4E3oKrbRl1qY9Mr+7uyC0xZj1+bqQjmQRWTiTKiVuuXTny+7YFWHi20tPjwkMukLbicN6yGlDy5PZ4wyi1w==", + "path": "automapper.extensions.microsoft.dependencyinjection/12.0.0", + "hashPath": "automapper.extensions.microsoft.dependencyinjection.12.0.0.nupkg.sha512" + }, + "Castle.Core/5.1.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-rpYtIczkzGpf+EkZgDr9CClTdemhsrwA/W5hMoPjLkRFnXzH44zDLoovXeKtmxb1ykXK9aJVODSpiJml8CTw2g==", + "path": "castle.core/5.1.1", + "hashPath": "castle.core.5.1.1.nupkg.sha512" + }, + "coverlet.collector/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-tW3lsNS+dAEII6YGUX/VMoJjBS1QvsxqJeqLaJXub08y1FSjasFPtQ4UBUsudE9PNrzLjooClMsPtY2cZLdXpQ==", + "path": "coverlet.collector/6.0.0", + "hashPath": "coverlet.collector.6.0.0.nupkg.sha512" + }, + "MassTransit/8.5.5": { + "type": "package", + "serviceable": true, + "sha512": "sha512-bSg8k5q+rP1s+dIGXLLbctqDGdIkfDjdxwNWtCUH7xNCN9ZuM7mqSPQPIFgaYIi34e81m4FqAqo4CAHuWPkhRA==", + "path": "masstransit/8.5.5", + "hashPath": "masstransit.8.5.5.nupkg.sha512" + }, + "MassTransit.Abstractions/8.5.5": { + "type": "package", + "serviceable": true, + "sha512": "sha512-0mn2Ay17dD6z5tgSLjbVRlldSbL9iowzFEfVgVfBXVG5ttz9dSWeR4TrdD6pqH93GWXp4CvSmF8i1HqxLX7DZw==", + "path": "masstransit.abstractions/8.5.5", + "hashPath": "masstransit.abstractions.8.5.5.nupkg.sha512" + }, + "MassTransit.RabbitMQ/8.5.5": { + "type": "package", + "serviceable": true, + "sha512": "sha512-UxWn4o90YVMF9PBkJeoskOFPneh6YtnI1fLJHtvZiSAG0eoiRrWPGa+6FQCvjkQ/ljCKfjzok2eGZc/vmNZ01A==", + "path": "masstransit.rabbitmq/8.5.5", + "hashPath": "masstransit.rabbitmq.8.5.5.nupkg.sha512" + }, + "Microsoft.AspNetCore.Authentication.Abstractions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ve6uvLwKNRkfnO/QeN9M8eUJ49lCnWv/6/9p6iTEuiI6Rtsz+myaBAjdMzLuTViQY032xbTF5AdZF5BJzJJyXQ==", + "path": "microsoft.aspnetcore.authentication.abstractions/2.3.0", + "hashPath": "microsoft.aspnetcore.authentication.abstractions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.21": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ZuUpJ4DvmVArmTlyGGg+b9IdKgd8Kw0SmEzhjy4dQw8R6rxfNqCXfGvGm3ld7xlrgthJFou/le9tadsSyjFLuw==", + "path": "microsoft.aspnetcore.authentication.jwtbearer/8.0.21", + "hashPath": "microsoft.aspnetcore.authentication.jwtbearer.8.0.21.nupkg.sha512" + }, + "Microsoft.AspNetCore.Authorization/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-2/aBgLqBXva/+w8pzRNY8ET43Gi+dr1gv/7ySfbsh23lTK6IAgID5MGUEa1hreNIF+0XpW4tX7QwVe70+YvaPg==", + "path": "microsoft.aspnetcore.authorization/2.3.0", + "hashPath": "microsoft.aspnetcore.authorization.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Authorization.Policy/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-vn31uQ1dA1MIV2WNNDOOOm88V5KgR9esfi0LyQ6eVaGq2h0Yw+R29f5A6qUNJt+RccS3qkYayylAy9tP1wV+7Q==", + "path": "microsoft.aspnetcore.authorization.policy/2.3.0", + "hashPath": "microsoft.aspnetcore.authorization.policy.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Connections.Abstractions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ULFSa+/L+WiAHVlIFHyg0OmHChU9Hx+K+xnt0hbIU5XmT1EGy0pNDx23QAzDtAy9jxQrTG6MX0MdvMeU4D4c7w==", + "path": "microsoft.aspnetcore.connections.abstractions/2.3.0", + "hashPath": "microsoft.aspnetcore.connections.abstractions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Hosting.Abstractions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-4ivq53W2k6Nj4eez9wc81ytfGj6HR1NaZJCpOrvghJo9zHuQF57PLhPoQH5ItyCpHXnrN/y7yJDUm+TGYzrx0w==", + "path": "microsoft.aspnetcore.hosting.abstractions/2.3.0", + "hashPath": "microsoft.aspnetcore.hosting.abstractions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-F5iHx7odAbFKBV1DNPDkFFcVmD5Tk7rk+tYm3LMQxHEFFdjlg5QcYb5XhHAefl5YaaPeG6ad+/ck8kSG3/D6kw==", + "path": "microsoft.aspnetcore.hosting.server.abstractions/2.3.0", + "hashPath": "microsoft.aspnetcore.hosting.server.abstractions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-I9azEG2tZ4DDHAFgv+N38e6Yhttvf+QjE2j2UYyCACE7Swm5/0uoihCMWZ87oOZYeqiEFSxbsfpT71OYHe2tpw==", + "path": "microsoft.aspnetcore.http/2.3.0", + "hashPath": "microsoft.aspnetcore.http.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Abstractions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-39r9PPrjA6s0blyFv5qarckjNkaHRA5B+3b53ybuGGNTXEj1/DStQJ4NWjFL6QTRQpL9zt7nDyKxZdJOlcnq+Q==", + "path": "microsoft.aspnetcore.http.abstractions/2.3.0", + "hashPath": "microsoft.aspnetcore.http.abstractions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections/1.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VYMCOLvdT0y3O9lk4jUuIs8+re7u5+i+ka6ZZ6fIzSJ94c/JeMnAOOg39EB2i4crPXvLoiSdzKWlNPJgTbCZ2g==", + "path": "microsoft.aspnetcore.http.connections/1.2.0", + "hashPath": "microsoft.aspnetcore.http.connections.1.2.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections.Common/1.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-yUA7eg6kv7Wbz5TCW4PqS5/kYE5VxUIEDvoxjw4p1RwS2LGm84F9fBtM0mD6wrRfiv1NUyJ7WBjn3PWd/ccO+w==", + "path": "microsoft.aspnetcore.http.connections.common/1.2.0", + "hashPath": "microsoft.aspnetcore.http.connections.common.1.2.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Extensions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-EY2u/wFF5jsYwGXXswfQWrSsFPmiXsniAlUWo3rv/MGYf99ZFsENDnZcQP6W3c/+xQmQXq0NauzQ7jyy+o1LDQ==", + "path": "microsoft.aspnetcore.http.extensions/2.3.0", + "hashPath": "microsoft.aspnetcore.http.extensions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Features/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-f10WUgcsKqrkmnz6gt8HeZ7kyKjYN30PO7cSic1lPtH7paPtnQqXPOveul/SIPI43PhRD4trttg4ywnrEmmJpA==", + "path": "microsoft.aspnetcore.http.features/2.3.0", + "hashPath": "microsoft.aspnetcore.http.features.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Routing/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-no5/VC0CAQuT4PK4rp2K5fqwuSfzr2mdB6m1XNfWVhHnwzpRQzKAu9flChiT/JTLKwVI0Vq2MSmSW2OFMDCNXg==", + "path": "microsoft.aspnetcore.routing/2.3.0", + "hashPath": "microsoft.aspnetcore.routing.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Routing.Abstractions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ZkFpUrSmp6TocxZLBEX3IBv5dPMbQuMs6L/BPl0WRfn32UVOtNYJQ0bLdh3cL9LMV0rmTW/5R0w8CBYxr0AOUw==", + "path": "microsoft.aspnetcore.routing.abstractions/2.3.0", + "hashPath": "microsoft.aspnetcore.routing.abstractions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR/1.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XoCcsOTdtBiXyOzUtpbCl0IaqMOYjnr+6dbDxvUCFn7NR6bu7CwrlQ3oQzkltTwDZH0b6VEUN9wZPOYvPHi+Lg==", + "path": "microsoft.aspnetcore.signalr/1.2.0", + "hashPath": "microsoft.aspnetcore.signalr.1.2.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Common/1.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FZeXIaoWqe145ZPdfiptwkw/sP1BX1UD0706GNBwwoaFiKsNbLEl/Trhj2+idlp3qbX1BEwkQesKNxkopVY5Xg==", + "path": "microsoft.aspnetcore.signalr.common/1.2.0", + "hashPath": "microsoft.aspnetcore.signalr.common.1.2.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Core/1.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-eZTuMkSDw1uwjhLhJbMxgW2Cuyxfn0Kfqm8OBmqvuzE9Qc/VVzh8dGrAp2F9Pk7XKTDHmlhc5RTLcPPAZ5PSZw==", + "path": "microsoft.aspnetcore.signalr.core/1.2.0", + "hashPath": "microsoft.aspnetcore.signalr.core.1.2.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/1.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-hNvZ7kQxp5Udqd/IFWViU35bUJvi4xnNzjkF28HRvrdrS7JNsIASTvMqArP6HLQUc3j6nlUOeShNhVmgI1wzHg==", + "path": "microsoft.aspnetcore.signalr.protocols.json/1.2.0", + "hashPath": "microsoft.aspnetcore.signalr.protocols.json.1.2.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.WebSockets/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-+T4zpnVPkIjvvkyhTH3WBJlTfqmTBRozvnMudAUDvcb4e+NrWf52q8BXh52rkCrBgX6Cudf6F/UhZwTowyBtKg==", + "path": "microsoft.aspnetcore.websockets/2.3.0", + "hashPath": "microsoft.aspnetcore.websockets.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.WebUtilities/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-trbXdWzoAEUVd0PE2yTopkz4kjZaAIA7xUWekd5uBw+7xE8Do/YOVTeb9d9koPTlbtZT539aESJjSLSqD8eYrQ==", + "path": "microsoft.aspnetcore.webutilities/2.3.0", + "hashPath": "microsoft.aspnetcore.webutilities.2.3.0.nupkg.sha512" + }, + "Microsoft.Bcl.AsyncInterfaces/1.1.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1Am6l4Vpn3/K32daEqZI+FFr96OlZkgwK2LcT3pZ2zWubR5zTPW3/FkO1Rat9kb7oQOa4rxgl9LJHc5tspCWfg==", + "path": "microsoft.bcl.asyncinterfaces/1.1.0", + "hashPath": "microsoft.bcl.asyncinterfaces.1.1.0.nupkg.sha512" + }, + "Microsoft.CodeCoverage/17.8.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-KC8SXWbGIdoFVdlxKk9WHccm0llm9HypcHMLUUFabRiTS3SO2fQXNZfdiF3qkEdTJhbRrxhdRxjL4jbtwPq4Ew==", + "path": "microsoft.codecoverage/17.8.0", + "hashPath": "microsoft.codecoverage.17.8.0.nupkg.sha512" + }, + "Microsoft.CSharp/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==", + "path": "microsoft.csharp/4.7.0", + "hashPath": "microsoft.csharp.4.7.0.nupkg.sha512" + }, + "Microsoft.EntityFrameworkCore/8.0.22": { + "type": "package", + "serviceable": true, + "sha512": "sha512-nKGrD/WOO1d7qtXvghFAHre5Fk3ubw41pDFM0hbFxVIkMFxl4B0ug2LylMHOq+dgAceUeo3bx0qMh6/Jl9NbrA==", + "path": "microsoft.entityframeworkcore/8.0.22", + "hashPath": "microsoft.entityframeworkcore.8.0.22.nupkg.sha512" + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.22": { + "type": "package", + "serviceable": true, + "sha512": "sha512-p4Fw9mpJnZHmkdOGCbBqbvuyj1LnnFxNon8snMKIQ0MGSB+j9f6ffWDfvGRaOS/9ikqQG9RMOTzZk52q1G23ng==", + "path": "microsoft.entityframeworkcore.abstractions/8.0.22", + "hashPath": "microsoft.entityframeworkcore.abstractions.8.0.22.nupkg.sha512" + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.22": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lrSWwr+X+Fn5XGOwOYFQJWx+u+eameqhMjQ1mohXUE2N7LauucZAtcH/j+yXwQntosKoXU1TOoggTL/zmYqbHQ==", + "path": "microsoft.entityframeworkcore.analyzers/8.0.22", + "hashPath": "microsoft.entityframeworkcore.analyzers.8.0.22.nupkg.sha512" + }, + "Microsoft.EntityFrameworkCore.InMemory/8.0.22": { + "type": "package", + "serviceable": true, + "sha512": "sha512-dPbM/KLIh/AdHRjh/OhrzhAiHRLT0JBC5KSvAZ71eg42+QwF9aEuBfTzqr+GJE6DK9CLhqh9jXAqRKFojPki5g==", + "path": "microsoft.entityframeworkcore.inmemory/8.0.22", + "hashPath": "microsoft.entityframeworkcore.inmemory.8.0.22.nupkg.sha512" + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.13": { + "type": "package", + "serviceable": true, + "sha512": "sha512-uQR2iTar+6ZEjEHTwgH0/7ySSRme4R9sDiupfG3w/eBub3365fPw/MjhsuOMQkdq9YzLM7veH4Qt/K9OqL26Qg==", + "path": "microsoft.entityframeworkcore.relational/8.0.13", + "hashPath": "microsoft.entityframeworkcore.relational.8.0.13.nupkg.sha512" + }, + "Microsoft.Extensions.ApiDescription.Server/6.0.5": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Ckb5EDBUNJdFWyajfXzUIMRkhf52fHZOQuuZg/oiu8y7zDCVwD0iHhew6MnThjHmevanpxL3f5ci2TtHQEN6bw==", + "path": "microsoft.extensions.apidescription.server/6.0.5", + "hashPath": "microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512" + }, + "Microsoft.Extensions.Caching.Abstractions/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-WIRPDa/qoKHmJhTAPCO/zLu9kRLQ2Fd6HD5tzgdXJ3xGEVXDHP6FvakKJjynwKrVDld8H4G4tcbW53wuC/wxMQ==", + "path": "microsoft.extensions.caching.abstractions/10.0.2", + "hashPath": "microsoft.extensions.caching.abstractions.10.0.2.nupkg.sha512" + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==", + "path": "microsoft.extensions.caching.memory/8.0.1", + "hashPath": "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512" + }, + "Microsoft.Extensions.Caching.StackExchangeRedis/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-WEx0VM6KVv4Bf6lwe4WQTd4EixIfw38ZU3u/7zMe+uC5fOyiANu8Os/qyiqv2iEsIJb296tbd2E2BTaWIha3Vg==", + "path": "microsoft.extensions.caching.stackexchangeredis/10.0.2", + "hashPath": "microsoft.extensions.caching.stackexchangeredis.10.0.2.nupkg.sha512" + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==", + "path": "microsoft.extensions.configuration.abstractions/8.0.0", + "hashPath": "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==", + "path": "microsoft.extensions.dependencyinjection/8.0.1", + "hashPath": "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-zOIurr59+kUf9vNcsUkCvKWZv+fPosUZXURZesYkJCvl0EzTc9F7maAO4Cd2WEV7ZJJ0AZrFQvuH6Npph9wdBw==", + "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.2", + "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.2.nupkg.sha512" + }, + "Microsoft.Extensions.Diagnostics.Abstractions/8.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-elH2vmwNmsXuKmUeMQ4YW9ldXiF+gSGDgg1vORksob5POnpaI6caj1Hu8zaYbEuibhqCoWg0YRWDazBY3zjBfg==", + "path": "microsoft.extensions.diagnostics.abstractions/8.0.1", + "hashPath": "microsoft.extensions.diagnostics.abstractions.8.0.1.nupkg.sha512" + }, + "Microsoft.Extensions.Diagnostics.HealthChecks/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-P9SoBuVZhJPpALZmSq72aQEb9ryP67EdquaCZGXGrrcASTNHYdrUhnpgSwIipgM5oVC+dKpRXg5zxobmF9xr5g==", + "path": "microsoft.extensions.diagnostics.healthchecks/8.0.0", + "hashPath": "microsoft.extensions.diagnostics.healthchecks.8.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-AT2qqos3IgI09ok36Qag9T8bb6kHJ3uT9Q5ki6CySybFsK6/9JbvQAgAHf1pVEjST0/N4JaFaCbm40R5edffwg==", + "path": "microsoft.extensions.diagnostics.healthchecks.abstractions/8.0.0", + "hashPath": "microsoft.extensions.diagnostics.healthchecks.abstractions.8.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.FileProviders.Abstractions/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ZbaMlhJlpisjuWbvXr4LdAst/1XxH3vZ6A0BsgTphZ2L4PGuxRLz7Jr/S7mkAAnOn78Vu0fKhEgNF5JO3zfjqQ==", + "path": "microsoft.extensions.fileproviders.abstractions/8.0.0", + "hashPath": "microsoft.extensions.fileproviders.abstractions.8.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Hosting.Abstractions/8.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-nHwq9aPBdBPYXPti6wYEEfgXddfBrYC+CQLn+qISiwQq5tpfaqDZSKOJNxoe9rfQxGf1c+2wC/qWFe1QYJPYqw==", + "path": "microsoft.extensions.hosting.abstractions/8.0.1", + "hashPath": "microsoft.extensions.hosting.abstractions.8.0.1.nupkg.sha512" + }, + "Microsoft.Extensions.Logging/8.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==", + "path": "microsoft.extensions.logging/8.0.1", + "hashPath": "microsoft.extensions.logging.8.0.1.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-RZkez/JjpnO+MZ6efKkSynN6ZztLpw3WbxNzjLCPBd97wWj1S9ZYPWi0nmT4kWBRa6atHsdM1ydGkUr8GudyDQ==", + "path": "microsoft.extensions.logging.abstractions/10.0.2", + "hashPath": "microsoft.extensions.logging.abstractions.10.0.2.nupkg.sha512" + }, + "Microsoft.Extensions.ObjectPool/8.0.11": { + "type": "package", + "serviceable": true, + "sha512": "sha512-6ApKcHNJigXBfZa6XlDQ8feJpq7SG1ogZXg6M4FiNzgd6irs3LUAzo0Pfn4F2ZI9liGnH1XIBR/OtSbZmJAV5w==", + "path": "microsoft.extensions.objectpool/8.0.11", + "hashPath": "microsoft.extensions.objectpool.8.0.11.nupkg.sha512" + }, + "Microsoft.Extensions.Options/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1De2LJjmxdqopI5AYC5dIhoZQ79AR5ayywxNF1rXrXFtKQfbQOV9+n/IsZBa7qWlr0MqoGpW8+OY2v/57udZOA==", + "path": "microsoft.extensions.options/10.0.2", + "hashPath": "microsoft.extensions.options.10.0.2.nupkg.sha512" + }, + "Microsoft.Extensions.Primitives/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-QmSiO+oLBEooGgB3i0GRXyeYRDHjllqt3k365jwfZlYWhvSHA3UL2NEVV5m8aZa041eIlblo6KMI5txvTMpTwA==", + "path": "microsoft.extensions.primitives/10.0.2", + "hashPath": "microsoft.extensions.primitives.10.0.2.nupkg.sha512" + }, + "Microsoft.IdentityModel.Abstractions/8.14.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-iwbCpSjD3ehfTwBhtSNEtKPK0ICun6ov7Ibx6ISNA9bfwIyzI2Siwyi9eJFCJBwxowK9xcA1mj+jBWiigeqgcQ==", + "path": "microsoft.identitymodel.abstractions/8.14.0", + "hashPath": "microsoft.identitymodel.abstractions.8.14.0.nupkg.sha512" + }, + "Microsoft.IdentityModel.JsonWebTokens/8.14.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-4jOpiA4THdtpLyMdAb24dtj7+6GmvhOhxf5XHLYWmPKF8ApEnApal1UnJsKO4HxUWRXDA6C4WQVfYyqsRhpNpQ==", + "path": "microsoft.identitymodel.jsonwebtokens/8.14.0", + "hashPath": "microsoft.identitymodel.jsonwebtokens.8.14.0.nupkg.sha512" + }, + "Microsoft.IdentityModel.Logging/8.14.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-eqqnemdW38CKZEHS6diA50BV94QICozDZEvSrsvN3SJXUFwVB9gy+/oz76gldP7nZliA16IglXjXTCTdmU/Ejg==", + "path": "microsoft.identitymodel.logging/8.14.0", + "hashPath": "microsoft.identitymodel.logging.8.14.0.nupkg.sha512" + }, + "Microsoft.IdentityModel.Protocols/7.1.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-SydLwMRFx6EHPWJ+N6+MVaoArN1Htt92b935O3RUWPY1yUF63zEjvd3lBu79eWdZUwedP8TN2I5V9T3nackvIQ==", + "path": "microsoft.identitymodel.protocols/7.1.2", + "hashPath": "microsoft.identitymodel.protocols.7.1.2.nupkg.sha512" + }, + "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.1.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-6lHQoLXhnMQ42mGrfDkzbIOR3rzKM1W1tgTeMPLgLCqwwGw0d96xFi/UiX/fYsu7d6cD5MJiL3+4HuI8VU+sVQ==", + "path": "microsoft.identitymodel.protocols.openidconnect/7.1.2", + "hashPath": "microsoft.identitymodel.protocols.openidconnect.7.1.2.nupkg.sha512" + }, + "Microsoft.IdentityModel.Tokens/8.14.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lKIZiBiGd36k02TCdMHp1KlNWisyIvQxcYJvIkz7P4gSQ9zi8dgh6S5Grj8NNG7HWYIPfQymGyoZ6JB5d1Lo1g==", + "path": "microsoft.identitymodel.tokens/8.14.0", + "hashPath": "microsoft.identitymodel.tokens.8.14.0.nupkg.sha512" + }, + "Microsoft.Net.Http.Headers/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-/M0wVg6tJUOHutWD3BMOUVZAioJVXe0tCpFiovzv0T9T12TBf4MnaHP0efO8TCr1a6O9RZgQeZ9Gdark8L9XdA==", + "path": "microsoft.net.http.headers/2.3.0", + "hashPath": "microsoft.net.http.headers.2.3.0.nupkg.sha512" + }, + "Microsoft.NET.Test.Sdk/17.8.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-BmTYGbD/YuDHmApIENdoyN1jCk0Rj1fJB0+B/fVekyTdVidr91IlzhqzytiUgaEAzL1ZJcYCme0MeBMYvJVzvw==", + "path": "microsoft.net.test.sdk/17.8.0", + "hashPath": "microsoft.net.test.sdk.17.8.0.nupkg.sha512" + }, + "Microsoft.NETCore.Platforms/1.1.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-kz0PEW2lhqygehI/d6XsPCQzD7ff7gUJaVGPVETX611eadGsA3A877GdSlU0LRVMCTH/+P3o2iDTak+S08V2+A==", + "path": "microsoft.netcore.platforms/1.1.0", + "hashPath": "microsoft.netcore.platforms.1.1.0.nupkg.sha512" + }, + "Microsoft.NETCore.Targets/1.1.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-aOZA3BWfz9RXjpzt0sRJJMjAscAUm3Hoa4UWAfceV9UTYxgwZ1lZt5nO2myFf+/jetYQo4uTP7zS8sJY67BBxg==", + "path": "microsoft.netcore.targets/1.1.0", + "hashPath": "microsoft.netcore.targets.1.1.0.nupkg.sha512" + }, + "Microsoft.OpenApi/1.6.14": { + "type": "package", + "serviceable": true, + "sha512": "sha512-tTaBT8qjk3xINfESyOPE2rIellPvB7qpVqiWiyA/lACVvz+xOGiXhFUfohcx82NLbi5avzLW0lx+s6oAqQijfw==", + "path": "microsoft.openapi/1.6.14", + "hashPath": "microsoft.openapi.1.6.14.nupkg.sha512" + }, + "Microsoft.TestPlatform.ObjectModel/17.8.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-AYy6vlpGMfz5kOFq99L93RGbqftW/8eQTqjT9iGXW6s9MRP3UdtY8idJ8rJcjeSja8A18IhIro5YnH3uv1nz4g==", + "path": "microsoft.testplatform.objectmodel/17.8.0", + "hashPath": "microsoft.testplatform.objectmodel.17.8.0.nupkg.sha512" + }, + "Microsoft.TestPlatform.TestHost/17.8.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-9ivcl/7SGRmOT0YYrHQGohWiT5YCpkmy/UEzldfVisLm6QxbLaK3FAJqZXI34rnRLmqqDCeMQxKINwmKwAPiDw==", + "path": "microsoft.testplatform.testhost/17.8.0", + "hashPath": "microsoft.testplatform.testhost.17.8.0.nupkg.sha512" + }, + "Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.22.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-EfYANhAWqmWKoLwN6bxoiPZSOfJSO9lzX+UrU6GVhLhPub1Hd+5f0zL0/tggIA6mRz6Ebw2xCNcIsM4k+7NPng==", + "path": "microsoft.visualstudio.azure.containers.tools.targets/1.22.1", + "hashPath": "microsoft.visualstudio.azure.containers.tools.targets.1.22.1.nupkg.sha512" + }, + "Microsoft.Win32.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-9ZQKCWxH7Ijp9BfahvL2Zyf1cJIk8XYLF6Yjzr2yi0b2cOut/HQ31qf1ThHAgCc3WiZMdnWcfJCgN82/0UunxA==", + "path": "microsoft.win32.primitives/4.3.0", + "hashPath": "microsoft.win32.primitives.4.3.0.nupkg.sha512" + }, + "Moq/4.20.72": { + "type": "package", + "serviceable": true, + "sha512": "sha512-EA55cjyNn8eTNWrgrdZJH5QLFp2L43oxl1tlkoYUKIE9pRwL784OWiTXeCV5ApS+AMYEAlt7Fo03A2XfouvHmQ==", + "path": "moq/4.20.72", + "hashPath": "moq.4.20.72.nupkg.sha512" + }, + "MySqlConnector/2.3.5": { + "type": "package", + "serviceable": true, + "sha512": "sha512-AmEfUPkFl+Ev6jJ8Dhns3CYHBfD12RHzGYWuLt6DfG6/af6YvOMyPz74ZPPjBYQGRJkumD2Z48Kqm8s5DJuhLA==", + "path": "mysqlconnector/2.3.5", + "hashPath": "mysqlconnector.2.3.5.nupkg.sha512" + }, + "NETStandard.Library/1.6.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-WcSp3+vP+yHNgS8EV5J7pZ9IRpeDuARBPN28by8zqff1wJQXm26PVU8L3/fYLBJVU7BtDyqNVWq2KlCVvSSR4A==", + "path": "netstandard.library/1.6.1", + "hashPath": "netstandard.library.1.6.1.nupkg.sha512" + }, + "Newtonsoft.Json/13.0.4": { + "type": "package", + "serviceable": true, + "sha512": "sha512-pdgNNMai3zv51W5aq268sujXUyx7SNdE2bj1wZcWjAQrKMFZV260lbqYop1d2GM67JI1huLRwxo9ZqnfF/lC6A==", + "path": "newtonsoft.json/13.0.4", + "hashPath": "newtonsoft.json.13.0.4.nupkg.sha512" + }, + "NuGet.Frameworks/6.5.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-QWINE2x3MbTODsWT1Gh71GaGb5icBz4chS8VYvTgsBnsi8esgN6wtHhydd7fvToWECYGq7T4cgBBDiKD/363fg==", + "path": "nuget.frameworks/6.5.0", + "hashPath": "nuget.frameworks.6.5.0.nupkg.sha512" + }, + "Pipelines.Sockets.Unofficial/2.2.8": { + "type": "package", + "serviceable": true, + "sha512": "sha512-zG2FApP5zxSx6OcdJQLbZDk2AVlN2BNQD6MorwIfV6gVj0RRxWPEp2LXAxqDGZqeNV1Zp0BNPcNaey/GXmTdvQ==", + "path": "pipelines.sockets.unofficial/2.2.8", + "hashPath": "pipelines.sockets.unofficial.2.2.8.nupkg.sha512" + }, + "Pomelo.EntityFrameworkCore.MySql/8.0.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-gOHP6v/nFp5V/FgHqv9mZocGqCLGofihEX9dTbLhiXX3H7SJHmGX70GIPUpiqLT+1jIfDxg1PZh9MTUKuk7Kig==", + "path": "pomelo.entityframeworkcore.mysql/8.0.3", + "hashPath": "pomelo.entityframeworkcore.mysql.8.0.3.nupkg.sha512" + }, + "RabbitMQ.Client/7.1.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-y3c6ulgULScWthHw5PLM1ShHRLhxg0vCtzX/hh61gRgNecL3ZC3WoBW2HYHoXOVRqTl99Br9E7CZEytGZEsCyQ==", + "path": "rabbitmq.client/7.1.2", + "hashPath": "rabbitmq.client.7.1.2.nupkg.sha512" + }, + "RedLock.net/2.3.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-jlrALAArm4dCE292U3EtRoMnVKJ9M6sunbZn/oG5OuzlGtTpusXBfvDrnGWbgGDlWV027f5E9H5CiVnPxiq8+g==", + "path": "redlock.net/2.3.2", + "hashPath": "redlock.net.2.3.2.nupkg.sha512" + }, + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-HdSSp5MnJSsg08KMfZThpuLPJpPwE5hBXvHwoKWosyHHfe8Mh5WKT0ylEOf6yNzX6Ngjxe4Whkafh5q7Ymac4Q==", + "path": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "hashPath": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" + }, + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-+yH1a49wJMy8Zt4yx5RhJrxO/DBDByAiCzNwiETI+1S4mPdCu0OY4djdciC7Vssk0l22wQaDLrXxXkp+3+7bVA==", + "path": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "hashPath": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" + }, + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-c3YNH1GQJbfIPJeCnr4avseugSqPrxwIqzthYyZDN6EuOyNOzq+y2KSUfRcXauya1sF4foESTgwM5e1A8arAKw==", + "path": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "hashPath": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" + }, + "runtime.native.System/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-c/qWt2LieNZIj1jGnVNsE2Kl23Ya2aSTBuXMD6V7k9KWr6l16Tqdwq+hJScEpWER9753NWC8h96PaVNY5Ld7Jw==", + "path": "runtime.native.system/4.3.0", + "hashPath": "runtime.native.system.4.3.0.nupkg.sha512" + }, + "runtime.native.System.IO.Compression/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-INBPonS5QPEgn7naufQFXJEp3zX6L4bwHgJ/ZH78aBTpeNfQMtf7C6VrAFhlq2xxWBveIOWyFzQjJ8XzHMhdOQ==", + "path": "runtime.native.system.io.compression/4.3.0", + "hashPath": "runtime.native.system.io.compression.4.3.0.nupkg.sha512" + }, + "runtime.native.System.Net.Http/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ZVuZJqnnegJhd2k/PtAbbIcZ3aZeITq3sj06oKfMBSfphW3HDmk/t4ObvbOk/JA/swGR0LNqMksAh/f7gpTROg==", + "path": "runtime.native.system.net.http/4.3.0", + "hashPath": "runtime.native.system.net.http.4.3.0.nupkg.sha512" + }, + "runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-DloMk88juo0OuOWr56QG7MNchmafTLYWvABy36izkrLI5VledI0rq28KGs1i9wbpeT9NPQrx/wTf8U2vazqQ3Q==", + "path": "runtime.native.system.security.cryptography.apple/4.3.0", + "hashPath": "runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512" + }, + "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-NS1U+700m4KFRHR5o4vo9DSlTmlCKu/u7dtE5sUHVIPB+xpXxYQvgBgA6wEIeCz6Yfn0Z52/72WYsToCEPJnrw==", + "path": "runtime.native.system.security.cryptography.openssl/4.3.0", + "hashPath": "runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" + }, + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-b3pthNgxxFcD+Pc0WSEoC0+md3MyhRS6aCEeenvNE3Fdw1HyJ18ZhRFVJJzIeR/O/jpxPboB805Ho0T3Ul7w8A==", + "path": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "hashPath": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" + }, + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-KeLz4HClKf+nFS7p/6Fi/CqyLXh81FpiGzcmuS8DGi9lUqSnZ6Es23/gv2O+1XVGfrbNmviF7CckBpavkBoIFQ==", + "path": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "hashPath": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-kVXCuMTrTlxq4XOOMAysuNwsXWpYeboGddNGpIgNSZmv1b6r/s/DPk0fYMB7Q5Qo4bY68o48jt4T4y5BVecbCQ==", + "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple/4.3.0", + "hashPath": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512" + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-X7IdhILzr4ROXd8mI1BUCQMSHSQwelUlBjF1JyTKCjXaOGn2fB4EKBxQbCK2VjO3WaWIdlXZL3W6TiIVnrhX4g==", + "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "hashPath": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" + }, + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-nyFNiCk/r+VOiIqreLix8yN+q3Wga9+SE8BCgkf+2BwEKiNx6DyvFjCgkfV743/grxv8jHJ8gUK4XEQw7yzRYg==", + "path": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "hashPath": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" + }, + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ytoewC6wGorL7KoCAvRfsgoJPJbNq+64k2SqW6JcOAebWsFUvCCYgfzQMrnpvPiEl4OrblUlhF2ji+Q1+SVLrQ==", + "path": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "hashPath": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" + }, + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-I8bKw2I8k58Wx7fMKQJn2R8lamboCAiHfHeV/pS65ScKWMMI0+wJkLYlEKvgW1D/XvSl/221clBoR2q9QNNM7A==", + "path": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "hashPath": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" + }, + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VB5cn/7OzUfzdnC8tqAIMQciVLiq2epm2NrAm1E9OjNRyG4lVhfR61SMcLizejzQP8R8Uf/0l5qOIbUEi+RdEg==", + "path": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "hashPath": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512" + }, + "StackExchange.Redis/2.9.32": { + "type": "package", + "serviceable": true, + "sha512": "sha512-j5Rjbf7gWz5izrn0UWQy9RlQY4cQDPkwJfVqATnVsOa/+zzJrps12LOgacMsDl/Vit2f01cDiDkG/Rst8v2iGw==", + "path": "stackexchange.redis/2.9.32", + "hashPath": "stackexchange.redis.2.9.32.nupkg.sha512" + }, + "Swashbuckle.AspNetCore/6.6.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-+NB4UYVYN6AhDSjW0IJAd1AGD8V33gemFNLPaxKTtPkHB+HaKAKf9MGAEUPivEWvqeQfcKIw8lJaHq6LHljRuw==", + "path": "swashbuckle.aspnetcore/6.6.2", + "hashPath": "swashbuckle.aspnetcore.6.6.2.nupkg.sha512" + }, + "Swashbuckle.AspNetCore.Swagger/6.6.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ovgPTSYX83UrQUWiS5vzDcJ8TEX1MAxBgDFMK45rC24MorHEPQlZAHlaXj/yth4Zf6xcktpUgTEBvffRQVwDKA==", + "path": "swashbuckle.aspnetcore.swagger/6.6.2", + "hashPath": "swashbuckle.aspnetcore.swagger.6.6.2.nupkg.sha512" + }, + "Swashbuckle.AspNetCore.SwaggerGen/6.6.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-zv4ikn4AT1VYuOsDCpktLq4QDq08e7Utzbir86M5/ZkRaLXbCPF11E1/vTmOiDzRTl0zTZINQU2qLKwTcHgfrA==", + "path": "swashbuckle.aspnetcore.swaggergen/6.6.2", + "hashPath": "swashbuckle.aspnetcore.swaggergen.6.6.2.nupkg.sha512" + }, + "Swashbuckle.AspNetCore.SwaggerUI/6.6.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-mBBb+/8Hm2Q3Wygag+hu2jj69tZW5psuv0vMRXY07Wy+Rrj40vRP8ZTbKBhs91r45/HXT4aY4z0iSBYx1h6JvA==", + "path": "swashbuckle.aspnetcore.swaggerui/6.6.2", + "hashPath": "swashbuckle.aspnetcore.swaggerui.6.6.2.nupkg.sha512" + }, + "System.AppContext/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-fKC+rmaLfeIzUhagxY17Q9siv/sPrjjKcfNg1Ic8IlQkZLipo8ljcaZQu4VtI4Jqbzjc2VTjzGLF6WmsRXAEgA==", + "path": "system.appcontext/4.3.0", + "hashPath": "system.appcontext.4.3.0.nupkg.sha512" + }, + "System.Buffers/4.6.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lN6tZi7Q46zFzAbRYXTIvfXcyvQQgxnY7Xm6C6xQ9784dEL1amjM6S6Iw4ZpsvesAKnRVsM4scrDQaDqSClkjA==", + "path": "system.buffers/4.6.0", + "hashPath": "system.buffers.4.6.0.nupkg.sha512" + }, + "System.Collections/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-3Dcj85/TBdVpL5Zr+gEEBUuFe2icOnLalmEh9hfck1PTYbbyWuZgh4fmm2ysCLTrqLQw6t3TgTyJ+VLp+Qb+Lw==", + "path": "system.collections/4.3.0", + "hashPath": "system.collections.4.3.0.nupkg.sha512" + }, + "System.Collections.Concurrent/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ztl69Xp0Y/UXCL+3v3tEU+lIy+bvjKNUmopn1wep/a291pVPK7dxBd6T7WnlQqRog+d1a/hSsgRsmFnIBKTPLQ==", + "path": "system.collections.concurrent/4.3.0", + "hashPath": "system.collections.concurrent.4.3.0.nupkg.sha512" + }, + "System.Console/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-DHDrIxiqk1h03m6khKWV2X8p/uvN79rgSqpilL6uzpmSfxfU5ng8VcPtW4qsDsQDHiTv6IPV9TmD5M/vElPNLg==", + "path": "system.console/4.3.0", + "hashPath": "system.console.4.3.0.nupkg.sha512" + }, + "System.Diagnostics.Debug/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ZUhUOdqmaG5Jk3Xdb8xi5kIyQYAA4PnTNlHx1mu9ZY3qv4ELIdKbnL/akbGaKi2RnNUWaZsAs31rvzFdewTj2g==", + "path": "system.diagnostics.debug/4.3.0", + "hashPath": "system.diagnostics.debug.4.3.0.nupkg.sha512" + }, + "System.Diagnostics.DiagnosticSource/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lYWBy8fKkJHaRcOuw30d67PrtVjR5754sz5Wl76s8P+vJ9FSThh9b7LIcTSODx1LY7NB3Srvg+JMnzd67qNZOw==", + "path": "system.diagnostics.diagnosticsource/10.0.2", + "hashPath": "system.diagnostics.diagnosticsource.10.0.2.nupkg.sha512" + }, + "System.Diagnostics.EventLog/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lcyUiXTsETK2ALsZrX+nWuHSIQeazhqPphLfaRxzdGaG93+0kELqpgEHtwWOlQe7+jSFnKwaCAgL4kjeZCQJnw==", + "path": "system.diagnostics.eventlog/6.0.0", + "hashPath": "system.diagnostics.eventlog.6.0.0.nupkg.sha512" + }, + "System.Diagnostics.Tools/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-UUvkJfSYJMM6x527dJg2VyWPSRqIVB0Z7dbjHst1zmwTXz5CcXSYJFWRpuigfbO1Lf7yfZiIaEUesfnl/g5EyA==", + "path": "system.diagnostics.tools/4.3.0", + "hashPath": "system.diagnostics.tools.4.3.0.nupkg.sha512" + }, + "System.Diagnostics.Tracing/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-rswfv0f/Cqkh78rA5S8eN8Neocz234+emGCtTF3lxPY96F+mmmUen6tbn0glN6PMvlKQb9bPAY5e9u7fgPTkKw==", + "path": "system.diagnostics.tracing/4.3.0", + "hashPath": "system.diagnostics.tracing.4.3.0.nupkg.sha512" + }, + "System.Globalization/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-kYdVd2f2PAdFGblzFswE4hkNANJBKRmsfa2X5LG2AcWE1c7/4t0pYae1L8vfZ5xvE2nK/R9JprtToA61OSHWIg==", + "path": "system.globalization/4.3.0", + "hashPath": "system.globalization.4.3.0.nupkg.sha512" + }, + "System.Globalization.Calendars/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-GUlBtdOWT4LTV3I+9/PJW+56AnnChTaOqqTLFtdmype/L500M2LIyXgmtd9X2P2VOkmJd5c67H5SaC2QcL1bFA==", + "path": "system.globalization.calendars/4.3.0", + "hashPath": "system.globalization.calendars.4.3.0.nupkg.sha512" + }, + "System.Globalization.Extensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FhKmdR6MPG+pxow6wGtNAWdZh7noIOpdD5TwQ3CprzgIE1bBBoim0vbR1+AWsWjQmU7zXHgQo4TWSP6lCeiWcQ==", + "path": "system.globalization.extensions/4.3.0", + "hashPath": "system.globalization.extensions.4.3.0.nupkg.sha512" + }, + "System.IdentityModel.Tokens.Jwt/8.14.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-EYGgN/S+HK7S6F3GaaPLFAfK0UzMrkXFyWCvXpQWFYmZln3dqtbyIO7VuTM/iIIPMzkelg8ZLlBPvMhxj6nOAA==", + "path": "system.identitymodel.tokens.jwt/8.14.0", + "hashPath": "system.identitymodel.tokens.jwt.8.14.0.nupkg.sha512" + }, + "System.IO/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-3qjaHvxQPDpSOYICjUoTsmoq5u6QJAFRUITgeT/4gqkF1bajbSmb1kwSxEA8AHlofqgcKJcM8udgieRNhaJ5Cg==", + "path": "system.io/4.3.0", + "hashPath": "system.io.4.3.0.nupkg.sha512" + }, + "System.IO.Compression/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-YHndyoiV90iu4iKG115ibkhrG+S3jBm8Ap9OwoUAzO5oPDAWcr0SFwQFm0HjM8WkEZWo0zvLTyLmbvTkW1bXgg==", + "path": "system.io.compression/4.3.0", + "hashPath": "system.io.compression.4.3.0.nupkg.sha512" + }, + "System.IO.Compression.ZipFile/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-G4HwjEsgIwy3JFBduZ9quBkAu+eUwjIdJleuNSgmUojbH6O3mlvEIme+GHx/cLlTAPcrnnL7GqvB9pTlWRfhOg==", + "path": "system.io.compression.zipfile/4.3.0", + "hashPath": "system.io.compression.zipfile.4.3.0.nupkg.sha512" + }, + "System.IO.FileSystem/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-3wEMARTnuio+ulnvi+hkRNROYwa1kylvYahhcLk4HSoVdl+xxTFVeVlYOfLwrDPImGls0mDqbMhrza8qnWPTdA==", + "path": "system.io.filesystem/4.3.0", + "hashPath": "system.io.filesystem.4.3.0.nupkg.sha512" + }, + "System.IO.FileSystem.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-6QOb2XFLch7bEc4lIcJH49nJN2HV+OC3fHDgsLVsBVBk3Y4hFAnOBGzJ2lUu7CyDDFo9IBWkSsnbkT6IBwwiMw==", + "path": "system.io.filesystem.primitives/4.3.0", + "hashPath": "system.io.filesystem.primitives.4.3.0.nupkg.sha512" + }, + "System.IO.Pipelines/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FHNOatmUq0sqJOkTx+UF/9YK1f180cnW5FVqnQMvYUN0elp6wFzbtPSiqbo1/ru8ICp43JM1i7kKkk6GsNGHlA==", + "path": "system.io.pipelines/8.0.0", + "hashPath": "system.io.pipelines.8.0.0.nupkg.sha512" + }, + "System.Linq/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-5DbqIUpsDp0dFftytzuMmc0oeMdQwjcP/EWxsksIz/w1TcFRkZ3yKKz0PqiYFMmEwPSWw+qNVqD7PJ889JzHbw==", + "path": "system.linq/4.3.0", + "hashPath": "system.linq.4.3.0.nupkg.sha512" + }, + "System.Linq.Expressions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-PGKkrd2khG4CnlyJwxwwaWWiSiWFNBGlgXvJpeO0xCXrZ89ODrQ6tjEWS/kOqZ8GwEOUATtKtzp1eRgmYNfclg==", + "path": "system.linq.expressions/4.3.0", + "hashPath": "system.linq.expressions.4.3.0.nupkg.sha512" + }, + "System.Net.Http/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-sYg+FtILtRQuYWSIAuNOELwVuVsxVyJGWQyOnlAzhV4xvhyFnON1bAzYYC+jjRW8JREM45R0R5Dgi8MTC5sEwA==", + "path": "system.net.http/4.3.0", + "hashPath": "system.net.http.4.3.0.nupkg.sha512" + }, + "System.Net.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-qOu+hDwFwoZPbzPvwut2qATe3ygjeQBDQj91xlsaqGFQUI5i4ZnZb8yyQuLGpDGivEPIt8EJkd1BVzVoP31FXA==", + "path": "system.net.primitives/4.3.0", + "hashPath": "system.net.primitives.4.3.0.nupkg.sha512" + }, + "System.Net.Sockets/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-m6icV6TqQOAdgt5N/9I5KNpjom/5NFtkmGseEH+AK/hny8XrytLH3+b5M8zL/Ycg3fhIocFpUMyl/wpFnVRvdw==", + "path": "system.net.sockets/4.3.0", + "hashPath": "system.net.sockets.4.3.0.nupkg.sha512" + }, + "System.Net.WebSockets.WebSocketProtocol/5.1.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-cVTT/Zw4JuUeX8H0tdWii0OMHsA5MY2PaFYOq/Hstw0jk479jZ+f8baCicWFNzJlCPWAe0uoNCELoB5eNmaMqA==", + "path": "system.net.websockets.websocketprotocol/5.1.0", + "hashPath": "system.net.websockets.websocketprotocol.5.1.0.nupkg.sha512" + }, + "System.ObjectModel/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-bdX+80eKv9bN6K4N+d77OankKHGn6CH711a6fcOpMQu2Fckp/Ft4L/kW9WznHpyR0NRAvJutzOMHNNlBGvxQzQ==", + "path": "system.objectmodel/4.3.0", + "hashPath": "system.objectmodel.4.3.0.nupkg.sha512" + }, + "System.Reflection/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-KMiAFoW7MfJGa9nDFNcfu+FpEdiHpWgTcS2HdMpDvt9saK3y/G4GwprPyzqjFH9NTaGPQeWNHU+iDlDILj96aQ==", + "path": "system.reflection/4.3.0", + "hashPath": "system.reflection.4.3.0.nupkg.sha512" + }, + "System.Reflection.Emit/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VR4kk8XLKebQ4MZuKuIni/7oh+QGFmZW3qORd1GvBq/8026OpW501SzT/oypwiQl4TvT8ErnReh/NzY9u+C6wQ==", + "path": "system.reflection.emit/4.7.0", + "hashPath": "system.reflection.emit.4.7.0.nupkg.sha512" + }, + "System.Reflection.Emit.ILGeneration/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-59tBslAk9733NXLrUJrwNZEzbMAcu8k344OYo+wfSVygcgZ9lgBdGIzH/nrg3LYhXceynyvTc8t5/GD4Ri0/ng==", + "path": "system.reflection.emit.ilgeneration/4.3.0", + "hashPath": "system.reflection.emit.ilgeneration.4.3.0.nupkg.sha512" + }, + "System.Reflection.Emit.Lightweight/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-oadVHGSMsTmZsAF864QYN1t1QzZjIcuKU3l2S9cZOwDdDueNTrqq1yRj7koFfIGEnKpt6NjpL3rOzRhs4ryOgA==", + "path": "system.reflection.emit.lightweight/4.3.0", + "hashPath": "system.reflection.emit.lightweight.4.3.0.nupkg.sha512" + }, + "System.Reflection.Extensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-rJkrJD3kBI5B712aRu4DpSIiHRtr6QlfZSQsb0hYHrDCZORXCFjQfoipo2LaMUHoT9i1B7j7MnfaEKWDFmFQNQ==", + "path": "system.reflection.extensions/4.3.0", + "hashPath": "system.reflection.extensions.4.3.0.nupkg.sha512" + }, + "System.Reflection.Metadata/1.6.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-COC1aiAJjCoA5GBF+QKL2uLqEBew4JsCkQmoHKbN3TlOZKa2fKLz5CpiRQKDz0RsAOEGsVKqOD5bomsXq/4STQ==", + "path": "system.reflection.metadata/1.6.0", + "hashPath": "system.reflection.metadata.1.6.0.nupkg.sha512" + }, + "System.Reflection.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-5RXItQz5As4xN2/YUDxdpsEkMhvw3e6aNveFXUn4Hl/udNTCNhnKp8lT9fnc3MhvGKh1baak5CovpuQUXHAlIA==", + "path": "system.reflection.primitives/4.3.0", + "hashPath": "system.reflection.primitives.4.3.0.nupkg.sha512" + }, + "System.Reflection.TypeExtensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7u6ulLcZbyxB5Gq0nMkQttcdBTx57ibzw+4IOXEfR+sXYQoHvjW5LTLyNr8O22UIMrqYbchJQJnos4eooYzYJA==", + "path": "system.reflection.typeextensions/4.3.0", + "hashPath": "system.reflection.typeextensions.4.3.0.nupkg.sha512" + }, + "System.Resources.ResourceManager/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-/zrcPkkWdZmI4F92gL/TPumP98AVDu/Wxr3CSJGQQ+XN6wbRZcyfSKVoPo17ilb3iOr0cCRqJInGwNMolqhS8A==", + "path": "system.resources.resourcemanager/4.3.0", + "hashPath": "system.resources.resourcemanager.4.3.0.nupkg.sha512" + }, + "System.Runtime/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-JufQi0vPQ0xGnAczR13AUFglDyVYt4Kqnz1AZaiKZ5+GICq0/1MH/mO/eAJHt/mHW1zjKBJd7kV26SrxddAhiw==", + "path": "system.runtime/4.3.0", + "hashPath": "system.runtime.4.3.0.nupkg.sha512" + }, + "System.Runtime.Extensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-guW0uK0fn5fcJJ1tJVXYd7/1h5F+pea1r7FLSOz/f8vPEqbR2ZAknuRDvTQ8PzAilDveOxNjSfr0CHfIQfFk8g==", + "path": "system.runtime.extensions/4.3.0", + "hashPath": "system.runtime.extensions.4.3.0.nupkg.sha512" + }, + "System.Runtime.Handles/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-OKiSUN7DmTWeYb3l51A7EYaeNMnvxwE249YtZz7yooT4gOZhmTjIn48KgSsw2k2lYdLgTKNJw/ZIfSElwDRVgg==", + "path": "system.runtime.handles/4.3.0", + "hashPath": "system.runtime.handles.4.3.0.nupkg.sha512" + }, + "System.Runtime.InteropServices/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-uv1ynXqiMK8mp1GM3jDqPCFN66eJ5w5XNomaK2XD+TuCroNTLFGeZ+WCmBMcBDyTFKou3P6cR6J/QsaqDp7fGQ==", + "path": "system.runtime.interopservices/4.3.0", + "hashPath": "system.runtime.interopservices.4.3.0.nupkg.sha512" + }, + "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-cbz4YJMqRDR7oLeMRbdYv7mYzc++17lNhScCX0goO2XpGWdvAt60CGN+FHdePUEHCe/Jy9jUlvNAiNdM+7jsOw==", + "path": "system.runtime.interopservices.runtimeinformation/4.3.0", + "hashPath": "system.runtime.interopservices.runtimeinformation.4.3.0.nupkg.sha512" + }, + "System.Runtime.Numerics/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-yMH+MfdzHjy17l2KESnPiF2dwq7T+xLnSJar7slyimAkUh/gTrS9/UQOtv7xarskJ2/XDSNvfLGOBQPjL7PaHQ==", + "path": "system.runtime.numerics/4.3.0", + "hashPath": "system.runtime.numerics.4.3.0.nupkg.sha512" + }, + "System.Security.Cryptography.Algorithms/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-W1kd2Y8mYSCgc3ULTAZ0hOP2dSdG5YauTb1089T0/kRcN2MpSAW1izOFROrJgxSlMn3ArsgHXagigyi+ibhevg==", + "path": "system.security.cryptography.algorithms/4.3.0", + "hashPath": "system.security.cryptography.algorithms.4.3.0.nupkg.sha512" + }, + "System.Security.Cryptography.Cng/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-03idZOqFlsKRL4W+LuCpJ6dBYDUWReug6lZjBa3uJWnk5sPCUXckocevTaUA8iT/MFSrY/2HXkOt753xQ/cf8g==", + "path": "system.security.cryptography.cng/4.3.0", + "hashPath": "system.security.cryptography.cng.4.3.0.nupkg.sha512" + }, + "System.Security.Cryptography.Csp/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-X4s/FCkEUnRGnwR3aSfVIkldBmtURMhmexALNTwpjklzxWU7yjMk7GHLKOZTNkgnWnE0q7+BCf9N2LVRWxewaA==", + "path": "system.security.cryptography.csp/4.3.0", + "hashPath": "system.security.cryptography.csp.4.3.0.nupkg.sha512" + }, + "System.Security.Cryptography.Encoding/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1DEWjZZly9ae9C79vFwqaO5kaOlI5q+3/55ohmq/7dpDyDfc8lYe7YVxJUZ5MF/NtbkRjwFRo14yM4OEo9EmDw==", + "path": "system.security.cryptography.encoding/4.3.0", + "hashPath": "system.security.cryptography.encoding.4.3.0.nupkg.sha512" + }, + "System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-h4CEgOgv5PKVF/HwaHzJRiVboL2THYCou97zpmhjghx5frc7fIvlkY1jL+lnIQyChrJDMNEXS6r7byGif8Cy4w==", + "path": "system.security.cryptography.openssl/4.3.0", + "hashPath": "system.security.cryptography.openssl.4.3.0.nupkg.sha512" + }, + "System.Security.Cryptography.Primitives/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7bDIyVFNL/xKeFHjhobUAQqSpJq9YTOpbEs6mR233Et01STBMXNAc/V+BM6dwYGc95gVh/Zf+iVXWzj3mE8DWg==", + "path": "system.security.cryptography.primitives/4.3.0", + "hashPath": "system.security.cryptography.primitives.4.3.0.nupkg.sha512" + }, + "System.Security.Cryptography.X509Certificates/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-t2Tmu6Y2NtJ2um0RtcuhP7ZdNNxXEgUm2JeoA/0NvlMjAhKCnM1NX07TDl3244mVp3QU6LPEhT3HTtH1uF7IYw==", + "path": "system.security.cryptography.x509certificates/4.3.0", + "hashPath": "system.security.cryptography.x509certificates.4.3.0.nupkg.sha512" + }, + "System.Text.Encoding/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-BiIg+KWaSDOITze6jGQynxg64naAPtqGHBwDrLaCtixsa5bKiR8dpPOHA7ge3C0JJQizJE+sfkz1wV+BAKAYZw==", + "path": "system.text.encoding/4.3.0", + "hashPath": "system.text.encoding.4.3.0.nupkg.sha512" + }, + "System.Text.Encoding.Extensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-YVMK0Bt/A43RmwizJoZ22ei2nmrhobgeiYwFzC4YAN+nue8RF6djXDMog0UCn+brerQoYVyaS+ghy9P/MUVcmw==", + "path": "system.text.encoding.extensions/4.3.0", + "hashPath": "system.text.encoding.extensions.4.3.0.nupkg.sha512" + }, + "System.Text.Encodings.Web/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ==", + "path": "system.text.encodings.web/8.0.0", + "hashPath": "system.text.encodings.web.8.0.0.nupkg.sha512" + }, + "System.Text.RegularExpressions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-RpT2DA+L660cBt1FssIE9CAGpLFdFPuheB7pLpKpn6ZXNby7jDERe8Ua/Ne2xGiwLVG2JOqziiaVCGDon5sKFA==", + "path": "system.text.regularexpressions/4.3.0", + "hashPath": "system.text.regularexpressions.4.3.0.nupkg.sha512" + }, + "System.Threading/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VkUS0kOBcUf3Wwm0TSbrevDDZ6BlM+b/HRiapRFWjM5O0NS0LviG0glKmFK+hhPDd1XFeSdU1GmlLhb2CoVpIw==", + "path": "system.threading/4.3.0", + "hashPath": "system.threading.4.3.0.nupkg.sha512" + }, + "System.Threading.Channels/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-CMaFr7v+57RW7uZfZkPExsPB6ljwzhjACWW1gfU35Y56rk72B/Wu+sTqxVmGSk4SFUlPc3cjeKND0zktziyjBA==", + "path": "system.threading.channels/8.0.0", + "hashPath": "system.threading.channels.8.0.0.nupkg.sha512" + }, + "System.Threading.RateLimiting/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7mu9v0QDv66ar3DpGSZHg9NuNcxDaaAcnMULuZlaTpP9+hwXhrxNGsF5GmLkSHxFdb5bBc1TzeujsRgTrPWi+Q==", + "path": "system.threading.ratelimiting/8.0.0", + "hashPath": "system.threading.ratelimiting.8.0.0.nupkg.sha512" + }, + "System.Threading.Tasks/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-LbSxKEdOUhVe8BezB/9uOGGppt+nZf6e1VFyw6v3DN6lqitm0OSn2uXMOdtP0M3W4iMcqcivm2J6UgqiwwnXiA==", + "path": "system.threading.tasks/4.3.0", + "hashPath": "system.threading.tasks.4.3.0.nupkg.sha512" + }, + "System.Threading.Tasks.Extensions/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-npvJkVKl5rKXrtl1Kkm6OhOUaYGEiF9wFbppFRWSMoApKzt2PiPHT2Bb8a5sAWxprvdOAtvaARS9QYMznEUtug==", + "path": "system.threading.tasks.extensions/4.3.0", + "hashPath": "system.threading.tasks.extensions.4.3.0.nupkg.sha512" + }, + "System.Threading.Timer/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Z6YfyYTCg7lOZjJzBjONJTFKGN9/NIYKSxhU5GRd+DTwHSZyvWp1xuI5aR+dLg+ayyC5Xv57KiY4oJ0tMO89fQ==", + "path": "system.threading.timer/4.3.0", + "hashPath": "system.threading.timer.4.3.0.nupkg.sha512" + }, + "System.Xml.ReaderWriter/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-GrprA+Z0RUXaR4N7/eW71j1rgMnEnEVlgii49GZyAjTH7uliMnrOU3HNFBr6fEDBCJCIdlVNq9hHbaDR621XBA==", + "path": "system.xml.readerwriter/4.3.0", + "hashPath": "system.xml.readerwriter.4.3.0.nupkg.sha512" + }, + "System.Xml.XDocument/4.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-5zJ0XDxAIg8iy+t4aMnQAu0MqVbqyvfoUVl1yDV61xdo3Vth45oA2FoY4pPkxYAH5f8ixpmTqXeEIya95x0aCQ==", + "path": "system.xml.xdocument/4.3.0", + "hashPath": "system.xml.xdocument.4.3.0.nupkg.sha512" + }, + "xunit/2.5.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VxYDiWSwrLxOJ3UEN+ZPrBybB0SFShQ1E6PjT65VdoKCJhorgerFznThjSwawRH/WAip73YnucDVsE8WRj/8KQ==", + "path": "xunit/2.5.3", + "hashPath": "xunit.2.5.3.nupkg.sha512" + }, + "xunit.abstractions/2.0.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-pot1I4YOxlWjIb5jmwvvQNbTrZ3lJQ+jUGkGjWE3hEFM0l5gOnBWS+H3qsex68s5cO52g+44vpGzhAt+42vwKg==", + "path": "xunit.abstractions/2.0.3", + "hashPath": "xunit.abstractions.2.0.3.nupkg.sha512" + }, + "xunit.analyzers/1.4.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7ljnTJfFjz5zK+Jf0h2dd2QOSO6UmFizXsojv/x4QX7TU5vEgtKZPk9RvpkiuUqg2bddtNZufBoKQalsi7djfA==", + "path": "xunit.analyzers/1.4.0", + "hashPath": "xunit.analyzers.1.4.0.nupkg.sha512" + }, + "xunit.assert/2.5.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MK3HiBckO3vdxEdUxXZyyRPsBNPsC/nz6y1gj/UZIZkjMnsVQyZPU8yxS/3cjTchYcqskt/nqUOS5wmD8JezdQ==", + "path": "xunit.assert/2.5.3", + "hashPath": "xunit.assert.2.5.3.nupkg.sha512" + }, + "xunit.core/2.5.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FE8yEEUkoMLd6kOHDXm/QYfX/dYzwc0c+Q4MQon6VGRwFuy6UVGwK/CFA5LEea+ZBEmcco7AEl2q78VjsA0j/w==", + "path": "xunit.core/2.5.3", + "hashPath": "xunit.core.2.5.3.nupkg.sha512" + }, + "xunit.extensibility.core/2.5.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-IjAQlPeZWXP89pl1EuOG9991GH1qgAL0rQfkmX2UV+PDenbYb7oBnQopL9ujE6YaXxgaQazp7lFjsDyyxD6Mtw==", + "path": "xunit.extensibility.core/2.5.3", + "hashPath": "xunit.extensibility.core.2.5.3.nupkg.sha512" + }, + "xunit.extensibility.execution/2.5.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-w9eGCHl+gJj1GzZSf0VTzYPp/gv4fiUDkr+yR7/Wv9/ucO2CHltGg2TnyySLFjzekkjuxVJZUE+tZyDNzryJFw==", + "path": "xunit.extensibility.execution/2.5.3", + "hashPath": "xunit.extensibility.execution.2.5.3.nupkg.sha512" + }, + "xunit.runner.visualstudio/2.5.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-HFFL6O+QLEOfs555SqHii48ovVa4CqGYanY+B32BjLpPptdE+wEJmCFNXlLHdEOD5LYeayb9EroaUpydGpcybg==", + "path": "xunit.runner.visualstudio/2.5.3", + "hashPath": "xunit.runner.visualstudio.2.5.3.nupkg.sha512" + }, + "IM_API/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + } + } } \ No newline at end of file diff --git a/backend/IMTest/bin/Debug/net8.0/IMTest.dll b/backend/IMTest/bin/Debug/net8.0/IMTest.dll index a0cda45..1b81499 100644 Binary files a/backend/IMTest/bin/Debug/net8.0/IMTest.dll and b/backend/IMTest/bin/Debug/net8.0/IMTest.dll differ diff --git a/backend/IMTest/bin/Debug/net8.0/IMTest.pdb b/backend/IMTest/bin/Debug/net8.0/IMTest.pdb index f9575cb..a5be6bb 100644 Binary files a/backend/IMTest/bin/Debug/net8.0/IMTest.pdb and b/backend/IMTest/bin/Debug/net8.0/IMTest.pdb differ diff --git a/backend/IMTest/bin/Debug/net8.0/IMTest.runtimeconfig.json b/backend/IMTest/bin/Debug/net8.0/IMTest.runtimeconfig.json index a42fa34..1698852 100644 --- a/backend/IMTest/bin/Debug/net8.0/IMTest.runtimeconfig.json +++ b/backend/IMTest/bin/Debug/net8.0/IMTest.runtimeconfig.json @@ -1,19 +1,19 @@ -{ - "runtimeOptions": { - "tfm": "net8.0", - "frameworks": [ - { - "name": "Microsoft.NETCore.App", - "version": "8.0.0" - }, - { - "name": "Microsoft.AspNetCore.App", - "version": "8.0.0" - } - ], - "configProperties": { - "System.Reflection.NullabilityInfoContext.IsSupported": true, - "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false - } - } +{ + "runtimeOptions": { + "tfm": "net8.0", + "frameworks": [ + { + "name": "Microsoft.NETCore.App", + "version": "8.0.0" + }, + { + "name": "Microsoft.AspNetCore.App", + "version": "8.0.0" + } + ], + "configProperties": { + "System.Reflection.NullabilityInfoContext.IsSupported": true, + "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false + } + } } \ No newline at end of file diff --git a/backend/IMTest/bin/Debug/net8.0/IM_API.deps.json b/backend/IMTest/bin/Debug/net8.0/IM_API.deps.json index 5086600..7a882c9 100644 --- a/backend/IMTest/bin/Debug/net8.0/IM_API.deps.json +++ b/backend/IMTest/bin/Debug/net8.0/IM_API.deps.json @@ -1,1743 +1,1743 @@ -{ - "runtimeTarget": { - "name": ".NETCoreApp,Version=v8.0", - "signature": "" - }, - "compilationOptions": {}, - "targets": { - ".NETCoreApp,Version=v8.0": { - "IM_API/1.0.0": { - "dependencies": { - "AutoMapper": "12.0.1", - "AutoMapper.Extensions.Microsoft.DependencyInjection": "12.0.0", - "MassTransit.RabbitMQ": "8.5.5", - "Microsoft.AspNetCore.Authentication.JwtBearer": "8.0.21", - "Microsoft.AspNetCore.SignalR": "1.2.0", - "Microsoft.EntityFrameworkCore.Design": "8.0.21", - "Microsoft.EntityFrameworkCore.Tools": "8.0.21", - "Microsoft.Extensions.Caching.StackExchangeRedis": "10.0.2", - "Microsoft.VisualStudio.Azure.Containers.Tools.Targets": "1.22.1", - "Newtonsoft.Json": "13.0.4", - "Pomelo.EntityFrameworkCore.MySql": "8.0.3", - "RedLock.net": "2.3.2", - "StackExchange.Redis": "2.9.32", - "Swashbuckle.AspNetCore": "6.6.2", - "System.IdentityModel.Tokens.Jwt": "8.14.0" - }, - "runtime": { - "IM_API.dll": {} - } - }, - "AutoMapper/12.0.1": { - "dependencies": { - "Microsoft.CSharp": "4.7.0" - }, - "runtime": { - "lib/netstandard2.1/AutoMapper.dll": { - "assemblyVersion": "12.0.0.0", - "fileVersion": "12.0.1.0" - } - } - }, - "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.0": { - "dependencies": { - "AutoMapper": "12.0.1", - "Microsoft.Extensions.Options": "10.0.2" - }, - "runtime": { - "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll": { - "assemblyVersion": "12.0.0.0", - "fileVersion": "12.0.0.0" - } - } - }, - "Humanizer.Core/2.14.1": { - "runtime": { - "lib/net6.0/Humanizer.dll": { - "assemblyVersion": "2.14.0.0", - "fileVersion": "2.14.1.48190" - } - } - }, - "MassTransit/8.5.5": { - "dependencies": { - "MassTransit.Abstractions": "8.5.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "Microsoft.Extensions.Diagnostics.HealthChecks": "8.0.0", - "Microsoft.Extensions.Hosting.Abstractions": "8.0.1", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2" - }, - "runtime": { - "lib/net8.0/MassTransit.dll": { - "assemblyVersion": "8.5.5.0", - "fileVersion": "8.5.5.0" - } - } - }, - "MassTransit.Abstractions/8.5.5": { - "runtime": { - "lib/net8.0/MassTransit.Abstractions.dll": { - "assemblyVersion": "8.5.5.0", - "fileVersion": "8.5.5.0" - } - } - }, - "MassTransit.RabbitMQ/8.5.5": { - "dependencies": { - "MassTransit": "8.5.5", - "RabbitMQ.Client": "7.1.2" - }, - "runtime": { - "lib/net8.0/MassTransit.RabbitMqTransport.dll": { - "assemblyVersion": "8.5.5.0", - "fileVersion": "8.5.5.0" - } - } - }, - "Microsoft.AspNetCore.Authentication.Abstractions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2" - } - }, - "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.21": { - "dependencies": { - "Microsoft.IdentityModel.Protocols.OpenIdConnect": "7.1.2" - }, - "runtime": { - "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { - "assemblyVersion": "8.0.21.0", - "fileVersion": "8.0.2125.47515" - } - } - }, - "Microsoft.AspNetCore.Authorization/2.3.0": { - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2" - } - }, - "Microsoft.AspNetCore.Authorization.Policy/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Authentication.Abstractions": "2.3.0", - "Microsoft.AspNetCore.Authorization": "2.3.0" - } - }, - "Microsoft.AspNetCore.Connections.Abstractions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Features": "2.3.0", - "System.IO.Pipelines": "8.0.0" - } - }, - "Microsoft.AspNetCore.Hosting.Abstractions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Hosting.Server.Abstractions": "2.3.0", - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", - "Microsoft.Extensions.Hosting.Abstractions": "8.0.1" - } - }, - "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Features": "2.3.0", - "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" - } - }, - "Microsoft.AspNetCore.Http/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", - "Microsoft.AspNetCore.WebUtilities": "2.3.0", - "Microsoft.Extensions.ObjectPool": "8.0.11", - "Microsoft.Extensions.Options": "10.0.2", - "Microsoft.Net.Http.Headers": "2.3.0" - } - }, - "Microsoft.AspNetCore.Http.Abstractions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Features": "2.3.0", - "System.Text.Encodings.Web": "8.0.0" - } - }, - "Microsoft.AspNetCore.Http.Connections/1.2.0": { - "dependencies": { - "Microsoft.AspNetCore.Authorization.Policy": "2.3.0", - "Microsoft.AspNetCore.Hosting.Abstractions": "2.3.0", - "Microsoft.AspNetCore.Http": "2.3.0", - "Microsoft.AspNetCore.Http.Connections.Common": "1.2.0", - "Microsoft.AspNetCore.Routing": "2.3.0", - "Microsoft.AspNetCore.WebSockets": "2.3.0", - "Newtonsoft.Json": "13.0.4", - "System.Net.WebSockets.WebSocketProtocol": "5.1.0" - } - }, - "Microsoft.AspNetCore.Http.Connections.Common/1.2.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "2.3.0", - "Newtonsoft.Json": "13.0.4", - "System.Buffers": "4.6.0", - "System.IO.Pipelines": "8.0.0" - } - }, - "Microsoft.AspNetCore.Http.Extensions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", - "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0", - "Microsoft.Net.Http.Headers": "2.3.0", - "System.Buffers": "4.6.0" - } - }, - "Microsoft.AspNetCore.Http.Features/2.3.0": { - "dependencies": { - "Microsoft.Extensions.Primitives": "10.0.2" - } - }, - "Microsoft.AspNetCore.Routing/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Extensions": "2.3.0", - "Microsoft.AspNetCore.Routing.Abstractions": "2.3.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.ObjectPool": "8.0.11", - "Microsoft.Extensions.Options": "10.0.2" - } - }, - "Microsoft.AspNetCore.Routing.Abstractions/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0" - } - }, - "Microsoft.AspNetCore.SignalR/1.2.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Connections": "1.2.0", - "Microsoft.AspNetCore.SignalR.Core": "1.2.0", - "Microsoft.AspNetCore.WebSockets": "2.3.0", - "System.IO.Pipelines": "8.0.0" - } - }, - "Microsoft.AspNetCore.SignalR.Common/1.2.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "2.3.0", - "Microsoft.Extensions.Options": "10.0.2", - "Newtonsoft.Json": "13.0.4", - "System.Buffers": "4.6.0" - } - }, - "Microsoft.AspNetCore.SignalR.Core/1.2.0": { - "dependencies": { - "Microsoft.AspNetCore.Authorization": "2.3.0", - "Microsoft.AspNetCore.SignalR.Common": "1.2.0", - "Microsoft.AspNetCore.SignalR.Protocols.Json": "1.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "System.IO.Pipelines": "8.0.0", - "System.Reflection.Emit": "4.7.0", - "System.Threading.Channels": "8.0.0" - } - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/1.2.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "1.2.0", - "Newtonsoft.Json": "13.0.4", - "System.IO.Pipelines": "8.0.0" - } - }, - "Microsoft.AspNetCore.WebSockets/2.3.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Extensions": "2.3.0", - "Microsoft.Extensions.Options": "10.0.2", - "System.Net.WebSockets.WebSocketProtocol": "5.1.0" - } - }, - "Microsoft.AspNetCore.WebUtilities/2.3.0": { - "dependencies": { - "Microsoft.Net.Http.Headers": "2.3.0", - "System.Text.Encodings.Web": "8.0.0" - } - }, - "Microsoft.Bcl.AsyncInterfaces/6.0.0": { - "runtime": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "assemblyVersion": "6.0.0.0", - "fileVersion": "6.0.21.52210" - } - } - }, - "Microsoft.CodeAnalysis.Analyzers/3.3.3": {}, - "Microsoft.CodeAnalysis.Common/4.5.0": { - "dependencies": { - "Microsoft.CodeAnalysis.Analyzers": "3.3.3", - "System.Collections.Immutable": "6.0.0", - "System.Reflection.Metadata": "6.0.1", - "System.Runtime.CompilerServices.Unsafe": "6.0.0", - "System.Text.Encoding.CodePages": "6.0.0" - }, - "runtime": { - "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll": { - "assemblyVersion": "4.5.0.0", - "fileVersion": "4.500.23.10905" - } - }, - "resources": { - "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll": { - "locale": "zh-Hant" - } - } - }, - "Microsoft.CodeAnalysis.CSharp/4.5.0": { - "dependencies": { - "Microsoft.CodeAnalysis.Common": "4.5.0" - }, - "runtime": { - "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll": { - "assemblyVersion": "4.5.0.0", - "fileVersion": "4.500.23.10905" - } - }, - "resources": { - "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": { - "locale": "zh-Hant" - } - } - }, - "Microsoft.CodeAnalysis.CSharp.Workspaces/4.5.0": { - "dependencies": { - "Humanizer.Core": "2.14.1", - "Microsoft.CodeAnalysis.CSharp": "4.5.0", - "Microsoft.CodeAnalysis.Common": "4.5.0", - "Microsoft.CodeAnalysis.Workspaces.Common": "4.5.0" - }, - "runtime": { - "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": { - "assemblyVersion": "4.5.0.0", - "fileVersion": "4.500.23.10905" - } - }, - "resources": { - "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { - "locale": "zh-Hant" - } - } - }, - "Microsoft.CodeAnalysis.Workspaces.Common/4.5.0": { - "dependencies": { - "Humanizer.Core": "2.14.1", - "Microsoft.Bcl.AsyncInterfaces": "6.0.0", - "Microsoft.CodeAnalysis.Common": "4.5.0", - "System.Composition": "6.0.0", - "System.IO.Pipelines": "8.0.0", - "System.Threading.Channels": "8.0.0" - }, - "runtime": { - "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll": { - "assemblyVersion": "4.5.0.0", - "fileVersion": "4.500.23.10905" - } - }, - "resources": { - "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll": { - "locale": "zh-Hant" - } - } - }, - "Microsoft.CSharp/4.7.0": {}, - "Microsoft.EntityFrameworkCore/8.0.21": { - "dependencies": { - "Microsoft.EntityFrameworkCore.Abstractions": "8.0.21", - "Microsoft.EntityFrameworkCore.Analyzers": "8.0.21", - "Microsoft.Extensions.Caching.Memory": "8.0.1", - "Microsoft.Extensions.Logging": "8.0.1" - }, - "runtime": { - "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { - "assemblyVersion": "8.0.21.0", - "fileVersion": "8.0.2125.47512" - } - } - }, - "Microsoft.EntityFrameworkCore.Abstractions/8.0.21": { - "runtime": { - "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { - "assemblyVersion": "8.0.21.0", - "fileVersion": "8.0.2125.47512" - } - } - }, - "Microsoft.EntityFrameworkCore.Analyzers/8.0.21": {}, - "Microsoft.EntityFrameworkCore.Design/8.0.21": { - "dependencies": { - "Humanizer.Core": "2.14.1", - "Microsoft.CodeAnalysis.CSharp.Workspaces": "4.5.0", - "Microsoft.EntityFrameworkCore.Relational": "8.0.21", - "Microsoft.Extensions.DependencyModel": "8.0.2", - "Mono.TextTemplating": "2.2.1" - }, - "runtime": { - "lib/net8.0/Microsoft.EntityFrameworkCore.Design.dll": { - "assemblyVersion": "8.0.21.0", - "fileVersion": "8.0.2125.47512" - } - } - }, - "Microsoft.EntityFrameworkCore.Relational/8.0.21": { - "dependencies": { - "Microsoft.EntityFrameworkCore": "8.0.21", - "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { - "assemblyVersion": "8.0.21.0", - "fileVersion": "8.0.2125.47512" - } - } - }, - "Microsoft.EntityFrameworkCore.Tools/8.0.21": { - "dependencies": { - "Microsoft.EntityFrameworkCore.Design": "8.0.21" - } - }, - "Microsoft.Extensions.ApiDescription.Server/6.0.5": {}, - "Microsoft.Extensions.Caching.Abstractions/10.0.2": { - "dependencies": { - "Microsoft.Extensions.Primitives": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "Microsoft.Extensions.Caching.Memory/8.0.1": { - "dependencies": { - "Microsoft.Extensions.Caching.Abstractions": "10.0.2", - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2", - "Microsoft.Extensions.Primitives": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1024.46610" - } - } - }, - "Microsoft.Extensions.Caching.StackExchangeRedis/10.0.2": { - "dependencies": { - "Microsoft.Extensions.Caching.Abstractions": "10.0.2", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2", - "StackExchange.Redis": "2.9.32" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.Extensions.Caching.StackExchangeRedis.dll": { - "assemblyVersion": "10.0.2.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { - "dependencies": { - "Microsoft.Extensions.Primitives": "10.0.2" - } - }, - "Microsoft.Extensions.DependencyInjection/8.0.1": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1024.46610" - } - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "Microsoft.Extensions.DependencyModel/8.0.2": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyModel.dll": { - "assemblyVersion": "8.0.0.2", - "fileVersion": "8.0.1024.46610" - } - } - }, - "Microsoft.Extensions.Diagnostics.Abstractions/8.0.1": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Diagnostics.Abstractions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1024.46610" - } - } - }, - "Microsoft.Extensions.Diagnostics.HealthChecks/8.0.0": { - "dependencies": { - "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions": "8.0.0", - "Microsoft.Extensions.Hosting.Abstractions": "8.0.1", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2" - } - }, - "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/8.0.0": {}, - "Microsoft.Extensions.FileProviders.Abstractions/8.0.0": { - "dependencies": { - "Microsoft.Extensions.Primitives": "10.0.2" - } - }, - "Microsoft.Extensions.Hosting.Abstractions/8.0.1": { - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "8.0.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "Microsoft.Extensions.Diagnostics.Abstractions": "8.0.1", - "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Hosting.Abstractions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1024.46610" - } - } - }, - "Microsoft.Extensions.Logging/8.0.1": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "8.0.1", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1024.46610" - } - } - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.2": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "System.Diagnostics.DiagnosticSource": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "Microsoft.Extensions.ObjectPool/8.0.11": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.ObjectPool.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1124.52116" - } - } - }, - "Microsoft.Extensions.Options/10.0.2": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "Microsoft.Extensions.Primitives": "10.0.2" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "Microsoft.Extensions.Primitives/10.0.2": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "Microsoft.IdentityModel.Abstractions/8.14.0": { - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll": { - "assemblyVersion": "8.14.0.0", - "fileVersion": "8.14.0.60815" - } - } - }, - "Microsoft.IdentityModel.JsonWebTokens/8.14.0": { - "dependencies": { - "Microsoft.IdentityModel.Tokens": "8.14.0" - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll": { - "assemblyVersion": "8.14.0.0", - "fileVersion": "8.14.0.60815" - } - } - }, - "Microsoft.IdentityModel.Logging/8.14.0": { - "dependencies": { - "Microsoft.IdentityModel.Abstractions": "8.14.0" - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Logging.dll": { - "assemblyVersion": "8.14.0.0", - "fileVersion": "8.14.0.60815" - } - } - }, - "Microsoft.IdentityModel.Protocols/7.1.2": { - "dependencies": { - "Microsoft.IdentityModel.Logging": "8.14.0", - "Microsoft.IdentityModel.Tokens": "8.14.0" - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Protocols.dll": { - "assemblyVersion": "7.1.2.0", - "fileVersion": "7.1.2.41121" - } - } - }, - "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.1.2": { - "dependencies": { - "Microsoft.IdentityModel.Protocols": "7.1.2", - "System.IdentityModel.Tokens.Jwt": "8.14.0" - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { - "assemblyVersion": "7.1.2.0", - "fileVersion": "7.1.2.41121" - } - } - }, - "Microsoft.IdentityModel.Tokens/8.14.0": { - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.IdentityModel.Logging": "8.14.0" - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Tokens.dll": { - "assemblyVersion": "8.14.0.0", - "fileVersion": "8.14.0.60815" - } - } - }, - "Microsoft.Net.Http.Headers/2.3.0": { - "dependencies": { - "Microsoft.Extensions.Primitives": "10.0.2", - "System.Buffers": "4.6.0" - } - }, - "Microsoft.OpenApi/1.6.14": { - "runtime": { - "lib/netstandard2.0/Microsoft.OpenApi.dll": { - "assemblyVersion": "1.6.14.0", - "fileVersion": "1.6.14.0" - } - } - }, - "Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.22.1": {}, - "Mono.TextTemplating/2.2.1": { - "dependencies": { - "System.CodeDom": "4.4.0" - }, - "runtime": { - "lib/netstandard2.0/Mono.TextTemplating.dll": { - "assemblyVersion": "2.2.0.0", - "fileVersion": "2.2.1.1" - } - } - }, - "MySqlConnector/2.3.5": { - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "10.0.2" - }, - "runtime": { - "lib/net8.0/MySqlConnector.dll": { - "assemblyVersion": "2.0.0.0", - "fileVersion": "2.3.5.0" - } - } - }, - "Newtonsoft.Json/13.0.4": { - "runtime": { - "lib/net6.0/Newtonsoft.Json.dll": { - "assemblyVersion": "13.0.0.0", - "fileVersion": "13.0.4.30916" - } - } - }, - "Pipelines.Sockets.Unofficial/2.2.8": { - "dependencies": { - "System.IO.Pipelines": "8.0.0" - }, - "runtime": { - "lib/net5.0/Pipelines.Sockets.Unofficial.dll": { - "assemblyVersion": "1.0.0.0", - "fileVersion": "2.2.8.1080" - } - } - }, - "Pomelo.EntityFrameworkCore.MySql/8.0.3": { - "dependencies": { - "Microsoft.EntityFrameworkCore.Relational": "8.0.21", - "MySqlConnector": "2.3.5" - }, - "runtime": { - "lib/net8.0/Pomelo.EntityFrameworkCore.MySql.dll": { - "assemblyVersion": "8.0.3.0", - "fileVersion": "8.0.3.0" - } - } - }, - "RabbitMQ.Client/7.1.2": { - "dependencies": { - "System.IO.Pipelines": "8.0.0", - "System.Threading.RateLimiting": "8.0.0" - }, - "runtime": { - "lib/net8.0/RabbitMQ.Client.dll": { - "assemblyVersion": "7.0.0.0", - "fileVersion": "7.1.2.0" - } - } - }, - "RedLock.net/2.3.2": { - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "6.0.0", - "Microsoft.Extensions.Logging": "8.0.1", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "StackExchange.Redis": "2.9.32" - }, - "runtime": { - "lib/netstandard2.0/RedLockNet.Abstractions.dll": { - "assemblyVersion": "2.3.2.0", - "fileVersion": "2.3.2.0" - }, - "lib/netstandard2.0/RedLockNet.SERedis.dll": { - "assemblyVersion": "2.3.2.0", - "fileVersion": "2.3.2.0" - } - } - }, - "StackExchange.Redis/2.9.32": { - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Pipelines.Sockets.Unofficial": "2.2.8" - }, - "runtime": { - "lib/net8.0/StackExchange.Redis.dll": { - "assemblyVersion": "2.0.0.0", - "fileVersion": "2.9.32.54708" - } - } - }, - "Swashbuckle.AspNetCore/6.6.2": { - "dependencies": { - "Microsoft.Extensions.ApiDescription.Server": "6.0.5", - "Swashbuckle.AspNetCore.Swagger": "6.6.2", - "Swashbuckle.AspNetCore.SwaggerGen": "6.6.2", - "Swashbuckle.AspNetCore.SwaggerUI": "6.6.2" - } - }, - "Swashbuckle.AspNetCore.Swagger/6.6.2": { - "dependencies": { - "Microsoft.OpenApi": "1.6.14" - }, - "runtime": { - "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": { - "assemblyVersion": "6.6.2.0", - "fileVersion": "6.6.2.401" - } - } - }, - "Swashbuckle.AspNetCore.SwaggerGen/6.6.2": { - "dependencies": { - "Swashbuckle.AspNetCore.Swagger": "6.6.2" - }, - "runtime": { - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { - "assemblyVersion": "6.6.2.0", - "fileVersion": "6.6.2.401" - } - } - }, - "Swashbuckle.AspNetCore.SwaggerUI/6.6.2": { - "runtime": { - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { - "assemblyVersion": "6.6.2.0", - "fileVersion": "6.6.2.401" - } - } - }, - "System.Buffers/4.6.0": {}, - "System.CodeDom/4.4.0": { - "runtime": { - "lib/netstandard2.0/System.CodeDom.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "4.6.25519.3" - } - } - }, - "System.Collections.Immutable/6.0.0": { - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "6.0.0" - } - }, - "System.Composition/6.0.0": { - "dependencies": { - "System.Composition.AttributedModel": "6.0.0", - "System.Composition.Convention": "6.0.0", - "System.Composition.Hosting": "6.0.0", - "System.Composition.Runtime": "6.0.0", - "System.Composition.TypedParts": "6.0.0" - } - }, - "System.Composition.AttributedModel/6.0.0": { - "runtime": { - "lib/net6.0/System.Composition.AttributedModel.dll": { - "assemblyVersion": "6.0.0.0", - "fileVersion": "6.0.21.52210" - } - } - }, - "System.Composition.Convention/6.0.0": { - "dependencies": { - "System.Composition.AttributedModel": "6.0.0" - }, - "runtime": { - "lib/net6.0/System.Composition.Convention.dll": { - "assemblyVersion": "6.0.0.0", - "fileVersion": "6.0.21.52210" - } - } - }, - "System.Composition.Hosting/6.0.0": { - "dependencies": { - "System.Composition.Runtime": "6.0.0" - }, - "runtime": { - "lib/net6.0/System.Composition.Hosting.dll": { - "assemblyVersion": "6.0.0.0", - "fileVersion": "6.0.21.52210" - } - } - }, - "System.Composition.Runtime/6.0.0": { - "runtime": { - "lib/net6.0/System.Composition.Runtime.dll": { - "assemblyVersion": "6.0.0.0", - "fileVersion": "6.0.21.52210" - } - } - }, - "System.Composition.TypedParts/6.0.0": { - "dependencies": { - "System.Composition.AttributedModel": "6.0.0", - "System.Composition.Hosting": "6.0.0", - "System.Composition.Runtime": "6.0.0" - }, - "runtime": { - "lib/net6.0/System.Composition.TypedParts.dll": { - "assemblyVersion": "6.0.0.0", - "fileVersion": "6.0.21.52210" - } - } - }, - "System.Diagnostics.DiagnosticSource/10.0.2": { - "runtime": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.225.61305" - } - } - }, - "System.IdentityModel.Tokens.Jwt/8.14.0": { - "dependencies": { - "Microsoft.IdentityModel.JsonWebTokens": "8.14.0", - "Microsoft.IdentityModel.Tokens": "8.14.0" - }, - "runtime": { - "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll": { - "assemblyVersion": "8.14.0.0", - "fileVersion": "8.14.0.60815" - } - } - }, - "System.IO.Pipelines/8.0.0": {}, - "System.Net.WebSockets.WebSocketProtocol/5.1.0": { - "runtime": { - "lib/net6.0/System.Net.WebSockets.WebSocketProtocol.dll": { - "assemblyVersion": "5.1.0.0", - "fileVersion": "5.100.24.56208" - } - } - }, - "System.Reflection.Emit/4.7.0": {}, - "System.Reflection.Metadata/6.0.1": { - "dependencies": { - "System.Collections.Immutable": "6.0.0" - } - }, - "System.Runtime.CompilerServices.Unsafe/6.0.0": {}, - "System.Text.Encoding.CodePages/6.0.0": { - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "6.0.0" - } - }, - "System.Text.Encodings.Web/8.0.0": {}, - "System.Threading.Channels/8.0.0": {}, - "System.Threading.RateLimiting/8.0.0": {} - } - }, - "libraries": { - "IM_API/1.0.0": { - "type": "project", - "serviceable": false, - "sha512": "" - }, - "AutoMapper/12.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-hvV62vl6Hp/WfQ24yzo3Co9+OPl8wH8hApwVtgWpiAynVJkUcs7xvehnSftawL8Pe8FrPffBRM3hwzLQqWDNjA==", - "path": "automapper/12.0.1", - "hashPath": "automapper.12.0.1.nupkg.sha512" - }, - "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-XCJ4E3oKrbRl1qY9Mr+7uyC0xZj1+bqQjmQRWTiTKiVuuXTny+7YFWHi20tPjwkMukLbicN6yGlDy5PZ4wyi1w==", - "path": "automapper.extensions.microsoft.dependencyinjection/12.0.0", - "hashPath": "automapper.extensions.microsoft.dependencyinjection.12.0.0.nupkg.sha512" - }, - "Humanizer.Core/2.14.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-lQKvtaTDOXnoVJ20ibTuSIOf2i0uO0MPbDhd1jm238I+U/2ZnRENj0cktKZhtchBMtCUSRQ5v4xBCUbKNmyVMw==", - "path": "humanizer.core/2.14.1", - "hashPath": "humanizer.core.2.14.1.nupkg.sha512" - }, - "MassTransit/8.5.5": { - "type": "package", - "serviceable": true, - "sha512": "sha512-bSg8k5q+rP1s+dIGXLLbctqDGdIkfDjdxwNWtCUH7xNCN9ZuM7mqSPQPIFgaYIi34e81m4FqAqo4CAHuWPkhRA==", - "path": "masstransit/8.5.5", - "hashPath": "masstransit.8.5.5.nupkg.sha512" - }, - "MassTransit.Abstractions/8.5.5": { - "type": "package", - "serviceable": true, - "sha512": "sha512-0mn2Ay17dD6z5tgSLjbVRlldSbL9iowzFEfVgVfBXVG5ttz9dSWeR4TrdD6pqH93GWXp4CvSmF8i1HqxLX7DZw==", - "path": "masstransit.abstractions/8.5.5", - "hashPath": "masstransit.abstractions.8.5.5.nupkg.sha512" - }, - "MassTransit.RabbitMQ/8.5.5": { - "type": "package", - "serviceable": true, - "sha512": "sha512-UxWn4o90YVMF9PBkJeoskOFPneh6YtnI1fLJHtvZiSAG0eoiRrWPGa+6FQCvjkQ/ljCKfjzok2eGZc/vmNZ01A==", - "path": "masstransit.rabbitmq/8.5.5", - "hashPath": "masstransit.rabbitmq.8.5.5.nupkg.sha512" - }, - "Microsoft.AspNetCore.Authentication.Abstractions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ve6uvLwKNRkfnO/QeN9M8eUJ49lCnWv/6/9p6iTEuiI6Rtsz+myaBAjdMzLuTViQY032xbTF5AdZF5BJzJJyXQ==", - "path": "microsoft.aspnetcore.authentication.abstractions/2.3.0", - "hashPath": "microsoft.aspnetcore.authentication.abstractions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.21": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ZuUpJ4DvmVArmTlyGGg+b9IdKgd8Kw0SmEzhjy4dQw8R6rxfNqCXfGvGm3ld7xlrgthJFou/le9tadsSyjFLuw==", - "path": "microsoft.aspnetcore.authentication.jwtbearer/8.0.21", - "hashPath": "microsoft.aspnetcore.authentication.jwtbearer.8.0.21.nupkg.sha512" - }, - "Microsoft.AspNetCore.Authorization/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-2/aBgLqBXva/+w8pzRNY8ET43Gi+dr1gv/7ySfbsh23lTK6IAgID5MGUEa1hreNIF+0XpW4tX7QwVe70+YvaPg==", - "path": "microsoft.aspnetcore.authorization/2.3.0", - "hashPath": "microsoft.aspnetcore.authorization.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Authorization.Policy/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-vn31uQ1dA1MIV2WNNDOOOm88V5KgR9esfi0LyQ6eVaGq2h0Yw+R29f5A6qUNJt+RccS3qkYayylAy9tP1wV+7Q==", - "path": "microsoft.aspnetcore.authorization.policy/2.3.0", - "hashPath": "microsoft.aspnetcore.authorization.policy.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Connections.Abstractions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ULFSa+/L+WiAHVlIFHyg0OmHChU9Hx+K+xnt0hbIU5XmT1EGy0pNDx23QAzDtAy9jxQrTG6MX0MdvMeU4D4c7w==", - "path": "microsoft.aspnetcore.connections.abstractions/2.3.0", - "hashPath": "microsoft.aspnetcore.connections.abstractions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Hosting.Abstractions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-4ivq53W2k6Nj4eez9wc81ytfGj6HR1NaZJCpOrvghJo9zHuQF57PLhPoQH5ItyCpHXnrN/y7yJDUm+TGYzrx0w==", - "path": "microsoft.aspnetcore.hosting.abstractions/2.3.0", - "hashPath": "microsoft.aspnetcore.hosting.abstractions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-F5iHx7odAbFKBV1DNPDkFFcVmD5Tk7rk+tYm3LMQxHEFFdjlg5QcYb5XhHAefl5YaaPeG6ad+/ck8kSG3/D6kw==", - "path": "microsoft.aspnetcore.hosting.server.abstractions/2.3.0", - "hashPath": "microsoft.aspnetcore.hosting.server.abstractions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-I9azEG2tZ4DDHAFgv+N38e6Yhttvf+QjE2j2UYyCACE7Swm5/0uoihCMWZ87oOZYeqiEFSxbsfpT71OYHe2tpw==", - "path": "microsoft.aspnetcore.http/2.3.0", - "hashPath": "microsoft.aspnetcore.http.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Abstractions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-39r9PPrjA6s0blyFv5qarckjNkaHRA5B+3b53ybuGGNTXEj1/DStQJ4NWjFL6QTRQpL9zt7nDyKxZdJOlcnq+Q==", - "path": "microsoft.aspnetcore.http.abstractions/2.3.0", - "hashPath": "microsoft.aspnetcore.http.abstractions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections/1.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VYMCOLvdT0y3O9lk4jUuIs8+re7u5+i+ka6ZZ6fIzSJ94c/JeMnAOOg39EB2i4crPXvLoiSdzKWlNPJgTbCZ2g==", - "path": "microsoft.aspnetcore.http.connections/1.2.0", - "hashPath": "microsoft.aspnetcore.http.connections.1.2.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections.Common/1.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-yUA7eg6kv7Wbz5TCW4PqS5/kYE5VxUIEDvoxjw4p1RwS2LGm84F9fBtM0mD6wrRfiv1NUyJ7WBjn3PWd/ccO+w==", - "path": "microsoft.aspnetcore.http.connections.common/1.2.0", - "hashPath": "microsoft.aspnetcore.http.connections.common.1.2.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Extensions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-EY2u/wFF5jsYwGXXswfQWrSsFPmiXsniAlUWo3rv/MGYf99ZFsENDnZcQP6W3c/+xQmQXq0NauzQ7jyy+o1LDQ==", - "path": "microsoft.aspnetcore.http.extensions/2.3.0", - "hashPath": "microsoft.aspnetcore.http.extensions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Features/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-f10WUgcsKqrkmnz6gt8HeZ7kyKjYN30PO7cSic1lPtH7paPtnQqXPOveul/SIPI43PhRD4trttg4ywnrEmmJpA==", - "path": "microsoft.aspnetcore.http.features/2.3.0", - "hashPath": "microsoft.aspnetcore.http.features.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Routing/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-no5/VC0CAQuT4PK4rp2K5fqwuSfzr2mdB6m1XNfWVhHnwzpRQzKAu9flChiT/JTLKwVI0Vq2MSmSW2OFMDCNXg==", - "path": "microsoft.aspnetcore.routing/2.3.0", - "hashPath": "microsoft.aspnetcore.routing.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Routing.Abstractions/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ZkFpUrSmp6TocxZLBEX3IBv5dPMbQuMs6L/BPl0WRfn32UVOtNYJQ0bLdh3cL9LMV0rmTW/5R0w8CBYxr0AOUw==", - "path": "microsoft.aspnetcore.routing.abstractions/2.3.0", - "hashPath": "microsoft.aspnetcore.routing.abstractions.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR/1.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-XoCcsOTdtBiXyOzUtpbCl0IaqMOYjnr+6dbDxvUCFn7NR6bu7CwrlQ3oQzkltTwDZH0b6VEUN9wZPOYvPHi+Lg==", - "path": "microsoft.aspnetcore.signalr/1.2.0", - "hashPath": "microsoft.aspnetcore.signalr.1.2.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Common/1.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-FZeXIaoWqe145ZPdfiptwkw/sP1BX1UD0706GNBwwoaFiKsNbLEl/Trhj2+idlp3qbX1BEwkQesKNxkopVY5Xg==", - "path": "microsoft.aspnetcore.signalr.common/1.2.0", - "hashPath": "microsoft.aspnetcore.signalr.common.1.2.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Core/1.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-eZTuMkSDw1uwjhLhJbMxgW2Cuyxfn0Kfqm8OBmqvuzE9Qc/VVzh8dGrAp2F9Pk7XKTDHmlhc5RTLcPPAZ5PSZw==", - "path": "microsoft.aspnetcore.signalr.core/1.2.0", - "hashPath": "microsoft.aspnetcore.signalr.core.1.2.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/1.2.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-hNvZ7kQxp5Udqd/IFWViU35bUJvi4xnNzjkF28HRvrdrS7JNsIASTvMqArP6HLQUc3j6nlUOeShNhVmgI1wzHg==", - "path": "microsoft.aspnetcore.signalr.protocols.json/1.2.0", - "hashPath": "microsoft.aspnetcore.signalr.protocols.json.1.2.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.WebSockets/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-+T4zpnVPkIjvvkyhTH3WBJlTfqmTBRozvnMudAUDvcb4e+NrWf52q8BXh52rkCrBgX6Cudf6F/UhZwTowyBtKg==", - "path": "microsoft.aspnetcore.websockets/2.3.0", - "hashPath": "microsoft.aspnetcore.websockets.2.3.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.WebUtilities/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-trbXdWzoAEUVd0PE2yTopkz4kjZaAIA7xUWekd5uBw+7xE8Do/YOVTeb9d9koPTlbtZT539aESJjSLSqD8eYrQ==", - "path": "microsoft.aspnetcore.webutilities/2.3.0", - "hashPath": "microsoft.aspnetcore.webutilities.2.3.0.nupkg.sha512" - }, - "Microsoft.Bcl.AsyncInterfaces/6.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-UcSjPsst+DfAdJGVDsu346FX0ci0ah+lw3WRtn18NUwEqRt70HaOQ7lI72vy3+1LxtqI3T5GWwV39rQSrCzAeg==", - "path": "microsoft.bcl.asyncinterfaces/6.0.0", - "hashPath": "microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512" - }, - "Microsoft.CodeAnalysis.Analyzers/3.3.3": { - "type": "package", - "serviceable": true, - "sha512": "sha512-j/rOZtLMVJjrfLRlAMckJLPW/1rze9MT1yfWqSIbUPGRu1m1P0fuo9PmqapwsmePfGB5PJrudQLvmUOAMF0DqQ==", - "path": "microsoft.codeanalysis.analyzers/3.3.3", - "hashPath": "microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512" - }, - "Microsoft.CodeAnalysis.Common/4.5.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-lwAbIZNdnY0SUNoDmZHkVUwLO8UyNnyyh1t/4XsbFxi4Ounb3xszIYZaWhyj5ZjyfcwqwmtMbE7fUTVCqQEIdQ==", - "path": "microsoft.codeanalysis.common/4.5.0", - "hashPath": "microsoft.codeanalysis.common.4.5.0.nupkg.sha512" - }, - "Microsoft.CodeAnalysis.CSharp/4.5.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-cM59oMKAOxvdv76bdmaKPy5hfj+oR+zxikWoueEB7CwTko7mt9sVKZI8Qxlov0C/LuKEG+WQwifepqL3vuTiBQ==", - "path": "microsoft.codeanalysis.csharp/4.5.0", - "hashPath": "microsoft.codeanalysis.csharp.4.5.0.nupkg.sha512" - }, - "Microsoft.CodeAnalysis.CSharp.Workspaces/4.5.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-h74wTpmGOp4yS4hj+EvNzEiPgg/KVs2wmSfTZ81upJZOtPkJsVkgfsgtxxqmAeapjT/vLKfmYV0bS8n5MNVP+g==", - "path": "microsoft.codeanalysis.csharp.workspaces/4.5.0", - "hashPath": "microsoft.codeanalysis.csharp.workspaces.4.5.0.nupkg.sha512" - }, - "Microsoft.CodeAnalysis.Workspaces.Common/4.5.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-l4dDRmGELXG72XZaonnOeORyD/T5RpEu5LGHOUIhnv+MmUWDY/m1kWXGwtcgQ5CJ5ynkFiRnIYzTKXYjUs7rbw==", - "path": "microsoft.codeanalysis.workspaces.common/4.5.0", - "hashPath": "microsoft.codeanalysis.workspaces.common.4.5.0.nupkg.sha512" - }, - "Microsoft.CSharp/4.7.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==", - "path": "microsoft.csharp/4.7.0", - "hashPath": "microsoft.csharp.4.7.0.nupkg.sha512" - }, - "Microsoft.EntityFrameworkCore/8.0.21": { - "type": "package", - "serviceable": true, - "sha512": "sha512-WgCdRIS+hpq95zJo6oI9tvyQV/0EH9qJiD4FL60m+ghpHqHY6rY3D793HLe64yD85IHwumuX4hNJeHYeJEvM0g==", - "path": "microsoft.entityframeworkcore/8.0.21", - "hashPath": "microsoft.entityframeworkcore.8.0.21.nupkg.sha512" - }, - "Microsoft.EntityFrameworkCore.Abstractions/8.0.21": { - "type": "package", - "serviceable": true, - "sha512": "sha512-1ZEXvRk8Rk+MfW06EmSYg7GQJZdOocJf61nezBmC2Kti0barUART0MHWgNzQox1lIzw9uv3A1HWJUjmPswCO6w==", - "path": "microsoft.entityframeworkcore.abstractions/8.0.21", - "hashPath": "microsoft.entityframeworkcore.abstractions.8.0.21.nupkg.sha512" - }, - "Microsoft.EntityFrameworkCore.Analyzers/8.0.21": { - "type": "package", - "serviceable": true, - "sha512": "sha512-MGX1NkW44ju8yIzfg+ao/YITHyA23EThp8HfuNp5zaqihL+kNORVMUUnewBjakiCq0938bzFKu9HRmZsXS4b2g==", - "path": "microsoft.entityframeworkcore.analyzers/8.0.21", - "hashPath": "microsoft.entityframeworkcore.analyzers.8.0.21.nupkg.sha512" - }, - "Microsoft.EntityFrameworkCore.Design/8.0.21": { - "type": "package", - "serviceable": true, - "sha512": "sha512-q7EP42PSWPKkyztgsv1EmHAFjreN2fqww77L2Tjhp2dwfEjidgHjtX6yrZBDUbIFva5Y87xAdv9hQoBAUZLryw==", - "path": "microsoft.entityframeworkcore.design/8.0.21", - "hashPath": "microsoft.entityframeworkcore.design.8.0.21.nupkg.sha512" - }, - "Microsoft.EntityFrameworkCore.Relational/8.0.21": { - "type": "package", - "serviceable": true, - "sha512": "sha512-P1ywvCew/jKhbJApuIk2Sm4Ejq/5FOgEh2IooB48juABzGAlfUjW2kBlbevWO9mNK+sMPS2vnf+US8W0fEo46Q==", - "path": "microsoft.entityframeworkcore.relational/8.0.21", - "hashPath": "microsoft.entityframeworkcore.relational.8.0.21.nupkg.sha512" - }, - "Microsoft.EntityFrameworkCore.Tools/8.0.21": { - "type": "package", - "serviceable": true, - "sha512": "sha512-Jmm3WtUyalpgfHEozcD+q0SmbKwMTVsZCz46ws/YHbePScu3PkNMmhn0iUFvi32djCJBCfOvXtQdnJFyXyW6LA==", - "path": "microsoft.entityframeworkcore.tools/8.0.21", - "hashPath": "microsoft.entityframeworkcore.tools.8.0.21.nupkg.sha512" - }, - "Microsoft.Extensions.ApiDescription.Server/6.0.5": { - "type": "package", - "serviceable": true, - "sha512": "sha512-Ckb5EDBUNJdFWyajfXzUIMRkhf52fHZOQuuZg/oiu8y7zDCVwD0iHhew6MnThjHmevanpxL3f5ci2TtHQEN6bw==", - "path": "microsoft.extensions.apidescription.server/6.0.5", - "hashPath": "microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512" - }, - "Microsoft.Extensions.Caching.Abstractions/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-WIRPDa/qoKHmJhTAPCO/zLu9kRLQ2Fd6HD5tzgdXJ3xGEVXDHP6FvakKJjynwKrVDld8H4G4tcbW53wuC/wxMQ==", - "path": "microsoft.extensions.caching.abstractions/10.0.2", - "hashPath": "microsoft.extensions.caching.abstractions.10.0.2.nupkg.sha512" - }, - "Microsoft.Extensions.Caching.Memory/8.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==", - "path": "microsoft.extensions.caching.memory/8.0.1", - "hashPath": "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512" - }, - "Microsoft.Extensions.Caching.StackExchangeRedis/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-WEx0VM6KVv4Bf6lwe4WQTd4EixIfw38ZU3u/7zMe+uC5fOyiANu8Os/qyiqv2iEsIJb296tbd2E2BTaWIha3Vg==", - "path": "microsoft.extensions.caching.stackexchangeredis/10.0.2", - "hashPath": "microsoft.extensions.caching.stackexchangeredis.10.0.2.nupkg.sha512" - }, - "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==", - "path": "microsoft.extensions.configuration.abstractions/8.0.0", - "hashPath": "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection/8.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==", - "path": "microsoft.extensions.dependencyinjection/8.0.1", - "hashPath": "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-zOIurr59+kUf9vNcsUkCvKWZv+fPosUZXURZesYkJCvl0EzTc9F7maAO4Cd2WEV7ZJJ0AZrFQvuH6Npph9wdBw==", - "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.2", - "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.2.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyModel/8.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-mUBDZZRgZrSyFOsJ2qJJ9fXfqd/kXJwf3AiDoqLD9m6TjY5OO/vLNOb9fb4juC0487eq4hcGN/M2Rh/CKS7QYw==", - "path": "microsoft.extensions.dependencymodel/8.0.2", - "hashPath": "microsoft.extensions.dependencymodel.8.0.2.nupkg.sha512" - }, - "Microsoft.Extensions.Diagnostics.Abstractions/8.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-elH2vmwNmsXuKmUeMQ4YW9ldXiF+gSGDgg1vORksob5POnpaI6caj1Hu8zaYbEuibhqCoWg0YRWDazBY3zjBfg==", - "path": "microsoft.extensions.diagnostics.abstractions/8.0.1", - "hashPath": "microsoft.extensions.diagnostics.abstractions.8.0.1.nupkg.sha512" - }, - "Microsoft.Extensions.Diagnostics.HealthChecks/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-P9SoBuVZhJPpALZmSq72aQEb9ryP67EdquaCZGXGrrcASTNHYdrUhnpgSwIipgM5oVC+dKpRXg5zxobmF9xr5g==", - "path": "microsoft.extensions.diagnostics.healthchecks/8.0.0", - "hashPath": "microsoft.extensions.diagnostics.healthchecks.8.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-AT2qqos3IgI09ok36Qag9T8bb6kHJ3uT9Q5ki6CySybFsK6/9JbvQAgAHf1pVEjST0/N4JaFaCbm40R5edffwg==", - "path": "microsoft.extensions.diagnostics.healthchecks.abstractions/8.0.0", - "hashPath": "microsoft.extensions.diagnostics.healthchecks.abstractions.8.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.FileProviders.Abstractions/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ZbaMlhJlpisjuWbvXr4LdAst/1XxH3vZ6A0BsgTphZ2L4PGuxRLz7Jr/S7mkAAnOn78Vu0fKhEgNF5JO3zfjqQ==", - "path": "microsoft.extensions.fileproviders.abstractions/8.0.0", - "hashPath": "microsoft.extensions.fileproviders.abstractions.8.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Hosting.Abstractions/8.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-nHwq9aPBdBPYXPti6wYEEfgXddfBrYC+CQLn+qISiwQq5tpfaqDZSKOJNxoe9rfQxGf1c+2wC/qWFe1QYJPYqw==", - "path": "microsoft.extensions.hosting.abstractions/8.0.1", - "hashPath": "microsoft.extensions.hosting.abstractions.8.0.1.nupkg.sha512" - }, - "Microsoft.Extensions.Logging/8.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==", - "path": "microsoft.extensions.logging/8.0.1", - "hashPath": "microsoft.extensions.logging.8.0.1.nupkg.sha512" - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-RZkez/JjpnO+MZ6efKkSynN6ZztLpw3WbxNzjLCPBd97wWj1S9ZYPWi0nmT4kWBRa6atHsdM1ydGkUr8GudyDQ==", - "path": "microsoft.extensions.logging.abstractions/10.0.2", - "hashPath": "microsoft.extensions.logging.abstractions.10.0.2.nupkg.sha512" - }, - "Microsoft.Extensions.ObjectPool/8.0.11": { - "type": "package", - "serviceable": true, - "sha512": "sha512-6ApKcHNJigXBfZa6XlDQ8feJpq7SG1ogZXg6M4FiNzgd6irs3LUAzo0Pfn4F2ZI9liGnH1XIBR/OtSbZmJAV5w==", - "path": "microsoft.extensions.objectpool/8.0.11", - "hashPath": "microsoft.extensions.objectpool.8.0.11.nupkg.sha512" - }, - "Microsoft.Extensions.Options/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-1De2LJjmxdqopI5AYC5dIhoZQ79AR5ayywxNF1rXrXFtKQfbQOV9+n/IsZBa7qWlr0MqoGpW8+OY2v/57udZOA==", - "path": "microsoft.extensions.options/10.0.2", - "hashPath": "microsoft.extensions.options.10.0.2.nupkg.sha512" - }, - "Microsoft.Extensions.Primitives/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-QmSiO+oLBEooGgB3i0GRXyeYRDHjllqt3k365jwfZlYWhvSHA3UL2NEVV5m8aZa041eIlblo6KMI5txvTMpTwA==", - "path": "microsoft.extensions.primitives/10.0.2", - "hashPath": "microsoft.extensions.primitives.10.0.2.nupkg.sha512" - }, - "Microsoft.IdentityModel.Abstractions/8.14.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-iwbCpSjD3ehfTwBhtSNEtKPK0ICun6ov7Ibx6ISNA9bfwIyzI2Siwyi9eJFCJBwxowK9xcA1mj+jBWiigeqgcQ==", - "path": "microsoft.identitymodel.abstractions/8.14.0", - "hashPath": "microsoft.identitymodel.abstractions.8.14.0.nupkg.sha512" - }, - "Microsoft.IdentityModel.JsonWebTokens/8.14.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-4jOpiA4THdtpLyMdAb24dtj7+6GmvhOhxf5XHLYWmPKF8ApEnApal1UnJsKO4HxUWRXDA6C4WQVfYyqsRhpNpQ==", - "path": "microsoft.identitymodel.jsonwebtokens/8.14.0", - "hashPath": "microsoft.identitymodel.jsonwebtokens.8.14.0.nupkg.sha512" - }, - "Microsoft.IdentityModel.Logging/8.14.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-eqqnemdW38CKZEHS6diA50BV94QICozDZEvSrsvN3SJXUFwVB9gy+/oz76gldP7nZliA16IglXjXTCTdmU/Ejg==", - "path": "microsoft.identitymodel.logging/8.14.0", - "hashPath": "microsoft.identitymodel.logging.8.14.0.nupkg.sha512" - }, - "Microsoft.IdentityModel.Protocols/7.1.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-SydLwMRFx6EHPWJ+N6+MVaoArN1Htt92b935O3RUWPY1yUF63zEjvd3lBu79eWdZUwedP8TN2I5V9T3nackvIQ==", - "path": "microsoft.identitymodel.protocols/7.1.2", - "hashPath": "microsoft.identitymodel.protocols.7.1.2.nupkg.sha512" - }, - "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.1.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-6lHQoLXhnMQ42mGrfDkzbIOR3rzKM1W1tgTeMPLgLCqwwGw0d96xFi/UiX/fYsu7d6cD5MJiL3+4HuI8VU+sVQ==", - "path": "microsoft.identitymodel.protocols.openidconnect/7.1.2", - "hashPath": "microsoft.identitymodel.protocols.openidconnect.7.1.2.nupkg.sha512" - }, - "Microsoft.IdentityModel.Tokens/8.14.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-lKIZiBiGd36k02TCdMHp1KlNWisyIvQxcYJvIkz7P4gSQ9zi8dgh6S5Grj8NNG7HWYIPfQymGyoZ6JB5d1Lo1g==", - "path": "microsoft.identitymodel.tokens/8.14.0", - "hashPath": "microsoft.identitymodel.tokens.8.14.0.nupkg.sha512" - }, - "Microsoft.Net.Http.Headers/2.3.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-/M0wVg6tJUOHutWD3BMOUVZAioJVXe0tCpFiovzv0T9T12TBf4MnaHP0efO8TCr1a6O9RZgQeZ9Gdark8L9XdA==", - "path": "microsoft.net.http.headers/2.3.0", - "hashPath": "microsoft.net.http.headers.2.3.0.nupkg.sha512" - }, - "Microsoft.OpenApi/1.6.14": { - "type": "package", - "serviceable": true, - "sha512": "sha512-tTaBT8qjk3xINfESyOPE2rIellPvB7qpVqiWiyA/lACVvz+xOGiXhFUfohcx82NLbi5avzLW0lx+s6oAqQijfw==", - "path": "microsoft.openapi/1.6.14", - "hashPath": "microsoft.openapi.1.6.14.nupkg.sha512" - }, - "Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.22.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-EfYANhAWqmWKoLwN6bxoiPZSOfJSO9lzX+UrU6GVhLhPub1Hd+5f0zL0/tggIA6mRz6Ebw2xCNcIsM4k+7NPng==", - "path": "microsoft.visualstudio.azure.containers.tools.targets/1.22.1", - "hashPath": "microsoft.visualstudio.azure.containers.tools.targets.1.22.1.nupkg.sha512" - }, - "Mono.TextTemplating/2.2.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-KZYeKBET/2Z0gY1WlTAK7+RHTl7GSbtvTLDXEZZojUdAPqpQNDL6tHv7VUpqfX5VEOh+uRGKaZXkuD253nEOBQ==", - "path": "mono.texttemplating/2.2.1", - "hashPath": "mono.texttemplating.2.2.1.nupkg.sha512" - }, - "MySqlConnector/2.3.5": { - "type": "package", - "serviceable": true, - "sha512": "sha512-AmEfUPkFl+Ev6jJ8Dhns3CYHBfD12RHzGYWuLt6DfG6/af6YvOMyPz74ZPPjBYQGRJkumD2Z48Kqm8s5DJuhLA==", - "path": "mysqlconnector/2.3.5", - "hashPath": "mysqlconnector.2.3.5.nupkg.sha512" - }, - "Newtonsoft.Json/13.0.4": { - "type": "package", - "serviceable": true, - "sha512": "sha512-pdgNNMai3zv51W5aq268sujXUyx7SNdE2bj1wZcWjAQrKMFZV260lbqYop1d2GM67JI1huLRwxo9ZqnfF/lC6A==", - "path": "newtonsoft.json/13.0.4", - "hashPath": "newtonsoft.json.13.0.4.nupkg.sha512" - }, - "Pipelines.Sockets.Unofficial/2.2.8": { - "type": "package", - "serviceable": true, - "sha512": "sha512-zG2FApP5zxSx6OcdJQLbZDk2AVlN2BNQD6MorwIfV6gVj0RRxWPEp2LXAxqDGZqeNV1Zp0BNPcNaey/GXmTdvQ==", - "path": "pipelines.sockets.unofficial/2.2.8", - "hashPath": "pipelines.sockets.unofficial.2.2.8.nupkg.sha512" - }, - "Pomelo.EntityFrameworkCore.MySql/8.0.3": { - "type": "package", - "serviceable": true, - "sha512": "sha512-gOHP6v/nFp5V/FgHqv9mZocGqCLGofihEX9dTbLhiXX3H7SJHmGX70GIPUpiqLT+1jIfDxg1PZh9MTUKuk7Kig==", - "path": "pomelo.entityframeworkcore.mysql/8.0.3", - "hashPath": "pomelo.entityframeworkcore.mysql.8.0.3.nupkg.sha512" - }, - "RabbitMQ.Client/7.1.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-y3c6ulgULScWthHw5PLM1ShHRLhxg0vCtzX/hh61gRgNecL3ZC3WoBW2HYHoXOVRqTl99Br9E7CZEytGZEsCyQ==", - "path": "rabbitmq.client/7.1.2", - "hashPath": "rabbitmq.client.7.1.2.nupkg.sha512" - }, - "RedLock.net/2.3.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-jlrALAArm4dCE292U3EtRoMnVKJ9M6sunbZn/oG5OuzlGtTpusXBfvDrnGWbgGDlWV027f5E9H5CiVnPxiq8+g==", - "path": "redlock.net/2.3.2", - "hashPath": "redlock.net.2.3.2.nupkg.sha512" - }, - "StackExchange.Redis/2.9.32": { - "type": "package", - "serviceable": true, - "sha512": "sha512-j5Rjbf7gWz5izrn0UWQy9RlQY4cQDPkwJfVqATnVsOa/+zzJrps12LOgacMsDl/Vit2f01cDiDkG/Rst8v2iGw==", - "path": "stackexchange.redis/2.9.32", - "hashPath": "stackexchange.redis.2.9.32.nupkg.sha512" - }, - "Swashbuckle.AspNetCore/6.6.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-+NB4UYVYN6AhDSjW0IJAd1AGD8V33gemFNLPaxKTtPkHB+HaKAKf9MGAEUPivEWvqeQfcKIw8lJaHq6LHljRuw==", - "path": "swashbuckle.aspnetcore/6.6.2", - "hashPath": "swashbuckle.aspnetcore.6.6.2.nupkg.sha512" - }, - "Swashbuckle.AspNetCore.Swagger/6.6.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ovgPTSYX83UrQUWiS5vzDcJ8TEX1MAxBgDFMK45rC24MorHEPQlZAHlaXj/yth4Zf6xcktpUgTEBvffRQVwDKA==", - "path": "swashbuckle.aspnetcore.swagger/6.6.2", - "hashPath": "swashbuckle.aspnetcore.swagger.6.6.2.nupkg.sha512" - }, - "Swashbuckle.AspNetCore.SwaggerGen/6.6.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-zv4ikn4AT1VYuOsDCpktLq4QDq08e7Utzbir86M5/ZkRaLXbCPF11E1/vTmOiDzRTl0zTZINQU2qLKwTcHgfrA==", - "path": "swashbuckle.aspnetcore.swaggergen/6.6.2", - "hashPath": "swashbuckle.aspnetcore.swaggergen.6.6.2.nupkg.sha512" - }, - "Swashbuckle.AspNetCore.SwaggerUI/6.6.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-mBBb+/8Hm2Q3Wygag+hu2jj69tZW5psuv0vMRXY07Wy+Rrj40vRP8ZTbKBhs91r45/HXT4aY4z0iSBYx1h6JvA==", - "path": "swashbuckle.aspnetcore.swaggerui/6.6.2", - "hashPath": "swashbuckle.aspnetcore.swaggerui.6.6.2.nupkg.sha512" - }, - "System.Buffers/4.6.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-lN6tZi7Q46zFzAbRYXTIvfXcyvQQgxnY7Xm6C6xQ9784dEL1amjM6S6Iw4ZpsvesAKnRVsM4scrDQaDqSClkjA==", - "path": "system.buffers/4.6.0", - "hashPath": "system.buffers.4.6.0.nupkg.sha512" - }, - "System.CodeDom/4.4.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-2sCCb7doXEwtYAbqzbF/8UAeDRMNmPaQbU2q50Psg1J9KzumyVVCgKQY8s53WIPTufNT0DpSe9QRvVjOzfDWBA==", - "path": "system.codedom/4.4.0", - "hashPath": "system.codedom.4.4.0.nupkg.sha512" - }, - "System.Collections.Immutable/6.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-l4zZJ1WU2hqpQQHXz1rvC3etVZN+2DLmQMO79FhOTZHMn8tDRr+WU287sbomD0BETlmKDn0ygUgVy9k5xkkJdA==", - "path": "system.collections.immutable/6.0.0", - "hashPath": "system.collections.immutable.6.0.0.nupkg.sha512" - }, - "System.Composition/6.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-d7wMuKQtfsxUa7S13tITC8n1cQzewuhD5iDjZtK2prwFfKVzdYtgrTHgjaV03Zq7feGQ5gkP85tJJntXwInsJA==", - "path": "system.composition/6.0.0", - "hashPath": "system.composition.6.0.0.nupkg.sha512" - }, - "System.Composition.AttributedModel/6.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-WK1nSDLByK/4VoC7fkNiFuTVEiperuCN/Hyn+VN30R+W2ijO1d0Z2Qm0ScEl9xkSn1G2MyapJi8xpf4R8WRa/w==", - "path": "system.composition.attributedmodel/6.0.0", - "hashPath": "system.composition.attributedmodel.6.0.0.nupkg.sha512" - }, - "System.Composition.Convention/6.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-XYi4lPRdu5bM4JVJ3/UIHAiG6V6lWWUlkhB9ab4IOq0FrRsp0F4wTyV4Dj+Ds+efoXJ3qbLqlvaUozDO7OLeXA==", - "path": "system.composition.convention/6.0.0", - "hashPath": "system.composition.convention.6.0.0.nupkg.sha512" - }, - "System.Composition.Hosting/6.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-w/wXjj7kvxuHPLdzZ0PAUt++qJl03t7lENmb2Oev0n3zbxyNULbWBlnd5J5WUMMv15kg5o+/TCZFb6lSwfaUUQ==", - "path": "system.composition.hosting/6.0.0", - "hashPath": "system.composition.hosting.6.0.0.nupkg.sha512" - }, - "System.Composition.Runtime/6.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-qkRH/YBaMPTnzxrS5RDk1juvqed4A6HOD/CwRcDGyPpYps1J27waBddiiq1y93jk2ZZ9wuA/kynM+NO0kb3PKg==", - "path": "system.composition.runtime/6.0.0", - "hashPath": "system.composition.runtime.6.0.0.nupkg.sha512" - }, - "System.Composition.TypedParts/6.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-iUR1eHrL8Cwd82neQCJ00MpwNIBs4NZgXzrPqx8NJf/k4+mwBO0XCRmHYJT4OLSwDDqh5nBLJWkz5cROnrGhRA==", - "path": "system.composition.typedparts/6.0.0", - "hashPath": "system.composition.typedparts.6.0.0.nupkg.sha512" - }, - "System.Diagnostics.DiagnosticSource/10.0.2": { - "type": "package", - "serviceable": true, - "sha512": "sha512-lYWBy8fKkJHaRcOuw30d67PrtVjR5754sz5Wl76s8P+vJ9FSThh9b7LIcTSODx1LY7NB3Srvg+JMnzd67qNZOw==", - "path": "system.diagnostics.diagnosticsource/10.0.2", - "hashPath": "system.diagnostics.diagnosticsource.10.0.2.nupkg.sha512" - }, - "System.IdentityModel.Tokens.Jwt/8.14.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-EYGgN/S+HK7S6F3GaaPLFAfK0UzMrkXFyWCvXpQWFYmZln3dqtbyIO7VuTM/iIIPMzkelg8ZLlBPvMhxj6nOAA==", - "path": "system.identitymodel.tokens.jwt/8.14.0", - "hashPath": "system.identitymodel.tokens.jwt.8.14.0.nupkg.sha512" - }, - "System.IO.Pipelines/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-FHNOatmUq0sqJOkTx+UF/9YK1f180cnW5FVqnQMvYUN0elp6wFzbtPSiqbo1/ru8ICp43JM1i7kKkk6GsNGHlA==", - "path": "system.io.pipelines/8.0.0", - "hashPath": "system.io.pipelines.8.0.0.nupkg.sha512" - }, - "System.Net.WebSockets.WebSocketProtocol/5.1.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-cVTT/Zw4JuUeX8H0tdWii0OMHsA5MY2PaFYOq/Hstw0jk479jZ+f8baCicWFNzJlCPWAe0uoNCELoB5eNmaMqA==", - "path": "system.net.websockets.websocketprotocol/5.1.0", - "hashPath": "system.net.websockets.websocketprotocol.5.1.0.nupkg.sha512" - }, - "System.Reflection.Emit/4.7.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VR4kk8XLKebQ4MZuKuIni/7oh+QGFmZW3qORd1GvBq/8026OpW501SzT/oypwiQl4TvT8ErnReh/NzY9u+C6wQ==", - "path": "system.reflection.emit/4.7.0", - "hashPath": "system.reflection.emit.4.7.0.nupkg.sha512" - }, - "System.Reflection.Metadata/6.0.1": { - "type": "package", - "serviceable": true, - "sha512": "sha512-III/lNMSn0ZRBuM9m5Cgbiho5j81u0FAEagFX5ta2DKbljZ3T0IpD8j+BIiHQPeKqJppWS9bGEp6JnKnWKze0g==", - "path": "system.reflection.metadata/6.0.1", - "hashPath": "system.reflection.metadata.6.0.1.nupkg.sha512" - }, - "System.Runtime.CompilerServices.Unsafe/6.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==", - "path": "system.runtime.compilerservices.unsafe/6.0.0", - "hashPath": "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512" - }, - "System.Text.Encoding.CodePages/6.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-ZFCILZuOvtKPauZ/j/swhvw68ZRi9ATCfvGbk1QfydmcXBkIWecWKn/250UH7rahZ5OoDBaiAudJtPvLwzw85A==", - "path": "system.text.encoding.codepages/6.0.0", - "hashPath": "system.text.encoding.codepages.6.0.0.nupkg.sha512" - }, - "System.Text.Encodings.Web/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ==", - "path": "system.text.encodings.web/8.0.0", - "hashPath": "system.text.encodings.web.8.0.0.nupkg.sha512" - }, - "System.Threading.Channels/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-CMaFr7v+57RW7uZfZkPExsPB6ljwzhjACWW1gfU35Y56rk72B/Wu+sTqxVmGSk4SFUlPc3cjeKND0zktziyjBA==", - "path": "system.threading.channels/8.0.0", - "hashPath": "system.threading.channels.8.0.0.nupkg.sha512" - }, - "System.Threading.RateLimiting/8.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-7mu9v0QDv66ar3DpGSZHg9NuNcxDaaAcnMULuZlaTpP9+hwXhrxNGsF5GmLkSHxFdb5bBc1TzeujsRgTrPWi+Q==", - "path": "system.threading.ratelimiting/8.0.0", - "hashPath": "system.threading.ratelimiting.8.0.0.nupkg.sha512" - } - } +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v8.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v8.0": { + "IM_API/1.0.0": { + "dependencies": { + "AutoMapper": "12.0.1", + "AutoMapper.Extensions.Microsoft.DependencyInjection": "12.0.0", + "MassTransit.RabbitMQ": "8.5.5", + "Microsoft.AspNetCore.Authentication.JwtBearer": "8.0.21", + "Microsoft.AspNetCore.SignalR": "1.2.0", + "Microsoft.EntityFrameworkCore.Design": "8.0.21", + "Microsoft.EntityFrameworkCore.Tools": "8.0.21", + "Microsoft.Extensions.Caching.StackExchangeRedis": "10.0.2", + "Microsoft.VisualStudio.Azure.Containers.Tools.Targets": "1.22.1", + "Newtonsoft.Json": "13.0.4", + "Pomelo.EntityFrameworkCore.MySql": "8.0.3", + "RedLock.net": "2.3.2", + "StackExchange.Redis": "2.9.32", + "Swashbuckle.AspNetCore": "6.6.2", + "System.IdentityModel.Tokens.Jwt": "8.14.0" + }, + "runtime": { + "IM_API.dll": {} + } + }, + "AutoMapper/12.0.1": { + "dependencies": { + "Microsoft.CSharp": "4.7.0" + }, + "runtime": { + "lib/netstandard2.1/AutoMapper.dll": { + "assemblyVersion": "12.0.0.0", + "fileVersion": "12.0.1.0" + } + } + }, + "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.0": { + "dependencies": { + "AutoMapper": "12.0.1", + "Microsoft.Extensions.Options": "10.0.2" + }, + "runtime": { + "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll": { + "assemblyVersion": "12.0.0.0", + "fileVersion": "12.0.0.0" + } + } + }, + "Humanizer.Core/2.14.1": { + "runtime": { + "lib/net6.0/Humanizer.dll": { + "assemblyVersion": "2.14.0.0", + "fileVersion": "2.14.1.48190" + } + } + }, + "MassTransit/8.5.5": { + "dependencies": { + "MassTransit.Abstractions": "8.5.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "Microsoft.Extensions.Diagnostics.HealthChecks": "8.0.0", + "Microsoft.Extensions.Hosting.Abstractions": "8.0.1", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2" + }, + "runtime": { + "lib/net8.0/MassTransit.dll": { + "assemblyVersion": "8.5.5.0", + "fileVersion": "8.5.5.0" + } + } + }, + "MassTransit.Abstractions/8.5.5": { + "runtime": { + "lib/net8.0/MassTransit.Abstractions.dll": { + "assemblyVersion": "8.5.5.0", + "fileVersion": "8.5.5.0" + } + } + }, + "MassTransit.RabbitMQ/8.5.5": { + "dependencies": { + "MassTransit": "8.5.5", + "RabbitMQ.Client": "7.1.2" + }, + "runtime": { + "lib/net8.0/MassTransit.RabbitMqTransport.dll": { + "assemblyVersion": "8.5.5.0", + "fileVersion": "8.5.5.0" + } + } + }, + "Microsoft.AspNetCore.Authentication.Abstractions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2" + } + }, + "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.21": { + "dependencies": { + "Microsoft.IdentityModel.Protocols.OpenIdConnect": "7.1.2" + }, + "runtime": { + "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { + "assemblyVersion": "8.0.21.0", + "fileVersion": "8.0.2125.47515" + } + } + }, + "Microsoft.AspNetCore.Authorization/2.3.0": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2" + } + }, + "Microsoft.AspNetCore.Authorization.Policy/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Authentication.Abstractions": "2.3.0", + "Microsoft.AspNetCore.Authorization": "2.3.0" + } + }, + "Microsoft.AspNetCore.Connections.Abstractions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Features": "2.3.0", + "System.IO.Pipelines": "8.0.0" + } + }, + "Microsoft.AspNetCore.Hosting.Abstractions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Hosting.Server.Abstractions": "2.3.0", + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", + "Microsoft.Extensions.Hosting.Abstractions": "8.0.1" + } + }, + "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Features": "2.3.0", + "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" + } + }, + "Microsoft.AspNetCore.Http/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", + "Microsoft.AspNetCore.WebUtilities": "2.3.0", + "Microsoft.Extensions.ObjectPool": "8.0.11", + "Microsoft.Extensions.Options": "10.0.2", + "Microsoft.Net.Http.Headers": "2.3.0" + } + }, + "Microsoft.AspNetCore.Http.Abstractions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Features": "2.3.0", + "System.Text.Encodings.Web": "8.0.0" + } + }, + "Microsoft.AspNetCore.Http.Connections/1.2.0": { + "dependencies": { + "Microsoft.AspNetCore.Authorization.Policy": "2.3.0", + "Microsoft.AspNetCore.Hosting.Abstractions": "2.3.0", + "Microsoft.AspNetCore.Http": "2.3.0", + "Microsoft.AspNetCore.Http.Connections.Common": "1.2.0", + "Microsoft.AspNetCore.Routing": "2.3.0", + "Microsoft.AspNetCore.WebSockets": "2.3.0", + "Newtonsoft.Json": "13.0.4", + "System.Net.WebSockets.WebSocketProtocol": "5.1.0" + } + }, + "Microsoft.AspNetCore.Http.Connections.Common/1.2.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "2.3.0", + "Newtonsoft.Json": "13.0.4", + "System.Buffers": "4.6.0", + "System.IO.Pipelines": "8.0.0" + } + }, + "Microsoft.AspNetCore.Http.Extensions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", + "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0", + "Microsoft.Net.Http.Headers": "2.3.0", + "System.Buffers": "4.6.0" + } + }, + "Microsoft.AspNetCore.Http.Features/2.3.0": { + "dependencies": { + "Microsoft.Extensions.Primitives": "10.0.2" + } + }, + "Microsoft.AspNetCore.Routing/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Extensions": "2.3.0", + "Microsoft.AspNetCore.Routing.Abstractions": "2.3.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.ObjectPool": "8.0.11", + "Microsoft.Extensions.Options": "10.0.2" + } + }, + "Microsoft.AspNetCore.Routing.Abstractions/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0" + } + }, + "Microsoft.AspNetCore.SignalR/1.2.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Connections": "1.2.0", + "Microsoft.AspNetCore.SignalR.Core": "1.2.0", + "Microsoft.AspNetCore.WebSockets": "2.3.0", + "System.IO.Pipelines": "8.0.0" + } + }, + "Microsoft.AspNetCore.SignalR.Common/1.2.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "2.3.0", + "Microsoft.Extensions.Options": "10.0.2", + "Newtonsoft.Json": "13.0.4", + "System.Buffers": "4.6.0" + } + }, + "Microsoft.AspNetCore.SignalR.Core/1.2.0": { + "dependencies": { + "Microsoft.AspNetCore.Authorization": "2.3.0", + "Microsoft.AspNetCore.SignalR.Common": "1.2.0", + "Microsoft.AspNetCore.SignalR.Protocols.Json": "1.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "System.IO.Pipelines": "8.0.0", + "System.Reflection.Emit": "4.7.0", + "System.Threading.Channels": "8.0.0" + } + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/1.2.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "1.2.0", + "Newtonsoft.Json": "13.0.4", + "System.IO.Pipelines": "8.0.0" + } + }, + "Microsoft.AspNetCore.WebSockets/2.3.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Extensions": "2.3.0", + "Microsoft.Extensions.Options": "10.0.2", + "System.Net.WebSockets.WebSocketProtocol": "5.1.0" + } + }, + "Microsoft.AspNetCore.WebUtilities/2.3.0": { + "dependencies": { + "Microsoft.Net.Http.Headers": "2.3.0", + "System.Text.Encodings.Web": "8.0.0" + } + }, + "Microsoft.Bcl.AsyncInterfaces/6.0.0": { + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.21.52210" + } + } + }, + "Microsoft.CodeAnalysis.Analyzers/3.3.3": {}, + "Microsoft.CodeAnalysis.Common/4.5.0": { + "dependencies": { + "Microsoft.CodeAnalysis.Analyzers": "3.3.3", + "System.Collections.Immutable": "6.0.0", + "System.Reflection.Metadata": "6.0.1", + "System.Runtime.CompilerServices.Unsafe": "6.0.0", + "System.Text.Encoding.CodePages": "6.0.0" + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll": { + "assemblyVersion": "4.5.0.0", + "fileVersion": "4.500.23.10905" + } + }, + "resources": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.CSharp/4.5.0": { + "dependencies": { + "Microsoft.CodeAnalysis.Common": "4.5.0" + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll": { + "assemblyVersion": "4.5.0.0", + "fileVersion": "4.500.23.10905" + } + }, + "resources": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.CSharp.Workspaces/4.5.0": { + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.CodeAnalysis.CSharp": "4.5.0", + "Microsoft.CodeAnalysis.Common": "4.5.0", + "Microsoft.CodeAnalysis.Workspaces.Common": "4.5.0" + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": { + "assemblyVersion": "4.5.0.0", + "fileVersion": "4.500.23.10905" + } + }, + "resources": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CodeAnalysis.Workspaces.Common/4.5.0": { + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.Bcl.AsyncInterfaces": "6.0.0", + "Microsoft.CodeAnalysis.Common": "4.5.0", + "System.Composition": "6.0.0", + "System.IO.Pipelines": "8.0.0", + "System.Threading.Channels": "8.0.0" + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll": { + "assemblyVersion": "4.5.0.0", + "fileVersion": "4.500.23.10905" + } + }, + "resources": { + "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.CSharp/4.7.0": {}, + "Microsoft.EntityFrameworkCore/8.0.21": { + "dependencies": { + "Microsoft.EntityFrameworkCore.Abstractions": "8.0.21", + "Microsoft.EntityFrameworkCore.Analyzers": "8.0.21", + "Microsoft.Extensions.Caching.Memory": "8.0.1", + "Microsoft.Extensions.Logging": "8.0.1" + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { + "assemblyVersion": "8.0.21.0", + "fileVersion": "8.0.2125.47512" + } + } + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.21": { + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "assemblyVersion": "8.0.21.0", + "fileVersion": "8.0.2125.47512" + } + } + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.21": {}, + "Microsoft.EntityFrameworkCore.Design/8.0.21": { + "dependencies": { + "Humanizer.Core": "2.14.1", + "Microsoft.CodeAnalysis.CSharp.Workspaces": "4.5.0", + "Microsoft.EntityFrameworkCore.Relational": "8.0.21", + "Microsoft.Extensions.DependencyModel": "8.0.2", + "Mono.TextTemplating": "2.2.1" + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Design.dll": { + "assemblyVersion": "8.0.21.0", + "fileVersion": "8.0.2125.47512" + } + } + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.21": { + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.21", + "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "assemblyVersion": "8.0.21.0", + "fileVersion": "8.0.2125.47512" + } + } + }, + "Microsoft.EntityFrameworkCore.Tools/8.0.21": { + "dependencies": { + "Microsoft.EntityFrameworkCore.Design": "8.0.21" + } + }, + "Microsoft.Extensions.ApiDescription.Server/6.0.5": {}, + "Microsoft.Extensions.Caching.Abstractions/10.0.2": { + "dependencies": { + "Microsoft.Extensions.Primitives": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "10.0.2", + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2", + "Microsoft.Extensions.Primitives": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1024.46610" + } + } + }, + "Microsoft.Extensions.Caching.StackExchangeRedis/10.0.2": { + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "10.0.2", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2", + "StackExchange.Redis": "2.9.32" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Caching.StackExchangeRedis.dll": { + "assemblyVersion": "10.0.2.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "dependencies": { + "Microsoft.Extensions.Primitives": "10.0.2" + } + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1024.46610" + } + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "Microsoft.Extensions.DependencyModel/8.0.2": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyModel.dll": { + "assemblyVersion": "8.0.0.2", + "fileVersion": "8.0.1024.46610" + } + } + }, + "Microsoft.Extensions.Diagnostics.Abstractions/8.0.1": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Diagnostics.Abstractions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1024.46610" + } + } + }, + "Microsoft.Extensions.Diagnostics.HealthChecks/8.0.0": { + "dependencies": { + "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions": "8.0.0", + "Microsoft.Extensions.Hosting.Abstractions": "8.0.1", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2" + } + }, + "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/8.0.0": {}, + "Microsoft.Extensions.FileProviders.Abstractions/8.0.0": { + "dependencies": { + "Microsoft.Extensions.Primitives": "10.0.2" + } + }, + "Microsoft.Extensions.Hosting.Abstractions/8.0.1": { + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "8.0.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "Microsoft.Extensions.Diagnostics.Abstractions": "8.0.1", + "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Hosting.Abstractions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1024.46610" + } + } + }, + "Microsoft.Extensions.Logging/8.0.1": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "8.0.1", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1024.46610" + } + } + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.2": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "System.Diagnostics.DiagnosticSource": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "Microsoft.Extensions.ObjectPool/8.0.11": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.ObjectPool.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1124.52116" + } + } + }, + "Microsoft.Extensions.Options/10.0.2": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "Microsoft.Extensions.Primitives": "10.0.2" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "Microsoft.Extensions.Primitives/10.0.2": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "Microsoft.IdentityModel.Abstractions/8.14.0": { + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll": { + "assemblyVersion": "8.14.0.0", + "fileVersion": "8.14.0.60815" + } + } + }, + "Microsoft.IdentityModel.JsonWebTokens/8.14.0": { + "dependencies": { + "Microsoft.IdentityModel.Tokens": "8.14.0" + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll": { + "assemblyVersion": "8.14.0.0", + "fileVersion": "8.14.0.60815" + } + } + }, + "Microsoft.IdentityModel.Logging/8.14.0": { + "dependencies": { + "Microsoft.IdentityModel.Abstractions": "8.14.0" + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Logging.dll": { + "assemblyVersion": "8.14.0.0", + "fileVersion": "8.14.0.60815" + } + } + }, + "Microsoft.IdentityModel.Protocols/7.1.2": { + "dependencies": { + "Microsoft.IdentityModel.Logging": "8.14.0", + "Microsoft.IdentityModel.Tokens": "8.14.0" + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Protocols.dll": { + "assemblyVersion": "7.1.2.0", + "fileVersion": "7.1.2.41121" + } + } + }, + "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.1.2": { + "dependencies": { + "Microsoft.IdentityModel.Protocols": "7.1.2", + "System.IdentityModel.Tokens.Jwt": "8.14.0" + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { + "assemblyVersion": "7.1.2.0", + "fileVersion": "7.1.2.41121" + } + } + }, + "Microsoft.IdentityModel.Tokens/8.14.0": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.IdentityModel.Logging": "8.14.0" + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Tokens.dll": { + "assemblyVersion": "8.14.0.0", + "fileVersion": "8.14.0.60815" + } + } + }, + "Microsoft.Net.Http.Headers/2.3.0": { + "dependencies": { + "Microsoft.Extensions.Primitives": "10.0.2", + "System.Buffers": "4.6.0" + } + }, + "Microsoft.OpenApi/1.6.14": { + "runtime": { + "lib/netstandard2.0/Microsoft.OpenApi.dll": { + "assemblyVersion": "1.6.14.0", + "fileVersion": "1.6.14.0" + } + } + }, + "Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.22.1": {}, + "Mono.TextTemplating/2.2.1": { + "dependencies": { + "System.CodeDom": "4.4.0" + }, + "runtime": { + "lib/netstandard2.0/Mono.TextTemplating.dll": { + "assemblyVersion": "2.2.0.0", + "fileVersion": "2.2.1.1" + } + } + }, + "MySqlConnector/2.3.5": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "10.0.2" + }, + "runtime": { + "lib/net8.0/MySqlConnector.dll": { + "assemblyVersion": "2.0.0.0", + "fileVersion": "2.3.5.0" + } + } + }, + "Newtonsoft.Json/13.0.4": { + "runtime": { + "lib/net6.0/Newtonsoft.Json.dll": { + "assemblyVersion": "13.0.0.0", + "fileVersion": "13.0.4.30916" + } + } + }, + "Pipelines.Sockets.Unofficial/2.2.8": { + "dependencies": { + "System.IO.Pipelines": "8.0.0" + }, + "runtime": { + "lib/net5.0/Pipelines.Sockets.Unofficial.dll": { + "assemblyVersion": "1.0.0.0", + "fileVersion": "2.2.8.1080" + } + } + }, + "Pomelo.EntityFrameworkCore.MySql/8.0.3": { + "dependencies": { + "Microsoft.EntityFrameworkCore.Relational": "8.0.21", + "MySqlConnector": "2.3.5" + }, + "runtime": { + "lib/net8.0/Pomelo.EntityFrameworkCore.MySql.dll": { + "assemblyVersion": "8.0.3.0", + "fileVersion": "8.0.3.0" + } + } + }, + "RabbitMQ.Client/7.1.2": { + "dependencies": { + "System.IO.Pipelines": "8.0.0", + "System.Threading.RateLimiting": "8.0.0" + }, + "runtime": { + "lib/net8.0/RabbitMQ.Client.dll": { + "assemblyVersion": "7.0.0.0", + "fileVersion": "7.1.2.0" + } + } + }, + "RedLock.net/2.3.2": { + "dependencies": { + "Microsoft.Bcl.AsyncInterfaces": "6.0.0", + "Microsoft.Extensions.Logging": "8.0.1", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "StackExchange.Redis": "2.9.32" + }, + "runtime": { + "lib/netstandard2.0/RedLockNet.Abstractions.dll": { + "assemblyVersion": "2.3.2.0", + "fileVersion": "2.3.2.0" + }, + "lib/netstandard2.0/RedLockNet.SERedis.dll": { + "assemblyVersion": "2.3.2.0", + "fileVersion": "2.3.2.0" + } + } + }, + "StackExchange.Redis/2.9.32": { + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Pipelines.Sockets.Unofficial": "2.2.8" + }, + "runtime": { + "lib/net8.0/StackExchange.Redis.dll": { + "assemblyVersion": "2.0.0.0", + "fileVersion": "2.9.32.54708" + } + } + }, + "Swashbuckle.AspNetCore/6.6.2": { + "dependencies": { + "Microsoft.Extensions.ApiDescription.Server": "6.0.5", + "Swashbuckle.AspNetCore.Swagger": "6.6.2", + "Swashbuckle.AspNetCore.SwaggerGen": "6.6.2", + "Swashbuckle.AspNetCore.SwaggerUI": "6.6.2" + } + }, + "Swashbuckle.AspNetCore.Swagger/6.6.2": { + "dependencies": { + "Microsoft.OpenApi": "1.6.14" + }, + "runtime": { + "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": { + "assemblyVersion": "6.6.2.0", + "fileVersion": "6.6.2.401" + } + } + }, + "Swashbuckle.AspNetCore.SwaggerGen/6.6.2": { + "dependencies": { + "Swashbuckle.AspNetCore.Swagger": "6.6.2" + }, + "runtime": { + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { + "assemblyVersion": "6.6.2.0", + "fileVersion": "6.6.2.401" + } + } + }, + "Swashbuckle.AspNetCore.SwaggerUI/6.6.2": { + "runtime": { + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { + "assemblyVersion": "6.6.2.0", + "fileVersion": "6.6.2.401" + } + } + }, + "System.Buffers/4.6.0": {}, + "System.CodeDom/4.4.0": { + "runtime": { + "lib/netstandard2.0/System.CodeDom.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "4.6.25519.3" + } + } + }, + "System.Collections.Immutable/6.0.0": { + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + } + }, + "System.Composition/6.0.0": { + "dependencies": { + "System.Composition.AttributedModel": "6.0.0", + "System.Composition.Convention": "6.0.0", + "System.Composition.Hosting": "6.0.0", + "System.Composition.Runtime": "6.0.0", + "System.Composition.TypedParts": "6.0.0" + } + }, + "System.Composition.AttributedModel/6.0.0": { + "runtime": { + "lib/net6.0/System.Composition.AttributedModel.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.21.52210" + } + } + }, + "System.Composition.Convention/6.0.0": { + "dependencies": { + "System.Composition.AttributedModel": "6.0.0" + }, + "runtime": { + "lib/net6.0/System.Composition.Convention.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.21.52210" + } + } + }, + "System.Composition.Hosting/6.0.0": { + "dependencies": { + "System.Composition.Runtime": "6.0.0" + }, + "runtime": { + "lib/net6.0/System.Composition.Hosting.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.21.52210" + } + } + }, + "System.Composition.Runtime/6.0.0": { + "runtime": { + "lib/net6.0/System.Composition.Runtime.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.21.52210" + } + } + }, + "System.Composition.TypedParts/6.0.0": { + "dependencies": { + "System.Composition.AttributedModel": "6.0.0", + "System.Composition.Hosting": "6.0.0", + "System.Composition.Runtime": "6.0.0" + }, + "runtime": { + "lib/net6.0/System.Composition.TypedParts.dll": { + "assemblyVersion": "6.0.0.0", + "fileVersion": "6.0.21.52210" + } + } + }, + "System.Diagnostics.DiagnosticSource/10.0.2": { + "runtime": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.225.61305" + } + } + }, + "System.IdentityModel.Tokens.Jwt/8.14.0": { + "dependencies": { + "Microsoft.IdentityModel.JsonWebTokens": "8.14.0", + "Microsoft.IdentityModel.Tokens": "8.14.0" + }, + "runtime": { + "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll": { + "assemblyVersion": "8.14.0.0", + "fileVersion": "8.14.0.60815" + } + } + }, + "System.IO.Pipelines/8.0.0": {}, + "System.Net.WebSockets.WebSocketProtocol/5.1.0": { + "runtime": { + "lib/net6.0/System.Net.WebSockets.WebSocketProtocol.dll": { + "assemblyVersion": "5.1.0.0", + "fileVersion": "5.100.24.56208" + } + } + }, + "System.Reflection.Emit/4.7.0": {}, + "System.Reflection.Metadata/6.0.1": { + "dependencies": { + "System.Collections.Immutable": "6.0.0" + } + }, + "System.Runtime.CompilerServices.Unsafe/6.0.0": {}, + "System.Text.Encoding.CodePages/6.0.0": { + "dependencies": { + "System.Runtime.CompilerServices.Unsafe": "6.0.0" + } + }, + "System.Text.Encodings.Web/8.0.0": {}, + "System.Threading.Channels/8.0.0": {}, + "System.Threading.RateLimiting/8.0.0": {} + } + }, + "libraries": { + "IM_API/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "AutoMapper/12.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-hvV62vl6Hp/WfQ24yzo3Co9+OPl8wH8hApwVtgWpiAynVJkUcs7xvehnSftawL8Pe8FrPffBRM3hwzLQqWDNjA==", + "path": "automapper/12.0.1", + "hashPath": "automapper.12.0.1.nupkg.sha512" + }, + "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XCJ4E3oKrbRl1qY9Mr+7uyC0xZj1+bqQjmQRWTiTKiVuuXTny+7YFWHi20tPjwkMukLbicN6yGlDy5PZ4wyi1w==", + "path": "automapper.extensions.microsoft.dependencyinjection/12.0.0", + "hashPath": "automapper.extensions.microsoft.dependencyinjection.12.0.0.nupkg.sha512" + }, + "Humanizer.Core/2.14.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lQKvtaTDOXnoVJ20ibTuSIOf2i0uO0MPbDhd1jm238I+U/2ZnRENj0cktKZhtchBMtCUSRQ5v4xBCUbKNmyVMw==", + "path": "humanizer.core/2.14.1", + "hashPath": "humanizer.core.2.14.1.nupkg.sha512" + }, + "MassTransit/8.5.5": { + "type": "package", + "serviceable": true, + "sha512": "sha512-bSg8k5q+rP1s+dIGXLLbctqDGdIkfDjdxwNWtCUH7xNCN9ZuM7mqSPQPIFgaYIi34e81m4FqAqo4CAHuWPkhRA==", + "path": "masstransit/8.5.5", + "hashPath": "masstransit.8.5.5.nupkg.sha512" + }, + "MassTransit.Abstractions/8.5.5": { + "type": "package", + "serviceable": true, + "sha512": "sha512-0mn2Ay17dD6z5tgSLjbVRlldSbL9iowzFEfVgVfBXVG5ttz9dSWeR4TrdD6pqH93GWXp4CvSmF8i1HqxLX7DZw==", + "path": "masstransit.abstractions/8.5.5", + "hashPath": "masstransit.abstractions.8.5.5.nupkg.sha512" + }, + "MassTransit.RabbitMQ/8.5.5": { + "type": "package", + "serviceable": true, + "sha512": "sha512-UxWn4o90YVMF9PBkJeoskOFPneh6YtnI1fLJHtvZiSAG0eoiRrWPGa+6FQCvjkQ/ljCKfjzok2eGZc/vmNZ01A==", + "path": "masstransit.rabbitmq/8.5.5", + "hashPath": "masstransit.rabbitmq.8.5.5.nupkg.sha512" + }, + "Microsoft.AspNetCore.Authentication.Abstractions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ve6uvLwKNRkfnO/QeN9M8eUJ49lCnWv/6/9p6iTEuiI6Rtsz+myaBAjdMzLuTViQY032xbTF5AdZF5BJzJJyXQ==", + "path": "microsoft.aspnetcore.authentication.abstractions/2.3.0", + "hashPath": "microsoft.aspnetcore.authentication.abstractions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.21": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ZuUpJ4DvmVArmTlyGGg+b9IdKgd8Kw0SmEzhjy4dQw8R6rxfNqCXfGvGm3ld7xlrgthJFou/le9tadsSyjFLuw==", + "path": "microsoft.aspnetcore.authentication.jwtbearer/8.0.21", + "hashPath": "microsoft.aspnetcore.authentication.jwtbearer.8.0.21.nupkg.sha512" + }, + "Microsoft.AspNetCore.Authorization/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-2/aBgLqBXva/+w8pzRNY8ET43Gi+dr1gv/7ySfbsh23lTK6IAgID5MGUEa1hreNIF+0XpW4tX7QwVe70+YvaPg==", + "path": "microsoft.aspnetcore.authorization/2.3.0", + "hashPath": "microsoft.aspnetcore.authorization.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Authorization.Policy/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-vn31uQ1dA1MIV2WNNDOOOm88V5KgR9esfi0LyQ6eVaGq2h0Yw+R29f5A6qUNJt+RccS3qkYayylAy9tP1wV+7Q==", + "path": "microsoft.aspnetcore.authorization.policy/2.3.0", + "hashPath": "microsoft.aspnetcore.authorization.policy.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Connections.Abstractions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ULFSa+/L+WiAHVlIFHyg0OmHChU9Hx+K+xnt0hbIU5XmT1EGy0pNDx23QAzDtAy9jxQrTG6MX0MdvMeU4D4c7w==", + "path": "microsoft.aspnetcore.connections.abstractions/2.3.0", + "hashPath": "microsoft.aspnetcore.connections.abstractions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Hosting.Abstractions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-4ivq53W2k6Nj4eez9wc81ytfGj6HR1NaZJCpOrvghJo9zHuQF57PLhPoQH5ItyCpHXnrN/y7yJDUm+TGYzrx0w==", + "path": "microsoft.aspnetcore.hosting.abstractions/2.3.0", + "hashPath": "microsoft.aspnetcore.hosting.abstractions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-F5iHx7odAbFKBV1DNPDkFFcVmD5Tk7rk+tYm3LMQxHEFFdjlg5QcYb5XhHAefl5YaaPeG6ad+/ck8kSG3/D6kw==", + "path": "microsoft.aspnetcore.hosting.server.abstractions/2.3.0", + "hashPath": "microsoft.aspnetcore.hosting.server.abstractions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-I9azEG2tZ4DDHAFgv+N38e6Yhttvf+QjE2j2UYyCACE7Swm5/0uoihCMWZ87oOZYeqiEFSxbsfpT71OYHe2tpw==", + "path": "microsoft.aspnetcore.http/2.3.0", + "hashPath": "microsoft.aspnetcore.http.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Abstractions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-39r9PPrjA6s0blyFv5qarckjNkaHRA5B+3b53ybuGGNTXEj1/DStQJ4NWjFL6QTRQpL9zt7nDyKxZdJOlcnq+Q==", + "path": "microsoft.aspnetcore.http.abstractions/2.3.0", + "hashPath": "microsoft.aspnetcore.http.abstractions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections/1.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VYMCOLvdT0y3O9lk4jUuIs8+re7u5+i+ka6ZZ6fIzSJ94c/JeMnAOOg39EB2i4crPXvLoiSdzKWlNPJgTbCZ2g==", + "path": "microsoft.aspnetcore.http.connections/1.2.0", + "hashPath": "microsoft.aspnetcore.http.connections.1.2.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections.Common/1.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-yUA7eg6kv7Wbz5TCW4PqS5/kYE5VxUIEDvoxjw4p1RwS2LGm84F9fBtM0mD6wrRfiv1NUyJ7WBjn3PWd/ccO+w==", + "path": "microsoft.aspnetcore.http.connections.common/1.2.0", + "hashPath": "microsoft.aspnetcore.http.connections.common.1.2.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Extensions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-EY2u/wFF5jsYwGXXswfQWrSsFPmiXsniAlUWo3rv/MGYf99ZFsENDnZcQP6W3c/+xQmQXq0NauzQ7jyy+o1LDQ==", + "path": "microsoft.aspnetcore.http.extensions/2.3.0", + "hashPath": "microsoft.aspnetcore.http.extensions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Features/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-f10WUgcsKqrkmnz6gt8HeZ7kyKjYN30PO7cSic1lPtH7paPtnQqXPOveul/SIPI43PhRD4trttg4ywnrEmmJpA==", + "path": "microsoft.aspnetcore.http.features/2.3.0", + "hashPath": "microsoft.aspnetcore.http.features.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Routing/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-no5/VC0CAQuT4PK4rp2K5fqwuSfzr2mdB6m1XNfWVhHnwzpRQzKAu9flChiT/JTLKwVI0Vq2MSmSW2OFMDCNXg==", + "path": "microsoft.aspnetcore.routing/2.3.0", + "hashPath": "microsoft.aspnetcore.routing.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Routing.Abstractions/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ZkFpUrSmp6TocxZLBEX3IBv5dPMbQuMs6L/BPl0WRfn32UVOtNYJQ0bLdh3cL9LMV0rmTW/5R0w8CBYxr0AOUw==", + "path": "microsoft.aspnetcore.routing.abstractions/2.3.0", + "hashPath": "microsoft.aspnetcore.routing.abstractions.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR/1.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XoCcsOTdtBiXyOzUtpbCl0IaqMOYjnr+6dbDxvUCFn7NR6bu7CwrlQ3oQzkltTwDZH0b6VEUN9wZPOYvPHi+Lg==", + "path": "microsoft.aspnetcore.signalr/1.2.0", + "hashPath": "microsoft.aspnetcore.signalr.1.2.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Common/1.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FZeXIaoWqe145ZPdfiptwkw/sP1BX1UD0706GNBwwoaFiKsNbLEl/Trhj2+idlp3qbX1BEwkQesKNxkopVY5Xg==", + "path": "microsoft.aspnetcore.signalr.common/1.2.0", + "hashPath": "microsoft.aspnetcore.signalr.common.1.2.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Core/1.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-eZTuMkSDw1uwjhLhJbMxgW2Cuyxfn0Kfqm8OBmqvuzE9Qc/VVzh8dGrAp2F9Pk7XKTDHmlhc5RTLcPPAZ5PSZw==", + "path": "microsoft.aspnetcore.signalr.core/1.2.0", + "hashPath": "microsoft.aspnetcore.signalr.core.1.2.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/1.2.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-hNvZ7kQxp5Udqd/IFWViU35bUJvi4xnNzjkF28HRvrdrS7JNsIASTvMqArP6HLQUc3j6nlUOeShNhVmgI1wzHg==", + "path": "microsoft.aspnetcore.signalr.protocols.json/1.2.0", + "hashPath": "microsoft.aspnetcore.signalr.protocols.json.1.2.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.WebSockets/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-+T4zpnVPkIjvvkyhTH3WBJlTfqmTBRozvnMudAUDvcb4e+NrWf52q8BXh52rkCrBgX6Cudf6F/UhZwTowyBtKg==", + "path": "microsoft.aspnetcore.websockets/2.3.0", + "hashPath": "microsoft.aspnetcore.websockets.2.3.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.WebUtilities/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-trbXdWzoAEUVd0PE2yTopkz4kjZaAIA7xUWekd5uBw+7xE8Do/YOVTeb9d9koPTlbtZT539aESJjSLSqD8eYrQ==", + "path": "microsoft.aspnetcore.webutilities/2.3.0", + "hashPath": "microsoft.aspnetcore.webutilities.2.3.0.nupkg.sha512" + }, + "Microsoft.Bcl.AsyncInterfaces/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-UcSjPsst+DfAdJGVDsu346FX0ci0ah+lw3WRtn18NUwEqRt70HaOQ7lI72vy3+1LxtqI3T5GWwV39rQSrCzAeg==", + "path": "microsoft.bcl.asyncinterfaces/6.0.0", + "hashPath": "microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512" + }, + "Microsoft.CodeAnalysis.Analyzers/3.3.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-j/rOZtLMVJjrfLRlAMckJLPW/1rze9MT1yfWqSIbUPGRu1m1P0fuo9PmqapwsmePfGB5PJrudQLvmUOAMF0DqQ==", + "path": "microsoft.codeanalysis.analyzers/3.3.3", + "hashPath": "microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512" + }, + "Microsoft.CodeAnalysis.Common/4.5.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lwAbIZNdnY0SUNoDmZHkVUwLO8UyNnyyh1t/4XsbFxi4Ounb3xszIYZaWhyj5ZjyfcwqwmtMbE7fUTVCqQEIdQ==", + "path": "microsoft.codeanalysis.common/4.5.0", + "hashPath": "microsoft.codeanalysis.common.4.5.0.nupkg.sha512" + }, + "Microsoft.CodeAnalysis.CSharp/4.5.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-cM59oMKAOxvdv76bdmaKPy5hfj+oR+zxikWoueEB7CwTko7mt9sVKZI8Qxlov0C/LuKEG+WQwifepqL3vuTiBQ==", + "path": "microsoft.codeanalysis.csharp/4.5.0", + "hashPath": "microsoft.codeanalysis.csharp.4.5.0.nupkg.sha512" + }, + "Microsoft.CodeAnalysis.CSharp.Workspaces/4.5.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-h74wTpmGOp4yS4hj+EvNzEiPgg/KVs2wmSfTZ81upJZOtPkJsVkgfsgtxxqmAeapjT/vLKfmYV0bS8n5MNVP+g==", + "path": "microsoft.codeanalysis.csharp.workspaces/4.5.0", + "hashPath": "microsoft.codeanalysis.csharp.workspaces.4.5.0.nupkg.sha512" + }, + "Microsoft.CodeAnalysis.Workspaces.Common/4.5.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-l4dDRmGELXG72XZaonnOeORyD/T5RpEu5LGHOUIhnv+MmUWDY/m1kWXGwtcgQ5CJ5ynkFiRnIYzTKXYjUs7rbw==", + "path": "microsoft.codeanalysis.workspaces.common/4.5.0", + "hashPath": "microsoft.codeanalysis.workspaces.common.4.5.0.nupkg.sha512" + }, + "Microsoft.CSharp/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==", + "path": "microsoft.csharp/4.7.0", + "hashPath": "microsoft.csharp.4.7.0.nupkg.sha512" + }, + "Microsoft.EntityFrameworkCore/8.0.21": { + "type": "package", + "serviceable": true, + "sha512": "sha512-WgCdRIS+hpq95zJo6oI9tvyQV/0EH9qJiD4FL60m+ghpHqHY6rY3D793HLe64yD85IHwumuX4hNJeHYeJEvM0g==", + "path": "microsoft.entityframeworkcore/8.0.21", + "hashPath": "microsoft.entityframeworkcore.8.0.21.nupkg.sha512" + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.21": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1ZEXvRk8Rk+MfW06EmSYg7GQJZdOocJf61nezBmC2Kti0barUART0MHWgNzQox1lIzw9uv3A1HWJUjmPswCO6w==", + "path": "microsoft.entityframeworkcore.abstractions/8.0.21", + "hashPath": "microsoft.entityframeworkcore.abstractions.8.0.21.nupkg.sha512" + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.21": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MGX1NkW44ju8yIzfg+ao/YITHyA23EThp8HfuNp5zaqihL+kNORVMUUnewBjakiCq0938bzFKu9HRmZsXS4b2g==", + "path": "microsoft.entityframeworkcore.analyzers/8.0.21", + "hashPath": "microsoft.entityframeworkcore.analyzers.8.0.21.nupkg.sha512" + }, + "Microsoft.EntityFrameworkCore.Design/8.0.21": { + "type": "package", + "serviceable": true, + "sha512": "sha512-q7EP42PSWPKkyztgsv1EmHAFjreN2fqww77L2Tjhp2dwfEjidgHjtX6yrZBDUbIFva5Y87xAdv9hQoBAUZLryw==", + "path": "microsoft.entityframeworkcore.design/8.0.21", + "hashPath": "microsoft.entityframeworkcore.design.8.0.21.nupkg.sha512" + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.21": { + "type": "package", + "serviceable": true, + "sha512": "sha512-P1ywvCew/jKhbJApuIk2Sm4Ejq/5FOgEh2IooB48juABzGAlfUjW2kBlbevWO9mNK+sMPS2vnf+US8W0fEo46Q==", + "path": "microsoft.entityframeworkcore.relational/8.0.21", + "hashPath": "microsoft.entityframeworkcore.relational.8.0.21.nupkg.sha512" + }, + "Microsoft.EntityFrameworkCore.Tools/8.0.21": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Jmm3WtUyalpgfHEozcD+q0SmbKwMTVsZCz46ws/YHbePScu3PkNMmhn0iUFvi32djCJBCfOvXtQdnJFyXyW6LA==", + "path": "microsoft.entityframeworkcore.tools/8.0.21", + "hashPath": "microsoft.entityframeworkcore.tools.8.0.21.nupkg.sha512" + }, + "Microsoft.Extensions.ApiDescription.Server/6.0.5": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Ckb5EDBUNJdFWyajfXzUIMRkhf52fHZOQuuZg/oiu8y7zDCVwD0iHhew6MnThjHmevanpxL3f5ci2TtHQEN6bw==", + "path": "microsoft.extensions.apidescription.server/6.0.5", + "hashPath": "microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512" + }, + "Microsoft.Extensions.Caching.Abstractions/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-WIRPDa/qoKHmJhTAPCO/zLu9kRLQ2Fd6HD5tzgdXJ3xGEVXDHP6FvakKJjynwKrVDld8H4G4tcbW53wuC/wxMQ==", + "path": "microsoft.extensions.caching.abstractions/10.0.2", + "hashPath": "microsoft.extensions.caching.abstractions.10.0.2.nupkg.sha512" + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==", + "path": "microsoft.extensions.caching.memory/8.0.1", + "hashPath": "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512" + }, + "Microsoft.Extensions.Caching.StackExchangeRedis/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-WEx0VM6KVv4Bf6lwe4WQTd4EixIfw38ZU3u/7zMe+uC5fOyiANu8Os/qyiqv2iEsIJb296tbd2E2BTaWIha3Vg==", + "path": "microsoft.extensions.caching.stackexchangeredis/10.0.2", + "hashPath": "microsoft.extensions.caching.stackexchangeredis.10.0.2.nupkg.sha512" + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==", + "path": "microsoft.extensions.configuration.abstractions/8.0.0", + "hashPath": "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==", + "path": "microsoft.extensions.dependencyinjection/8.0.1", + "hashPath": "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-zOIurr59+kUf9vNcsUkCvKWZv+fPosUZXURZesYkJCvl0EzTc9F7maAO4Cd2WEV7ZJJ0AZrFQvuH6Npph9wdBw==", + "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.2", + "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.2.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyModel/8.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-mUBDZZRgZrSyFOsJ2qJJ9fXfqd/kXJwf3AiDoqLD9m6TjY5OO/vLNOb9fb4juC0487eq4hcGN/M2Rh/CKS7QYw==", + "path": "microsoft.extensions.dependencymodel/8.0.2", + "hashPath": "microsoft.extensions.dependencymodel.8.0.2.nupkg.sha512" + }, + "Microsoft.Extensions.Diagnostics.Abstractions/8.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-elH2vmwNmsXuKmUeMQ4YW9ldXiF+gSGDgg1vORksob5POnpaI6caj1Hu8zaYbEuibhqCoWg0YRWDazBY3zjBfg==", + "path": "microsoft.extensions.diagnostics.abstractions/8.0.1", + "hashPath": "microsoft.extensions.diagnostics.abstractions.8.0.1.nupkg.sha512" + }, + "Microsoft.Extensions.Diagnostics.HealthChecks/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-P9SoBuVZhJPpALZmSq72aQEb9ryP67EdquaCZGXGrrcASTNHYdrUhnpgSwIipgM5oVC+dKpRXg5zxobmF9xr5g==", + "path": "microsoft.extensions.diagnostics.healthchecks/8.0.0", + "hashPath": "microsoft.extensions.diagnostics.healthchecks.8.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-AT2qqos3IgI09ok36Qag9T8bb6kHJ3uT9Q5ki6CySybFsK6/9JbvQAgAHf1pVEjST0/N4JaFaCbm40R5edffwg==", + "path": "microsoft.extensions.diagnostics.healthchecks.abstractions/8.0.0", + "hashPath": "microsoft.extensions.diagnostics.healthchecks.abstractions.8.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.FileProviders.Abstractions/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ZbaMlhJlpisjuWbvXr4LdAst/1XxH3vZ6A0BsgTphZ2L4PGuxRLz7Jr/S7mkAAnOn78Vu0fKhEgNF5JO3zfjqQ==", + "path": "microsoft.extensions.fileproviders.abstractions/8.0.0", + "hashPath": "microsoft.extensions.fileproviders.abstractions.8.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Hosting.Abstractions/8.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-nHwq9aPBdBPYXPti6wYEEfgXddfBrYC+CQLn+qISiwQq5tpfaqDZSKOJNxoe9rfQxGf1c+2wC/qWFe1QYJPYqw==", + "path": "microsoft.extensions.hosting.abstractions/8.0.1", + "hashPath": "microsoft.extensions.hosting.abstractions.8.0.1.nupkg.sha512" + }, + "Microsoft.Extensions.Logging/8.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==", + "path": "microsoft.extensions.logging/8.0.1", + "hashPath": "microsoft.extensions.logging.8.0.1.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-RZkez/JjpnO+MZ6efKkSynN6ZztLpw3WbxNzjLCPBd97wWj1S9ZYPWi0nmT4kWBRa6atHsdM1ydGkUr8GudyDQ==", + "path": "microsoft.extensions.logging.abstractions/10.0.2", + "hashPath": "microsoft.extensions.logging.abstractions.10.0.2.nupkg.sha512" + }, + "Microsoft.Extensions.ObjectPool/8.0.11": { + "type": "package", + "serviceable": true, + "sha512": "sha512-6ApKcHNJigXBfZa6XlDQ8feJpq7SG1ogZXg6M4FiNzgd6irs3LUAzo0Pfn4F2ZI9liGnH1XIBR/OtSbZmJAV5w==", + "path": "microsoft.extensions.objectpool/8.0.11", + "hashPath": "microsoft.extensions.objectpool.8.0.11.nupkg.sha512" + }, + "Microsoft.Extensions.Options/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1De2LJjmxdqopI5AYC5dIhoZQ79AR5ayywxNF1rXrXFtKQfbQOV9+n/IsZBa7qWlr0MqoGpW8+OY2v/57udZOA==", + "path": "microsoft.extensions.options/10.0.2", + "hashPath": "microsoft.extensions.options.10.0.2.nupkg.sha512" + }, + "Microsoft.Extensions.Primitives/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-QmSiO+oLBEooGgB3i0GRXyeYRDHjllqt3k365jwfZlYWhvSHA3UL2NEVV5m8aZa041eIlblo6KMI5txvTMpTwA==", + "path": "microsoft.extensions.primitives/10.0.2", + "hashPath": "microsoft.extensions.primitives.10.0.2.nupkg.sha512" + }, + "Microsoft.IdentityModel.Abstractions/8.14.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-iwbCpSjD3ehfTwBhtSNEtKPK0ICun6ov7Ibx6ISNA9bfwIyzI2Siwyi9eJFCJBwxowK9xcA1mj+jBWiigeqgcQ==", + "path": "microsoft.identitymodel.abstractions/8.14.0", + "hashPath": "microsoft.identitymodel.abstractions.8.14.0.nupkg.sha512" + }, + "Microsoft.IdentityModel.JsonWebTokens/8.14.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-4jOpiA4THdtpLyMdAb24dtj7+6GmvhOhxf5XHLYWmPKF8ApEnApal1UnJsKO4HxUWRXDA6C4WQVfYyqsRhpNpQ==", + "path": "microsoft.identitymodel.jsonwebtokens/8.14.0", + "hashPath": "microsoft.identitymodel.jsonwebtokens.8.14.0.nupkg.sha512" + }, + "Microsoft.IdentityModel.Logging/8.14.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-eqqnemdW38CKZEHS6diA50BV94QICozDZEvSrsvN3SJXUFwVB9gy+/oz76gldP7nZliA16IglXjXTCTdmU/Ejg==", + "path": "microsoft.identitymodel.logging/8.14.0", + "hashPath": "microsoft.identitymodel.logging.8.14.0.nupkg.sha512" + }, + "Microsoft.IdentityModel.Protocols/7.1.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-SydLwMRFx6EHPWJ+N6+MVaoArN1Htt92b935O3RUWPY1yUF63zEjvd3lBu79eWdZUwedP8TN2I5V9T3nackvIQ==", + "path": "microsoft.identitymodel.protocols/7.1.2", + "hashPath": "microsoft.identitymodel.protocols.7.1.2.nupkg.sha512" + }, + "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.1.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-6lHQoLXhnMQ42mGrfDkzbIOR3rzKM1W1tgTeMPLgLCqwwGw0d96xFi/UiX/fYsu7d6cD5MJiL3+4HuI8VU+sVQ==", + "path": "microsoft.identitymodel.protocols.openidconnect/7.1.2", + "hashPath": "microsoft.identitymodel.protocols.openidconnect.7.1.2.nupkg.sha512" + }, + "Microsoft.IdentityModel.Tokens/8.14.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lKIZiBiGd36k02TCdMHp1KlNWisyIvQxcYJvIkz7P4gSQ9zi8dgh6S5Grj8NNG7HWYIPfQymGyoZ6JB5d1Lo1g==", + "path": "microsoft.identitymodel.tokens/8.14.0", + "hashPath": "microsoft.identitymodel.tokens.8.14.0.nupkg.sha512" + }, + "Microsoft.Net.Http.Headers/2.3.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-/M0wVg6tJUOHutWD3BMOUVZAioJVXe0tCpFiovzv0T9T12TBf4MnaHP0efO8TCr1a6O9RZgQeZ9Gdark8L9XdA==", + "path": "microsoft.net.http.headers/2.3.0", + "hashPath": "microsoft.net.http.headers.2.3.0.nupkg.sha512" + }, + "Microsoft.OpenApi/1.6.14": { + "type": "package", + "serviceable": true, + "sha512": "sha512-tTaBT8qjk3xINfESyOPE2rIellPvB7qpVqiWiyA/lACVvz+xOGiXhFUfohcx82NLbi5avzLW0lx+s6oAqQijfw==", + "path": "microsoft.openapi/1.6.14", + "hashPath": "microsoft.openapi.1.6.14.nupkg.sha512" + }, + "Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.22.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-EfYANhAWqmWKoLwN6bxoiPZSOfJSO9lzX+UrU6GVhLhPub1Hd+5f0zL0/tggIA6mRz6Ebw2xCNcIsM4k+7NPng==", + "path": "microsoft.visualstudio.azure.containers.tools.targets/1.22.1", + "hashPath": "microsoft.visualstudio.azure.containers.tools.targets.1.22.1.nupkg.sha512" + }, + "Mono.TextTemplating/2.2.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-KZYeKBET/2Z0gY1WlTAK7+RHTl7GSbtvTLDXEZZojUdAPqpQNDL6tHv7VUpqfX5VEOh+uRGKaZXkuD253nEOBQ==", + "path": "mono.texttemplating/2.2.1", + "hashPath": "mono.texttemplating.2.2.1.nupkg.sha512" + }, + "MySqlConnector/2.3.5": { + "type": "package", + "serviceable": true, + "sha512": "sha512-AmEfUPkFl+Ev6jJ8Dhns3CYHBfD12RHzGYWuLt6DfG6/af6YvOMyPz74ZPPjBYQGRJkumD2Z48Kqm8s5DJuhLA==", + "path": "mysqlconnector/2.3.5", + "hashPath": "mysqlconnector.2.3.5.nupkg.sha512" + }, + "Newtonsoft.Json/13.0.4": { + "type": "package", + "serviceable": true, + "sha512": "sha512-pdgNNMai3zv51W5aq268sujXUyx7SNdE2bj1wZcWjAQrKMFZV260lbqYop1d2GM67JI1huLRwxo9ZqnfF/lC6A==", + "path": "newtonsoft.json/13.0.4", + "hashPath": "newtonsoft.json.13.0.4.nupkg.sha512" + }, + "Pipelines.Sockets.Unofficial/2.2.8": { + "type": "package", + "serviceable": true, + "sha512": "sha512-zG2FApP5zxSx6OcdJQLbZDk2AVlN2BNQD6MorwIfV6gVj0RRxWPEp2LXAxqDGZqeNV1Zp0BNPcNaey/GXmTdvQ==", + "path": "pipelines.sockets.unofficial/2.2.8", + "hashPath": "pipelines.sockets.unofficial.2.2.8.nupkg.sha512" + }, + "Pomelo.EntityFrameworkCore.MySql/8.0.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-gOHP6v/nFp5V/FgHqv9mZocGqCLGofihEX9dTbLhiXX3H7SJHmGX70GIPUpiqLT+1jIfDxg1PZh9MTUKuk7Kig==", + "path": "pomelo.entityframeworkcore.mysql/8.0.3", + "hashPath": "pomelo.entityframeworkcore.mysql.8.0.3.nupkg.sha512" + }, + "RabbitMQ.Client/7.1.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-y3c6ulgULScWthHw5PLM1ShHRLhxg0vCtzX/hh61gRgNecL3ZC3WoBW2HYHoXOVRqTl99Br9E7CZEytGZEsCyQ==", + "path": "rabbitmq.client/7.1.2", + "hashPath": "rabbitmq.client.7.1.2.nupkg.sha512" + }, + "RedLock.net/2.3.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-jlrALAArm4dCE292U3EtRoMnVKJ9M6sunbZn/oG5OuzlGtTpusXBfvDrnGWbgGDlWV027f5E9H5CiVnPxiq8+g==", + "path": "redlock.net/2.3.2", + "hashPath": "redlock.net.2.3.2.nupkg.sha512" + }, + "StackExchange.Redis/2.9.32": { + "type": "package", + "serviceable": true, + "sha512": "sha512-j5Rjbf7gWz5izrn0UWQy9RlQY4cQDPkwJfVqATnVsOa/+zzJrps12LOgacMsDl/Vit2f01cDiDkG/Rst8v2iGw==", + "path": "stackexchange.redis/2.9.32", + "hashPath": "stackexchange.redis.2.9.32.nupkg.sha512" + }, + "Swashbuckle.AspNetCore/6.6.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-+NB4UYVYN6AhDSjW0IJAd1AGD8V33gemFNLPaxKTtPkHB+HaKAKf9MGAEUPivEWvqeQfcKIw8lJaHq6LHljRuw==", + "path": "swashbuckle.aspnetcore/6.6.2", + "hashPath": "swashbuckle.aspnetcore.6.6.2.nupkg.sha512" + }, + "Swashbuckle.AspNetCore.Swagger/6.6.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ovgPTSYX83UrQUWiS5vzDcJ8TEX1MAxBgDFMK45rC24MorHEPQlZAHlaXj/yth4Zf6xcktpUgTEBvffRQVwDKA==", + "path": "swashbuckle.aspnetcore.swagger/6.6.2", + "hashPath": "swashbuckle.aspnetcore.swagger.6.6.2.nupkg.sha512" + }, + "Swashbuckle.AspNetCore.SwaggerGen/6.6.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-zv4ikn4AT1VYuOsDCpktLq4QDq08e7Utzbir86M5/ZkRaLXbCPF11E1/vTmOiDzRTl0zTZINQU2qLKwTcHgfrA==", + "path": "swashbuckle.aspnetcore.swaggergen/6.6.2", + "hashPath": "swashbuckle.aspnetcore.swaggergen.6.6.2.nupkg.sha512" + }, + "Swashbuckle.AspNetCore.SwaggerUI/6.6.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-mBBb+/8Hm2Q3Wygag+hu2jj69tZW5psuv0vMRXY07Wy+Rrj40vRP8ZTbKBhs91r45/HXT4aY4z0iSBYx1h6JvA==", + "path": "swashbuckle.aspnetcore.swaggerui/6.6.2", + "hashPath": "swashbuckle.aspnetcore.swaggerui.6.6.2.nupkg.sha512" + }, + "System.Buffers/4.6.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lN6tZi7Q46zFzAbRYXTIvfXcyvQQgxnY7Xm6C6xQ9784dEL1amjM6S6Iw4ZpsvesAKnRVsM4scrDQaDqSClkjA==", + "path": "system.buffers/4.6.0", + "hashPath": "system.buffers.4.6.0.nupkg.sha512" + }, + "System.CodeDom/4.4.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-2sCCb7doXEwtYAbqzbF/8UAeDRMNmPaQbU2q50Psg1J9KzumyVVCgKQY8s53WIPTufNT0DpSe9QRvVjOzfDWBA==", + "path": "system.codedom/4.4.0", + "hashPath": "system.codedom.4.4.0.nupkg.sha512" + }, + "System.Collections.Immutable/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-l4zZJ1WU2hqpQQHXz1rvC3etVZN+2DLmQMO79FhOTZHMn8tDRr+WU287sbomD0BETlmKDn0ygUgVy9k5xkkJdA==", + "path": "system.collections.immutable/6.0.0", + "hashPath": "system.collections.immutable.6.0.0.nupkg.sha512" + }, + "System.Composition/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-d7wMuKQtfsxUa7S13tITC8n1cQzewuhD5iDjZtK2prwFfKVzdYtgrTHgjaV03Zq7feGQ5gkP85tJJntXwInsJA==", + "path": "system.composition/6.0.0", + "hashPath": "system.composition.6.0.0.nupkg.sha512" + }, + "System.Composition.AttributedModel/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-WK1nSDLByK/4VoC7fkNiFuTVEiperuCN/Hyn+VN30R+W2ijO1d0Z2Qm0ScEl9xkSn1G2MyapJi8xpf4R8WRa/w==", + "path": "system.composition.attributedmodel/6.0.0", + "hashPath": "system.composition.attributedmodel.6.0.0.nupkg.sha512" + }, + "System.Composition.Convention/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XYi4lPRdu5bM4JVJ3/UIHAiG6V6lWWUlkhB9ab4IOq0FrRsp0F4wTyV4Dj+Ds+efoXJ3qbLqlvaUozDO7OLeXA==", + "path": "system.composition.convention/6.0.0", + "hashPath": "system.composition.convention.6.0.0.nupkg.sha512" + }, + "System.Composition.Hosting/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-w/wXjj7kvxuHPLdzZ0PAUt++qJl03t7lENmb2Oev0n3zbxyNULbWBlnd5J5WUMMv15kg5o+/TCZFb6lSwfaUUQ==", + "path": "system.composition.hosting/6.0.0", + "hashPath": "system.composition.hosting.6.0.0.nupkg.sha512" + }, + "System.Composition.Runtime/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-qkRH/YBaMPTnzxrS5RDk1juvqed4A6HOD/CwRcDGyPpYps1J27waBddiiq1y93jk2ZZ9wuA/kynM+NO0kb3PKg==", + "path": "system.composition.runtime/6.0.0", + "hashPath": "system.composition.runtime.6.0.0.nupkg.sha512" + }, + "System.Composition.TypedParts/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-iUR1eHrL8Cwd82neQCJ00MpwNIBs4NZgXzrPqx8NJf/k4+mwBO0XCRmHYJT4OLSwDDqh5nBLJWkz5cROnrGhRA==", + "path": "system.composition.typedparts/6.0.0", + "hashPath": "system.composition.typedparts.6.0.0.nupkg.sha512" + }, + "System.Diagnostics.DiagnosticSource/10.0.2": { + "type": "package", + "serviceable": true, + "sha512": "sha512-lYWBy8fKkJHaRcOuw30d67PrtVjR5754sz5Wl76s8P+vJ9FSThh9b7LIcTSODx1LY7NB3Srvg+JMnzd67qNZOw==", + "path": "system.diagnostics.diagnosticsource/10.0.2", + "hashPath": "system.diagnostics.diagnosticsource.10.0.2.nupkg.sha512" + }, + "System.IdentityModel.Tokens.Jwt/8.14.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-EYGgN/S+HK7S6F3GaaPLFAfK0UzMrkXFyWCvXpQWFYmZln3dqtbyIO7VuTM/iIIPMzkelg8ZLlBPvMhxj6nOAA==", + "path": "system.identitymodel.tokens.jwt/8.14.0", + "hashPath": "system.identitymodel.tokens.jwt.8.14.0.nupkg.sha512" + }, + "System.IO.Pipelines/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FHNOatmUq0sqJOkTx+UF/9YK1f180cnW5FVqnQMvYUN0elp6wFzbtPSiqbo1/ru8ICp43JM1i7kKkk6GsNGHlA==", + "path": "system.io.pipelines/8.0.0", + "hashPath": "system.io.pipelines.8.0.0.nupkg.sha512" + }, + "System.Net.WebSockets.WebSocketProtocol/5.1.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-cVTT/Zw4JuUeX8H0tdWii0OMHsA5MY2PaFYOq/Hstw0jk479jZ+f8baCicWFNzJlCPWAe0uoNCELoB5eNmaMqA==", + "path": "system.net.websockets.websocketprotocol/5.1.0", + "hashPath": "system.net.websockets.websocketprotocol.5.1.0.nupkg.sha512" + }, + "System.Reflection.Emit/4.7.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VR4kk8XLKebQ4MZuKuIni/7oh+QGFmZW3qORd1GvBq/8026OpW501SzT/oypwiQl4TvT8ErnReh/NzY9u+C6wQ==", + "path": "system.reflection.emit/4.7.0", + "hashPath": "system.reflection.emit.4.7.0.nupkg.sha512" + }, + "System.Reflection.Metadata/6.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-III/lNMSn0ZRBuM9m5Cgbiho5j81u0FAEagFX5ta2DKbljZ3T0IpD8j+BIiHQPeKqJppWS9bGEp6JnKnWKze0g==", + "path": "system.reflection.metadata/6.0.1", + "hashPath": "system.reflection.metadata.6.0.1.nupkg.sha512" + }, + "System.Runtime.CompilerServices.Unsafe/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==", + "path": "system.runtime.compilerservices.unsafe/6.0.0", + "hashPath": "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512" + }, + "System.Text.Encoding.CodePages/6.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ZFCILZuOvtKPauZ/j/swhvw68ZRi9ATCfvGbk1QfydmcXBkIWecWKn/250UH7rahZ5OoDBaiAudJtPvLwzw85A==", + "path": "system.text.encoding.codepages/6.0.0", + "hashPath": "system.text.encoding.codepages.6.0.0.nupkg.sha512" + }, + "System.Text.Encodings.Web/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ==", + "path": "system.text.encodings.web/8.0.0", + "hashPath": "system.text.encodings.web.8.0.0.nupkg.sha512" + }, + "System.Threading.Channels/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-CMaFr7v+57RW7uZfZkPExsPB6ljwzhjACWW1gfU35Y56rk72B/Wu+sTqxVmGSk4SFUlPc3cjeKND0zktziyjBA==", + "path": "system.threading.channels/8.0.0", + "hashPath": "system.threading.channels.8.0.0.nupkg.sha512" + }, + "System.Threading.RateLimiting/8.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7mu9v0QDv66ar3DpGSZHg9NuNcxDaaAcnMULuZlaTpP9+hwXhrxNGsF5GmLkSHxFdb5bBc1TzeujsRgTrPWi+Q==", + "path": "system.threading.ratelimiting/8.0.0", + "hashPath": "system.threading.ratelimiting.8.0.0.nupkg.sha512" + } + } } \ No newline at end of file diff --git a/backend/IMTest/bin/Debug/net8.0/IM_API.dll b/backend/IMTest/bin/Debug/net8.0/IM_API.dll index a3b4ee9..2e50c8a 100644 Binary files a/backend/IMTest/bin/Debug/net8.0/IM_API.dll and b/backend/IMTest/bin/Debug/net8.0/IM_API.dll differ diff --git a/backend/IMTest/bin/Debug/net8.0/IM_API.exe b/backend/IMTest/bin/Debug/net8.0/IM_API.exe index d0ffae4..647dae8 100644 Binary files a/backend/IMTest/bin/Debug/net8.0/IM_API.exe and b/backend/IMTest/bin/Debug/net8.0/IM_API.exe differ diff --git a/backend/IMTest/bin/Debug/net8.0/IM_API.pdb b/backend/IMTest/bin/Debug/net8.0/IM_API.pdb index 4d12f0b..fe761c3 100644 Binary files a/backend/IMTest/bin/Debug/net8.0/IM_API.pdb and b/backend/IMTest/bin/Debug/net8.0/IM_API.pdb differ diff --git a/backend/IMTest/bin/Debug/net8.0/IM_API.runtimeconfig.json b/backend/IMTest/bin/Debug/net8.0/IM_API.runtimeconfig.json index b8a4a9c..6bf7bef 100644 --- a/backend/IMTest/bin/Debug/net8.0/IM_API.runtimeconfig.json +++ b/backend/IMTest/bin/Debug/net8.0/IM_API.runtimeconfig.json @@ -1,20 +1,20 @@ -{ - "runtimeOptions": { - "tfm": "net8.0", - "frameworks": [ - { - "name": "Microsoft.NETCore.App", - "version": "8.0.0" - }, - { - "name": "Microsoft.AspNetCore.App", - "version": "8.0.0" - } - ], - "configProperties": { - "System.GC.Server": true, - "System.Reflection.NullabilityInfoContext.IsSupported": true, - "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false - } - } +{ + "runtimeOptions": { + "tfm": "net8.0", + "frameworks": [ + { + "name": "Microsoft.NETCore.App", + "version": "8.0.0" + }, + { + "name": "Microsoft.AspNetCore.App", + "version": "8.0.0" + } + ], + "configProperties": { + "System.GC.Server": true, + "System.Reflection.NullabilityInfoContext.IsSupported": true, + "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false + } + } } \ No newline at end of file diff --git a/backend/IMTest/bin/Debug/net8.0/appsettings.Development.json b/backend/IMTest/bin/Debug/net8.0/appsettings.Development.json index 0c208ae..ff66ba6 100644 --- a/backend/IMTest/bin/Debug/net8.0/appsettings.Development.json +++ b/backend/IMTest/bin/Debug/net8.0/appsettings.Development.json @@ -1,8 +1,8 @@ -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - } -} +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + } +} diff --git a/backend/IMTest/bin/Debug/net8.0/appsettings.json b/backend/IMTest/bin/Debug/net8.0/appsettings.json index fc895fb..a5f7135 100644 --- a/backend/IMTest/bin/Debug/net8.0/appsettings.json +++ b/backend/IMTest/bin/Debug/net8.0/appsettings.json @@ -1,26 +1,26 @@ -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "Jwt": { - "Key": "YourSuperSecretKey123456784124214190!", - "Issuer": "IMDemo", - "Audience": "IMClients", - "AccessTokenMinutes": 30, - "RefreshTokenDays": 30 - }, - "ConnectionStrings": { - "DefaultConnection": "Server=frp-era.com;Port=26582;Database=IM;User=product;Password=12345678;", - "Redis": "192.168.5.100:6379" - }, - "RabbitMQOptions": { - "Host": "192.168.5.100", - "Port": 5672, - "Username": "test", - "Password": "123456" - } -} +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + }, + "AllowedHosts": "*", + "Jwt": { + "Key": "YourSuperSecretKey123456784124214190!", + "Issuer": "IMDemo", + "Audience": "IMClients", + "AccessTokenMinutes": 30, + "RefreshTokenDays": 30 + }, + "ConnectionStrings": { + "DefaultConnection": "Server=192.168.3.100;Port=3306;Database=IM;User=root;Password=13872911434Dyw@;", + "Redis": "192.168.3.100:6379" + }, + "RabbitMQOptions": { + "Host": "192.168.5.100", + "Port": 5672, + "Username": "test", + "Password": "123456" + } +} diff --git a/backend/IMTest/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/backend/IMTest/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs index 2217181..678fc5f 100644 --- a/backend/IMTest/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs +++ b/backend/IMTest/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs @@ -1,4 +1,4 @@ -// -using System; -using System.Reflection; -[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")] +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")] diff --git a/backend/IMTest/obj/Debug/net8.0/IMTest.AssemblyInfo.cs b/backend/IMTest/obj/Debug/net8.0/IMTest.AssemblyInfo.cs index 2a2b83e..f3c6637 100644 --- a/backend/IMTest/obj/Debug/net8.0/IMTest.AssemblyInfo.cs +++ b/backend/IMTest/obj/Debug/net8.0/IMTest.AssemblyInfo.cs @@ -1,23 +1,23 @@ -//------------------------------------------------------------------------------ -// -// 此代码由工具生成。 -// 运行时版本:4.0.30319.42000 -// -// 对此文件的更改可能会导致不正确的行为,并且如果 -// 重新生成代码,这些更改将会丢失。 -// -//------------------------------------------------------------------------------ - -using System; -using System.Reflection; - -[assembly: System.Reflection.AssemblyCompanyAttribute("IMTest")] -[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] -[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+dc6ecf224df4e8714171e8b5d23afaa90b3a1f81")] -[assembly: System.Reflection.AssemblyProductAttribute("IMTest")] -[assembly: System.Reflection.AssemblyTitleAttribute("IMTest")] -[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] - -// 由 MSBuild WriteCodeFragment 类生成。 - +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("IMTest")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+77db20dc38eb89685ca73df4dd2758aa53aa6e0b")] +[assembly: System.Reflection.AssemblyProductAttribute("IMTest")] +[assembly: System.Reflection.AssemblyTitleAttribute("IMTest")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// 由 MSBuild WriteCodeFragment 类生成。 + diff --git a/backend/IMTest/obj/Debug/net8.0/IMTest.AssemblyInfoInputs.cache b/backend/IMTest/obj/Debug/net8.0/IMTest.AssemblyInfoInputs.cache index 3735720..e14a840 100644 --- a/backend/IMTest/obj/Debug/net8.0/IMTest.AssemblyInfoInputs.cache +++ b/backend/IMTest/obj/Debug/net8.0/IMTest.AssemblyInfoInputs.cache @@ -1 +1 @@ -1b9e709aa84e0b4f6260cd10cf25bfc3a30c60e75a3966fc7d4cdf489eae898b +6b62c789b9e1ecffdd986072b0521abee258fac28aa7e7d48b26a0309d21dc29 diff --git a/backend/IMTest/obj/Debug/net8.0/IMTest.GeneratedMSBuildEditorConfig.editorconfig b/backend/IMTest/obj/Debug/net8.0/IMTest.GeneratedMSBuildEditorConfig.editorconfig index aa41851..37e4797 100644 --- a/backend/IMTest/obj/Debug/net8.0/IMTest.GeneratedMSBuildEditorConfig.editorconfig +++ b/backend/IMTest/obj/Debug/net8.0/IMTest.GeneratedMSBuildEditorConfig.editorconfig @@ -1,15 +1,15 @@ -is_global = true -build_property.TargetFramework = net8.0 -build_property.TargetPlatformMinVersion = -build_property.UsingMicrosoftNETSdkWeb = -build_property.ProjectTypeGuids = -build_property.InvariantGlobalization = -build_property.PlatformNeutralAssembly = -build_property.EnforceExtendedAnalyzerRules = -build_property._SupportedPlatformList = Linux,macOS,Windows -build_property.RootNamespace = IMTest -build_property.ProjectDir = C:\Users\nanxun\Documents\IM\backend\IMTest\ -build_property.EnableComHosting = -build_property.EnableGeneratedComInterfaceComImportInterop = -build_property.EffectiveAnalysisLevelStyle = 8.0 -build_property.EnableCodeStyleSeverity = +is_global = true +build_property.TargetFramework = net8.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = IMTest +build_property.ProjectDir = C:\Users\nanxun\Documents\IM\backend\IMTest\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = +build_property.EffectiveAnalysisLevelStyle = 8.0 +build_property.EnableCodeStyleSeverity = diff --git a/backend/IMTest/obj/Debug/net8.0/IMTest.GlobalUsings.g.cs b/backend/IMTest/obj/Debug/net8.0/IMTest.GlobalUsings.g.cs index 2cd3d38..408e98b 100644 --- a/backend/IMTest/obj/Debug/net8.0/IMTest.GlobalUsings.g.cs +++ b/backend/IMTest/obj/Debug/net8.0/IMTest.GlobalUsings.g.cs @@ -1,9 +1,9 @@ -// -global using global::System; -global using global::System.Collections.Generic; -global using global::System.IO; -global using global::System.Linq; -global using global::System.Net.Http; -global using global::System.Threading; -global using global::System.Threading.Tasks; -global using global::Xunit; +// +global using global::System; +global using global::System.Collections.Generic; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Threading; +global using global::System.Threading.Tasks; +global using global::Xunit; diff --git a/backend/IMTest/obj/Debug/net8.0/IMTest.csproj.AssemblyReference.cache b/backend/IMTest/obj/Debug/net8.0/IMTest.csproj.AssemblyReference.cache index 278b1a7..6fde85c 100644 Binary files a/backend/IMTest/obj/Debug/net8.0/IMTest.csproj.AssemblyReference.cache and b/backend/IMTest/obj/Debug/net8.0/IMTest.csproj.AssemblyReference.cache differ diff --git a/backend/IMTest/obj/Debug/net8.0/IMTest.csproj.CoreCompileInputs.cache b/backend/IMTest/obj/Debug/net8.0/IMTest.csproj.CoreCompileInputs.cache index c05b415..84fb056 100644 --- a/backend/IMTest/obj/Debug/net8.0/IMTest.csproj.CoreCompileInputs.cache +++ b/backend/IMTest/obj/Debug/net8.0/IMTest.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -6e6df2b3d9fe8d3830882bef146134864f65ca58bc5ea4bac684eaec55cfd628 +6e6df2b3d9fe8d3830882bef146134864f65ca58bc5ea4bac684eaec55cfd628 diff --git a/backend/IMTest/obj/Debug/net8.0/IMTest.csproj.FileListAbsolute.txt b/backend/IMTest/obj/Debug/net8.0/IMTest.csproj.FileListAbsolute.txt index 6a24730..ca734f9 100644 --- a/backend/IMTest/obj/Debug/net8.0/IMTest.csproj.FileListAbsolute.txt +++ b/backend/IMTest/obj/Debug/net8.0/IMTest.csproj.FileListAbsolute.txt @@ -1,153 +1,153 @@ -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\CoverletSourceRootsMapping_IMTest -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\testhost.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IM_API.deps.json -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IM_API.runtimeconfig.json -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\appsettings.Development.json -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\appsettings.json -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IM_API.staticwebassets.endpoints.json -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IM_API.exe -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\testhost.exe -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.runner.visualstudio.dotnetcore.testadapter.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.runner.reporters.netcoreapp10.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.runner.utility.netcoreapp10.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IMTest.deps.json -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IMTest.runtimeconfig.json -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IMTest.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IMTest.pdb -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\AutoMapper.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\AutoMapper.Extensions.Microsoft.DependencyInjection.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Castle.Core.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.AspNetCore.Authentication.JwtBearer.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.VisualStudio.CodeCoverage.Shim.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.InMemory.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.Relational.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Caching.Memory.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.DependencyInjection.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Diagnostics.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Hosting.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Logging.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Logging.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.ObjectPool.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Options.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.IdentityModel.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.IdentityModel.JsonWebTokens.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.IdentityModel.Logging.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.IdentityModel.Protocols.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.IdentityModel.Protocols.OpenIdConnect.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.IdentityModel.Tokens.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.OpenApi.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.TestPlatform.CoreUtilities.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.TestPlatform.PlatformAbstractions.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.VisualStudio.TestPlatform.ObjectModel.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.TestPlatform.CommunicationUtilities.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.TestPlatform.CrossPlatEngine.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.TestPlatform.Utilities.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.VisualStudio.TestPlatform.Common.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Moq.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\MySqlConnector.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Newtonsoft.Json.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\NuGet.Frameworks.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Pipelines.Sockets.Unofficial.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Pomelo.EntityFrameworkCore.MySql.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\StackExchange.Redis.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Swashbuckle.AspNetCore.Swagger.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Swashbuckle.AspNetCore.SwaggerGen.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Swashbuckle.AspNetCore.SwaggerUI.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\System.IdentityModel.Tokens.Jwt.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\System.Net.WebSockets.WebSocketProtocol.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.abstractions.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.assert.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.core.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.execution.dotnet.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\cs\Microsoft.TestPlatform.CoreUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\cs\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\de\Microsoft.TestPlatform.CoreUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\de\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\es\Microsoft.TestPlatform.CoreUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\es\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\fr\Microsoft.TestPlatform.CoreUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\fr\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\it\Microsoft.TestPlatform.CoreUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\it\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ja\Microsoft.TestPlatform.CoreUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ja\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ko\Microsoft.TestPlatform.CoreUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ko\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pl\Microsoft.TestPlatform.CoreUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pl\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pt-BR\Microsoft.TestPlatform.CoreUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pt-BR\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ru\Microsoft.TestPlatform.CoreUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ru\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\tr\Microsoft.TestPlatform.CoreUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\tr\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hans\Microsoft.TestPlatform.CoreUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hans\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hant\Microsoft.TestPlatform.CoreUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hant\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\cs\Microsoft.TestPlatform.CommunicationUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\cs\Microsoft.TestPlatform.CrossPlatEngine.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\cs\Microsoft.VisualStudio.TestPlatform.Common.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\de\Microsoft.TestPlatform.CommunicationUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\de\Microsoft.TestPlatform.CrossPlatEngine.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\de\Microsoft.VisualStudio.TestPlatform.Common.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\es\Microsoft.TestPlatform.CommunicationUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\es\Microsoft.TestPlatform.CrossPlatEngine.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\es\Microsoft.VisualStudio.TestPlatform.Common.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\fr\Microsoft.TestPlatform.CommunicationUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\fr\Microsoft.TestPlatform.CrossPlatEngine.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\fr\Microsoft.VisualStudio.TestPlatform.Common.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\it\Microsoft.TestPlatform.CommunicationUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\it\Microsoft.TestPlatform.CrossPlatEngine.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\it\Microsoft.VisualStudio.TestPlatform.Common.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ja\Microsoft.TestPlatform.CommunicationUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ja\Microsoft.TestPlatform.CrossPlatEngine.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ja\Microsoft.VisualStudio.TestPlatform.Common.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ko\Microsoft.TestPlatform.CommunicationUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ko\Microsoft.TestPlatform.CrossPlatEngine.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ko\Microsoft.VisualStudio.TestPlatform.Common.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pl\Microsoft.TestPlatform.CommunicationUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pl\Microsoft.TestPlatform.CrossPlatEngine.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pl\Microsoft.VisualStudio.TestPlatform.Common.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pt-BR\Microsoft.TestPlatform.CommunicationUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pt-BR\Microsoft.TestPlatform.CrossPlatEngine.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pt-BR\Microsoft.VisualStudio.TestPlatform.Common.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ru\Microsoft.TestPlatform.CommunicationUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ru\Microsoft.TestPlatform.CrossPlatEngine.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ru\Microsoft.VisualStudio.TestPlatform.Common.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\tr\Microsoft.TestPlatform.CommunicationUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\tr\Microsoft.TestPlatform.CrossPlatEngine.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\tr\Microsoft.VisualStudio.TestPlatform.Common.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hans\Microsoft.TestPlatform.CommunicationUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hans\Microsoft.TestPlatform.CrossPlatEngine.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hans\Microsoft.VisualStudio.TestPlatform.Common.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hant\Microsoft.TestPlatform.CommunicationUtilities.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hant\Microsoft.TestPlatform.CrossPlatEngine.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hant\Microsoft.VisualStudio.TestPlatform.Common.resources.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IM_API.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IM_API.pdb -C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.csproj.AssemblyReference.cache -C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.GeneratedMSBuildEditorConfig.editorconfig -C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.AssemblyInfoInputs.cache -C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.AssemblyInfo.cs -C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.csproj.CoreCompileInputs.cache -C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.csproj.Up2Date -C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\refint\IMTest.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.pdb -C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.genruntimeconfig.cache -C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\ref\IMTest.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\MassTransit.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\MassTransit.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\MassTransit.RabbitMqTransport.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\RabbitMQ.Client.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Bcl.AsyncInterfaces.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\RedLockNet.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\RedLockNet.SERedis.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Caching.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Caching.StackExchangeRedis.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Primitives.dll -C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\System.Diagnostics.DiagnosticSource.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\CoverletSourceRootsMapping_IMTest +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\testhost.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IM_API.deps.json +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IM_API.runtimeconfig.json +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\appsettings.Development.json +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\appsettings.json +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IM_API.staticwebassets.endpoints.json +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IM_API.exe +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\testhost.exe +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.runner.visualstudio.dotnetcore.testadapter.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.runner.reporters.netcoreapp10.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.runner.utility.netcoreapp10.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IMTest.deps.json +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IMTest.runtimeconfig.json +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IMTest.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IMTest.pdb +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\AutoMapper.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\AutoMapper.Extensions.Microsoft.DependencyInjection.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Castle.Core.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.AspNetCore.Authentication.JwtBearer.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.VisualStudio.CodeCoverage.Shim.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.InMemory.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.EntityFrameworkCore.Relational.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Caching.Memory.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.DependencyInjection.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Diagnostics.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Hosting.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Logging.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Logging.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.ObjectPool.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Options.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.IdentityModel.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.IdentityModel.JsonWebTokens.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.IdentityModel.Logging.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.IdentityModel.Protocols.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.IdentityModel.Protocols.OpenIdConnect.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.IdentityModel.Tokens.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.OpenApi.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.TestPlatform.CoreUtilities.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.TestPlatform.PlatformAbstractions.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.VisualStudio.TestPlatform.ObjectModel.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.TestPlatform.CommunicationUtilities.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.TestPlatform.CrossPlatEngine.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.TestPlatform.Utilities.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.VisualStudio.TestPlatform.Common.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Moq.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\MySqlConnector.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Newtonsoft.Json.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\NuGet.Frameworks.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Pipelines.Sockets.Unofficial.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Pomelo.EntityFrameworkCore.MySql.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\StackExchange.Redis.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Swashbuckle.AspNetCore.Swagger.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Swashbuckle.AspNetCore.SwaggerGen.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Swashbuckle.AspNetCore.SwaggerUI.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\System.IdentityModel.Tokens.Jwt.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\System.Net.WebSockets.WebSocketProtocol.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.abstractions.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.assert.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.core.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\xunit.execution.dotnet.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\cs\Microsoft.TestPlatform.CoreUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\cs\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\de\Microsoft.TestPlatform.CoreUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\de\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\es\Microsoft.TestPlatform.CoreUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\es\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\fr\Microsoft.TestPlatform.CoreUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\fr\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\it\Microsoft.TestPlatform.CoreUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\it\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ja\Microsoft.TestPlatform.CoreUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ja\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ko\Microsoft.TestPlatform.CoreUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ko\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pl\Microsoft.TestPlatform.CoreUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pl\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pt-BR\Microsoft.TestPlatform.CoreUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pt-BR\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ru\Microsoft.TestPlatform.CoreUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ru\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\tr\Microsoft.TestPlatform.CoreUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\tr\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hans\Microsoft.TestPlatform.CoreUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hans\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hant\Microsoft.TestPlatform.CoreUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hant\Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\cs\Microsoft.TestPlatform.CommunicationUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\cs\Microsoft.TestPlatform.CrossPlatEngine.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\cs\Microsoft.VisualStudio.TestPlatform.Common.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\de\Microsoft.TestPlatform.CommunicationUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\de\Microsoft.TestPlatform.CrossPlatEngine.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\de\Microsoft.VisualStudio.TestPlatform.Common.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\es\Microsoft.TestPlatform.CommunicationUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\es\Microsoft.TestPlatform.CrossPlatEngine.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\es\Microsoft.VisualStudio.TestPlatform.Common.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\fr\Microsoft.TestPlatform.CommunicationUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\fr\Microsoft.TestPlatform.CrossPlatEngine.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\fr\Microsoft.VisualStudio.TestPlatform.Common.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\it\Microsoft.TestPlatform.CommunicationUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\it\Microsoft.TestPlatform.CrossPlatEngine.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\it\Microsoft.VisualStudio.TestPlatform.Common.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ja\Microsoft.TestPlatform.CommunicationUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ja\Microsoft.TestPlatform.CrossPlatEngine.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ja\Microsoft.VisualStudio.TestPlatform.Common.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ko\Microsoft.TestPlatform.CommunicationUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ko\Microsoft.TestPlatform.CrossPlatEngine.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ko\Microsoft.VisualStudio.TestPlatform.Common.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pl\Microsoft.TestPlatform.CommunicationUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pl\Microsoft.TestPlatform.CrossPlatEngine.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pl\Microsoft.VisualStudio.TestPlatform.Common.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pt-BR\Microsoft.TestPlatform.CommunicationUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pt-BR\Microsoft.TestPlatform.CrossPlatEngine.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\pt-BR\Microsoft.VisualStudio.TestPlatform.Common.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ru\Microsoft.TestPlatform.CommunicationUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ru\Microsoft.TestPlatform.CrossPlatEngine.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\ru\Microsoft.VisualStudio.TestPlatform.Common.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\tr\Microsoft.TestPlatform.CommunicationUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\tr\Microsoft.TestPlatform.CrossPlatEngine.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\tr\Microsoft.VisualStudio.TestPlatform.Common.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hans\Microsoft.TestPlatform.CommunicationUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hans\Microsoft.TestPlatform.CrossPlatEngine.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hans\Microsoft.VisualStudio.TestPlatform.Common.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hant\Microsoft.TestPlatform.CommunicationUtilities.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hant\Microsoft.TestPlatform.CrossPlatEngine.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\zh-Hant\Microsoft.VisualStudio.TestPlatform.Common.resources.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IM_API.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\IM_API.pdb +C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.csproj.AssemblyReference.cache +C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.GeneratedMSBuildEditorConfig.editorconfig +C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.AssemblyInfoInputs.cache +C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.AssemblyInfo.cs +C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.csproj.CoreCompileInputs.cache +C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.csproj.Up2Date +C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\refint\IMTest.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.pdb +C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\IMTest.genruntimeconfig.cache +C:\Users\nanxun\Documents\IM\backend\IMTest\obj\Debug\net8.0\ref\IMTest.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\MassTransit.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\MassTransit.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\MassTransit.RabbitMqTransport.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\RabbitMQ.Client.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Bcl.AsyncInterfaces.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\RedLockNet.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\RedLockNet.SERedis.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Caching.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Caching.StackExchangeRedis.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\Microsoft.Extensions.Primitives.dll +C:\Users\nanxun\Documents\IM\backend\IMTest\bin\Debug\net8.0\System.Diagnostics.DiagnosticSource.dll diff --git a/backend/IMTest/obj/Debug/net8.0/IMTest.dll b/backend/IMTest/obj/Debug/net8.0/IMTest.dll index a0cda45..1b81499 100644 Binary files a/backend/IMTest/obj/Debug/net8.0/IMTest.dll and b/backend/IMTest/obj/Debug/net8.0/IMTest.dll differ diff --git a/backend/IMTest/obj/Debug/net8.0/IMTest.genruntimeconfig.cache b/backend/IMTest/obj/Debug/net8.0/IMTest.genruntimeconfig.cache index 8186f4b..324d76e 100644 --- a/backend/IMTest/obj/Debug/net8.0/IMTest.genruntimeconfig.cache +++ b/backend/IMTest/obj/Debug/net8.0/IMTest.genruntimeconfig.cache @@ -1 +1 @@ -07435f2bd36dc0ae41e1e828c20bdeff31b846af84ec0e9fed50b185c0440047 +07435f2bd36dc0ae41e1e828c20bdeff31b846af84ec0e9fed50b185c0440047 diff --git a/backend/IMTest/obj/Debug/net8.0/IMTest.pdb b/backend/IMTest/obj/Debug/net8.0/IMTest.pdb index f9575cb..a5be6bb 100644 Binary files a/backend/IMTest/obj/Debug/net8.0/IMTest.pdb and b/backend/IMTest/obj/Debug/net8.0/IMTest.pdb differ diff --git a/backend/IMTest/obj/Debug/net8.0/ref/IMTest.dll b/backend/IMTest/obj/Debug/net8.0/ref/IMTest.dll index 9f9bfd6..c0c9476 100644 Binary files a/backend/IMTest/obj/Debug/net8.0/ref/IMTest.dll and b/backend/IMTest/obj/Debug/net8.0/ref/IMTest.dll differ diff --git a/backend/IMTest/obj/Debug/net8.0/refint/IMTest.dll b/backend/IMTest/obj/Debug/net8.0/refint/IMTest.dll index 9f9bfd6..c0c9476 100644 Binary files a/backend/IMTest/obj/Debug/net8.0/refint/IMTest.dll and b/backend/IMTest/obj/Debug/net8.0/refint/IMTest.dll differ diff --git a/backend/IMTest/obj/IMTest.csproj.nuget.dgspec.json b/backend/IMTest/obj/IMTest.csproj.nuget.dgspec.json index 7422270..1208932 100644 --- a/backend/IMTest/obj/IMTest.csproj.nuget.dgspec.json +++ b/backend/IMTest/obj/IMTest.csproj.nuget.dgspec.json @@ -1,239 +1,239 @@ -{ - "format": 1, - "restore": { - "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj": {} - }, - "projects": { - "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj": { - "version": "1.0.0", - "restore": { - "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj", - "projectName": "IMTest", - "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj", - "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", - "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\obj\\", - "projectStyle": "PackageReference", - "fallbackFolders": [ - "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" - ], - "configFilePaths": [ - "C:\\Users\\nanxun\\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" - ], - "originalTargetFrameworks": [ - "net8.0" - ], - "sources": { - "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, - "C:\\Program Files\\dotnet\\library-packs": {}, - "https://api.nuget.org/v3/index.json": {} - }, - "frameworks": { - "net8.0": { - "targetAlias": "net8.0", - "projectReferences": { - "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj": { - "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj" - } - } - } - }, - "warningProperties": { - "warnAsError": [ - "NU1605" - ] - }, - "restoreAuditProperties": { - "enableAudit": "true", - "auditLevel": "low", - "auditMode": "direct" - }, - "SdkAnalysisLevel": "9.0.300" - }, - "frameworks": { - "net8.0": { - "targetAlias": "net8.0", - "dependencies": { - "Microsoft.EntityFrameworkCore.InMemory": { - "target": "Package", - "version": "[8.0.22, )" - }, - "Microsoft.NET.Test.Sdk": { - "target": "Package", - "version": "[17.8.0, )" - }, - "Moq": { - "target": "Package", - "version": "[4.20.72, )" - }, - "coverlet.collector": { - "target": "Package", - "version": "[6.0.0, )" - }, - "xunit": { - "target": "Package", - "version": "[2.5.3, )" - }, - "xunit.runner.visualstudio": { - "target": "Package", - "version": "[2.5.3, )" - } - }, - "imports": [ - "net461", - "net462", - "net47", - "net471", - "net472", - "net48", - "net481" - ], - "assetTargetFallback": true, - "warn": true, - "frameworkReferences": { - "Microsoft.NETCore.App": { - "privateAssets": "all" - } - }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" - } - } - }, - "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj": { - "version": "1.0.0", - "restore": { - "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj", - "projectName": "IM_API", - "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj", - "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", - "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\obj\\", - "projectStyle": "PackageReference", - "fallbackFolders": [ - "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" - ], - "configFilePaths": [ - "C:\\Users\\nanxun\\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" - ], - "originalTargetFrameworks": [ - "net8.0" - ], - "sources": { - "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, - "C:\\Program Files\\dotnet\\library-packs": {}, - "https://api.nuget.org/v3/index.json": {} - }, - "frameworks": { - "net8.0": { - "targetAlias": "net8.0", - "projectReferences": {} - } - }, - "warningProperties": { - "warnAsError": [ - "NU1605" - ] - }, - "restoreAuditProperties": { - "enableAudit": "true", - "auditLevel": "low", - "auditMode": "direct" - }, - "SdkAnalysisLevel": "9.0.300" - }, - "frameworks": { - "net8.0": { - "targetAlias": "net8.0", - "dependencies": { - "AutoMapper": { - "target": "Package", - "version": "[12.0.1, )" - }, - "AutoMapper.Extensions.Microsoft.DependencyInjection": { - "target": "Package", - "version": "[12.0.0, )" - }, - "MassTransit.RabbitMQ": { - "target": "Package", - "version": "[8.5.5, )" - }, - "Microsoft.AspNetCore.Authentication.JwtBearer": { - "target": "Package", - "version": "[8.0.21, )" - }, - "Microsoft.AspNetCore.SignalR": { - "target": "Package", - "version": "[1.2.0, )" - }, - "Microsoft.EntityFrameworkCore.Design": { - "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", - "suppressParent": "All", - "target": "Package", - "version": "[8.0.21, )" - }, - "Microsoft.EntityFrameworkCore.Tools": { - "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", - "suppressParent": "All", - "target": "Package", - "version": "[8.0.21, )" - }, - "Microsoft.Extensions.Caching.StackExchangeRedis": { - "target": "Package", - "version": "[10.0.2, )" - }, - "Microsoft.VisualStudio.Azure.Containers.Tools.Targets": { - "target": "Package", - "version": "[1.22.1, )" - }, - "Newtonsoft.Json": { - "target": "Package", - "version": "[13.0.4, )" - }, - "Pomelo.EntityFrameworkCore.MySql": { - "target": "Package", - "version": "[8.0.3, )" - }, - "RedLock.net": { - "target": "Package", - "version": "[2.3.2, )" - }, - "StackExchange.Redis": { - "target": "Package", - "version": "[2.9.32, )" - }, - "Swashbuckle.AspNetCore": { - "target": "Package", - "version": "[6.6.2, )" - }, - "System.IdentityModel.Tokens.Jwt": { - "target": "Package", - "version": "[8.14.0, )" - } - }, - "imports": [ - "net461", - "net462", - "net47", - "net471", - "net472", - "net48", - "net481" - ], - "assetTargetFallback": true, - "warn": true, - "frameworkReferences": { - "Microsoft.AspNetCore.App": { - "privateAssets": "none" - }, - "Microsoft.NETCore.App": { - "privateAssets": "all" - } - }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" - } - } - } - } +{ + "format": 1, + "restore": { + "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj": {} + }, + "projects": { + "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj", + "projectName": "IMTest", + "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj", + "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", + "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\nanxun\\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" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "C:\\Program Files\\dotnet\\library-packs": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": { + "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj": { + "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj" + } + } + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + }, + "SdkAnalysisLevel": "9.0.300" + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "Microsoft.EntityFrameworkCore.InMemory": { + "target": "Package", + "version": "[8.0.22, )" + }, + "Microsoft.NET.Test.Sdk": { + "target": "Package", + "version": "[17.8.0, )" + }, + "Moq": { + "target": "Package", + "version": "[4.20.72, )" + }, + "coverlet.collector": { + "target": "Package", + "version": "[6.0.0, )" + }, + "xunit": { + "target": "Package", + "version": "[2.5.3, )" + }, + "xunit.runner.visualstudio": { + "target": "Package", + "version": "[2.5.3, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" + } + } + }, + "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj", + "projectName": "IM_API", + "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj", + "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", + "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\nanxun\\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" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "C:\\Program Files\\dotnet\\library-packs": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + }, + "SdkAnalysisLevel": "9.0.300" + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "AutoMapper": { + "target": "Package", + "version": "[12.0.1, )" + }, + "AutoMapper.Extensions.Microsoft.DependencyInjection": { + "target": "Package", + "version": "[12.0.0, )" + }, + "MassTransit.RabbitMQ": { + "target": "Package", + "version": "[8.5.5, )" + }, + "Microsoft.AspNetCore.Authentication.JwtBearer": { + "target": "Package", + "version": "[8.0.21, )" + }, + "Microsoft.AspNetCore.SignalR": { + "target": "Package", + "version": "[1.2.0, )" + }, + "Microsoft.EntityFrameworkCore.Design": { + "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", + "suppressParent": "All", + "target": "Package", + "version": "[8.0.21, )" + }, + "Microsoft.EntityFrameworkCore.Tools": { + "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive", + "suppressParent": "All", + "target": "Package", + "version": "[8.0.21, )" + }, + "Microsoft.Extensions.Caching.StackExchangeRedis": { + "target": "Package", + "version": "[10.0.2, )" + }, + "Microsoft.VisualStudio.Azure.Containers.Tools.Targets": { + "target": "Package", + "version": "[1.22.1, )" + }, + "Newtonsoft.Json": { + "target": "Package", + "version": "[13.0.4, )" + }, + "Pomelo.EntityFrameworkCore.MySql": { + "target": "Package", + "version": "[8.0.3, )" + }, + "RedLock.net": { + "target": "Package", + "version": "[2.3.2, )" + }, + "StackExchange.Redis": { + "target": "Package", + "version": "[2.9.32, )" + }, + "Swashbuckle.AspNetCore": { + "target": "Package", + "version": "[6.6.2, )" + }, + "System.IdentityModel.Tokens.Jwt": { + "target": "Package", + "version": "[8.14.0, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.AspNetCore.App": { + "privateAssets": "none" + }, + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" + } + } + } + } } \ No newline at end of file diff --git a/backend/IMTest/obj/IMTest.csproj.nuget.g.props b/backend/IMTest/obj/IMTest.csproj.nuget.g.props index a72789c..b4119ce 100644 --- a/backend/IMTest/obj/IMTest.csproj.nuget.g.props +++ b/backend/IMTest/obj/IMTest.csproj.nuget.g.props @@ -1,29 +1,29 @@ - - - - True - NuGet - $(MSBuildThisFileDirectory)project.assets.json - $(UserProfile)\.nuget\packages\ - C:\Users\nanxun\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages - PackageReference - 6.14.1 - - - - - - - - - - - - - - - C:\Users\nanxun\.nuget\packages\xunit.analyzers\1.4.0 - C:\Users\nanxun\.nuget\packages\microsoft.extensions.apidescription.server\6.0.5 - C:\Users\nanxun\.nuget\packages\microsoft.visualstudio.azure.containers.tools.targets\1.22.1 - + + + + True + NuGet + $(MSBuildThisFileDirectory)project.assets.json + $(UserProfile)\.nuget\packages\ + C:\Users\nanxun\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages + PackageReference + 6.14.1 + + + + + + + + + + + + + + + C:\Users\nanxun\.nuget\packages\xunit.analyzers\1.4.0 + C:\Users\nanxun\.nuget\packages\microsoft.extensions.apidescription.server\6.0.5 + C:\Users\nanxun\.nuget\packages\microsoft.visualstudio.azure.containers.tools.targets\1.22.1 + \ No newline at end of file diff --git a/backend/IMTest/obj/IMTest.csproj.nuget.g.targets b/backend/IMTest/obj/IMTest.csproj.nuget.g.targets index 6d8161d..41b09e9 100644 --- a/backend/IMTest/obj/IMTest.csproj.nuget.g.targets +++ b/backend/IMTest/obj/IMTest.csproj.nuget.g.targets @@ -1,11 +1,11 @@ - - - - - - - - - - + + + + + + + + + + \ No newline at end of file diff --git a/backend/IMTest/obj/project.assets.json b/backend/IMTest/obj/project.assets.json index 4e1d539..327ac33 100644 --- a/backend/IMTest/obj/project.assets.json +++ b/backend/IMTest/obj/project.assets.json @@ -1,8969 +1,8969 @@ -{ - "version": 3, - "targets": { - "net8.0": { - "AutoMapper/12.0.1": { - "type": "package", - "dependencies": { - "Microsoft.CSharp": "4.7.0" - }, - "compile": { - "lib/netstandard2.1/AutoMapper.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/AutoMapper.dll": { - "related": ".xml" - } - } - }, - "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.0": { - "type": "package", - "dependencies": { - "AutoMapper": "12.0.0", - "Microsoft.Extensions.Options": "6.0.0" - }, - "compile": { - "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll": {} - }, - "runtime": { - "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll": {} - } - }, - "Castle.Core/5.1.1": { - "type": "package", - "dependencies": { - "System.Diagnostics.EventLog": "6.0.0" - }, - "compile": { - "lib/net6.0/Castle.Core.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net6.0/Castle.Core.dll": { - "related": ".xml" - } - } - }, - "coverlet.collector/6.0.0": { - "type": "package", - "build": { - "build/netstandard1.0/coverlet.collector.targets": {} - } - }, - "MassTransit/8.5.5": { - "type": "package", - "dependencies": { - "MassTransit.Abstractions": "8.5.5", - "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0", - "Microsoft.Extensions.Diagnostics.HealthChecks": "8.0.0", - "Microsoft.Extensions.Hosting.Abstractions": "8.0.0", - "Microsoft.Extensions.Logging.Abstractions": "8.0.0", - "Microsoft.Extensions.Options": "8.0.0" - }, - "compile": { - "lib/net8.0/MassTransit.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/MassTransit.dll": { - "related": ".xml" - } - } - }, - "MassTransit.Abstractions/8.5.5": { - "type": "package", - "compile": { - "lib/net8.0/MassTransit.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/MassTransit.Abstractions.dll": { - "related": ".xml" - } - } - }, - "MassTransit.RabbitMQ/8.5.5": { - "type": "package", - "dependencies": { - "MassTransit": "8.5.5", - "RabbitMQ.Client": "7.1.2" - }, - "compile": { - "lib/net8.0/MassTransit.RabbitMqTransport.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/MassTransit.RabbitMqTransport.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Authentication.Abstractions/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", - "Microsoft.Extensions.Logging.Abstractions": "8.0.2", - "Microsoft.Extensions.Options": "8.0.2" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.21": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Protocols.OpenIdConnect": "7.1.2" - }, - "compile": { - "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { - "related": ".xml" - } - }, - "frameworkReferences": [ - "Microsoft.AspNetCore.App" - ] - }, - "Microsoft.AspNetCore.Authorization/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "8.0.2", - "Microsoft.Extensions.Options": "8.0.2" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Authorization.Policy/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Authentication.Abstractions": "2.3.0", - "Microsoft.AspNetCore.Authorization": "2.3.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.Policy.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.Policy.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Connections.Abstractions/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Features": "2.3.0", - "System.IO.Pipelines": "8.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Hosting.Abstractions/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Hosting.Server.Abstractions": "2.3.0", - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", - "Microsoft.Extensions.Hosting.Abstractions": "8.0.1" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Abstractions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Features": "2.3.0", - "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Server.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Server.Abstractions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Http/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", - "Microsoft.AspNetCore.WebUtilities": "2.3.0", - "Microsoft.Extensions.ObjectPool": "8.0.11", - "Microsoft.Extensions.Options": "8.0.2", - "Microsoft.Net.Http.Headers": "2.3.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Http.Abstractions/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Features": "2.3.0", - "System.Text.Encodings.Web": "8.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Http.Connections/1.2.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Authorization.Policy": "2.3.0", - "Microsoft.AspNetCore.Hosting.Abstractions": "2.3.0", - "Microsoft.AspNetCore.Http": "2.3.0", - "Microsoft.AspNetCore.Http.Connections.Common": "1.2.0", - "Microsoft.AspNetCore.Routing": "2.3.0", - "Microsoft.AspNetCore.WebSockets": "2.3.0", - "Newtonsoft.Json": "11.0.2", - "System.Net.WebSockets.WebSocketProtocol": "5.1.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Common/1.2.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "2.3.0", - "Newtonsoft.Json": "11.0.2", - "System.Buffers": "4.6.0", - "System.IO.Pipelines": "8.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Http.Extensions/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", - "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0", - "Microsoft.Net.Http.Headers": "2.3.0", - "System.Buffers": "4.6.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Extensions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Extensions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Http.Features/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "8.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Routing/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Extensions": "2.3.0", - "Microsoft.AspNetCore.Routing.Abstractions": "2.3.0", - "Microsoft.Extensions.Logging.Abstractions": "8.0.2", - "Microsoft.Extensions.ObjectPool": "8.0.11", - "Microsoft.Extensions.Options": "8.0.2" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Routing.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Routing.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Routing.Abstractions/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Abstractions": "2.3.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR/1.2.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Connections": "1.2.0", - "Microsoft.AspNetCore.SignalR.Core": "1.2.0", - "Microsoft.AspNetCore.WebSockets": "2.3.0", - "System.IO.Pipelines": "8.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Common/1.2.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "2.3.0", - "Microsoft.Extensions.Options": "8.0.2", - "Newtonsoft.Json": "11.0.2", - "System.Buffers": "4.6.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Core/1.2.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Authorization": "2.3.0", - "Microsoft.AspNetCore.SignalR.Common": "1.2.0", - "Microsoft.AspNetCore.SignalR.Protocols.Json": "1.2.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2", - "Microsoft.Extensions.Logging.Abstractions": "8.0.2", - "System.IO.Pipelines": "8.0.0", - "System.Reflection.Emit": "4.7.0", - "System.Threading.Channels": "8.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Core.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Core.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/1.2.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "1.2.0", - "Newtonsoft.Json": "11.0.2", - "System.IO.Pipelines": "8.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.WebSockets/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Extensions": "2.3.0", - "Microsoft.Extensions.Options": "8.0.2", - "System.Net.WebSockets.WebSocketProtocol": "5.1.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.WebSockets.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.WebSockets.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.WebUtilities/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.Net.Http.Headers": "2.3.0", - "System.Text.Encodings.Web": "8.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.WebUtilities.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.WebUtilities.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Bcl.AsyncInterfaces/1.1.0": { - "type": "package", - "compile": { - "ref/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": {} - }, - "runtime": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "related": ".xml" - } - } - }, - "Microsoft.CodeCoverage/17.8.0": { - "type": "package", - "compile": { - "lib/netcoreapp3.1/Microsoft.VisualStudio.CodeCoverage.Shim.dll": {} - }, - "runtime": { - "lib/netcoreapp3.1/Microsoft.VisualStudio.CodeCoverage.Shim.dll": {} - }, - "build": { - "build/netstandard2.0/Microsoft.CodeCoverage.props": {}, - "build/netstandard2.0/Microsoft.CodeCoverage.targets": {} - } - }, - "Microsoft.CSharp/4.7.0": { - "type": "package", - "compile": { - "ref/netcoreapp2.0/_._": {} - }, - "runtime": { - "lib/netcoreapp2.0/_._": {} - } - }, - "Microsoft.EntityFrameworkCore/8.0.22": { - "type": "package", - "dependencies": { - "Microsoft.EntityFrameworkCore.Abstractions": "8.0.22", - "Microsoft.EntityFrameworkCore.Analyzers": "8.0.22", - "Microsoft.Extensions.Caching.Memory": "8.0.1", - "Microsoft.Extensions.Logging": "8.0.1" - }, - "compile": { - "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props": {} - } - }, - "Microsoft.EntityFrameworkCore.Abstractions/8.0.22": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.EntityFrameworkCore.Analyzers/8.0.22": { - "type": "package", - "compile": { - "lib/netstandard2.0/_._": {} - }, - "runtime": { - "lib/netstandard2.0/_._": {} - } - }, - "Microsoft.EntityFrameworkCore.InMemory/8.0.22": { - "type": "package", - "dependencies": { - "Microsoft.EntityFrameworkCore": "8.0.22" - }, - "compile": { - "lib/net8.0/Microsoft.EntityFrameworkCore.InMemory.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.EntityFrameworkCore.InMemory.dll": { - "related": ".xml" - } - } - }, - "Microsoft.EntityFrameworkCore.Relational/8.0.13": { - "type": "package", - "dependencies": { - "Microsoft.EntityFrameworkCore": "8.0.13", - "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Extensions.ApiDescription.Server/6.0.5": { - "type": "package", - "build": { - "build/_._": {} - }, - "buildMultiTargeting": { - "buildMultiTargeting/_._": {} - } - }, - "Microsoft.Extensions.Caching.Abstractions/10.0.2": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "10.0.2" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.Caching.Memory/8.0.1": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Caching.Abstractions": "8.0.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2", - "Microsoft.Extensions.Logging.Abstractions": "8.0.2", - "Microsoft.Extensions.Options": "8.0.2", - "Microsoft.Extensions.Primitives": "8.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "Microsoft.Extensions.Caching.StackExchangeRedis/10.0.2": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Caching.Abstractions": "10.0.2", - "Microsoft.Extensions.Logging.Abstractions": "10.0.2", - "Microsoft.Extensions.Options": "10.0.2", - "StackExchange.Redis": "2.7.27" - }, - "compile": { - "lib/netstandard2.0/Microsoft.Extensions.Caching.StackExchangeRedis.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.Extensions.Caching.StackExchangeRedis.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "8.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "Microsoft.Extensions.DependencyInjection/8.0.1": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.Diagnostics.Abstractions/8.0.1": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2", - "Microsoft.Extensions.Options": "8.0.2" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Diagnostics.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Diagnostics.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "Microsoft.Extensions.Diagnostics.HealthChecks/8.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions": "8.0.0", - "Microsoft.Extensions.Hosting.Abstractions": "8.0.0", - "Microsoft.Extensions.Logging.Abstractions": "8.0.0", - "Microsoft.Extensions.Options": "8.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/8.0.0": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Extensions.FileProviders.Abstractions/8.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "8.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.FileProviders.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.FileProviders.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "Microsoft.Extensions.Hosting.Abstractions/8.0.1": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Configuration.Abstractions": "8.0.0", - "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2", - "Microsoft.Extensions.Diagnostics.Abstractions": "8.0.1", - "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0", - "Microsoft.Extensions.Logging.Abstractions": "8.0.2" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Hosting.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Hosting.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "Microsoft.Extensions.Logging/8.0.1": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "8.0.1", - "Microsoft.Extensions.Logging.Abstractions": "8.0.2", - "Microsoft.Extensions.Options": "8.0.2" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.2": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "System.Diagnostics.DiagnosticSource": "10.0.2" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {} - } - }, - "Microsoft.Extensions.ObjectPool/8.0.11": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Extensions.ObjectPool.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.ObjectPool.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Extensions.Options/10.0.2": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", - "Microsoft.Extensions.Primitives": "10.0.2" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/Microsoft.Extensions.Options.targets": {} - } - }, - "Microsoft.Extensions.Primitives/10.0.2": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.IdentityModel.Abstractions/8.14.0": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.IdentityModel.JsonWebTokens/8.14.0": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Tokens": "8.14.0" - }, - "compile": { - "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll": { - "related": ".xml" - } - } - }, - "Microsoft.IdentityModel.Logging/8.14.0": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Abstractions": "8.14.0" - }, - "compile": { - "lib/net8.0/Microsoft.IdentityModel.Logging.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Logging.dll": { - "related": ".xml" - } - } - }, - "Microsoft.IdentityModel.Protocols/7.1.2": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Logging": "7.1.2", - "Microsoft.IdentityModel.Tokens": "7.1.2" - }, - "compile": { - "lib/net8.0/Microsoft.IdentityModel.Protocols.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Protocols.dll": { - "related": ".xml" - } - } - }, - "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.1.2": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.Protocols": "7.1.2", - "System.IdentityModel.Tokens.Jwt": "7.1.2" - }, - "compile": { - "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { - "related": ".xml" - } - } - }, - "Microsoft.IdentityModel.Tokens/8.14.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "8.0.0", - "Microsoft.IdentityModel.Logging": "8.14.0" - }, - "compile": { - "lib/net8.0/Microsoft.IdentityModel.Tokens.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.IdentityModel.Tokens.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Net.Http.Headers/2.3.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Primitives": "8.0.0", - "System.Buffers": "4.6.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.Net.Http.Headers.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.Net.Http.Headers.dll": { - "related": ".xml" - } - } - }, - "Microsoft.NET.Test.Sdk/17.8.0": { - "type": "package", - "dependencies": { - "Microsoft.CodeCoverage": "17.8.0", - "Microsoft.TestPlatform.TestHost": "17.8.0" - }, - "compile": { - "lib/netcoreapp3.1/_._": {} - }, - "runtime": { - "lib/netcoreapp3.1/_._": {} - }, - "build": { - "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.props": {}, - "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.targets": {} - }, - "buildMultiTargeting": { - "buildMultiTargeting/Microsoft.NET.Test.Sdk.props": {} - } - }, - "Microsoft.NETCore.Platforms/1.1.0": { - "type": "package", - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "Microsoft.NETCore.Targets/1.1.0": { - "type": "package", - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "Microsoft.OpenApi/1.6.14": { - "type": "package", - "compile": { - "lib/netstandard2.0/Microsoft.OpenApi.dll": { - "related": ".pdb;.xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.OpenApi.dll": { - "related": ".pdb;.xml" - } - } - }, - "Microsoft.TestPlatform.ObjectModel/17.8.0": { - "type": "package", - "dependencies": { - "NuGet.Frameworks": "6.5.0", - "System.Reflection.Metadata": "1.6.0" - }, - "compile": { - "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll": {}, - "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll": {}, - "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll": {} - }, - "runtime": { - "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll": {}, - "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll": {}, - "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll": {} - }, - "resource": { - "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll": { - "locale": "zh-Hant" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { - "locale": "zh-Hant" - } - } - }, - "Microsoft.TestPlatform.TestHost/17.8.0": { - "type": "package", - "dependencies": { - "Microsoft.TestPlatform.ObjectModel": "17.8.0", - "Newtonsoft.Json": "13.0.1" - }, - "compile": { - "lib/netcoreapp3.1/Microsoft.TestPlatform.CommunicationUtilities.dll": {}, - "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll": {}, - "lib/netcoreapp3.1/Microsoft.TestPlatform.CrossPlatEngine.dll": {}, - "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll": {}, - "lib/netcoreapp3.1/Microsoft.TestPlatform.Utilities.dll": {}, - "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.Common.dll": {}, - "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll": {}, - "lib/netcoreapp3.1/testhost.dll": { - "related": ".deps.json" - } - }, - "runtime": { - "lib/netcoreapp3.1/Microsoft.TestPlatform.CommunicationUtilities.dll": {}, - "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll": {}, - "lib/netcoreapp3.1/Microsoft.TestPlatform.CrossPlatEngine.dll": {}, - "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll": {}, - "lib/netcoreapp3.1/Microsoft.TestPlatform.Utilities.dll": {}, - "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.Common.dll": {}, - "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll": {}, - "lib/netcoreapp3.1/testhost.dll": { - "related": ".deps.json" - } - }, - "resource": { - "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "cs" - }, - "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "de" - }, - "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "es" - }, - "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "fr" - }, - "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "it" - }, - "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "ja" - }, - "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "ko" - }, - "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "pl" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "pt-BR" - }, - "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "ru" - }, - "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "tr" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "zh-Hans" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { - "locale": "zh-Hant" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { - "locale": "zh-Hant" - }, - "lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { - "locale": "zh-Hant" - } - }, - "build": { - "build/netcoreapp3.1/Microsoft.TestPlatform.TestHost.props": {} - } - }, - "Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.22.1": { - "type": "package", - "build": { - "build/_._": {} - } - }, - "Microsoft.Win32.Primitives/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/Microsoft.Win32.Primitives.dll": { - "related": ".xml" - } - } - }, - "Moq/4.20.72": { - "type": "package", - "dependencies": { - "Castle.Core": "5.1.1" - }, - "compile": { - "lib/net6.0/Moq.dll": {} - }, - "runtime": { - "lib/net6.0/Moq.dll": {} - } - }, - "MySqlConnector/2.3.5": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "7.0.1" - }, - "compile": { - "lib/net8.0/MySqlConnector.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/MySqlConnector.dll": { - "related": ".xml" - } - } - }, - "NETStandard.Library/1.6.1": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.Win32.Primitives": "4.3.0", - "System.AppContext": "4.3.0", - "System.Collections": "4.3.0", - "System.Collections.Concurrent": "4.3.0", - "System.Console": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tools": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Globalization": "4.3.0", - "System.Globalization.Calendars": "4.3.0", - "System.IO": "4.3.0", - "System.IO.Compression": "4.3.0", - "System.IO.Compression.ZipFile": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Linq": "4.3.0", - "System.Linq.Expressions": "4.3.0", - "System.Net.Http": "4.3.0", - "System.Net.Primitives": "4.3.0", - "System.Net.Sockets": "4.3.0", - "System.ObjectModel": "4.3.0", - "System.Reflection": "4.3.0", - "System.Reflection.Extensions": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.InteropServices.RuntimeInformation": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Security.Cryptography.X509Certificates": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Text.Encoding.Extensions": "4.3.0", - "System.Text.RegularExpressions": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "System.Threading.Timer": "4.3.0", - "System.Xml.ReaderWriter": "4.3.0", - "System.Xml.XDocument": "4.3.0" - } - }, - "Newtonsoft.Json/13.0.4": { - "type": "package", - "compile": { - "lib/net6.0/Newtonsoft.Json.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net6.0/Newtonsoft.Json.dll": { - "related": ".xml" - } - } - }, - "NuGet.Frameworks/6.5.0": { - "type": "package", - "compile": { - "lib/netstandard2.0/NuGet.Frameworks.dll": {} - }, - "runtime": { - "lib/netstandard2.0/NuGet.Frameworks.dll": {} - } - }, - "Pipelines.Sockets.Unofficial/2.2.8": { - "type": "package", - "dependencies": { - "System.IO.Pipelines": "5.0.1" - }, - "compile": { - "lib/net5.0/Pipelines.Sockets.Unofficial.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net5.0/Pipelines.Sockets.Unofficial.dll": { - "related": ".xml" - } - } - }, - "Pomelo.EntityFrameworkCore.MySql/8.0.3": { - "type": "package", - "dependencies": { - "Microsoft.EntityFrameworkCore.Relational": "[8.0.13, 8.0.999]", - "MySqlConnector": "2.3.5" - }, - "compile": { - "lib/net8.0/Pomelo.EntityFrameworkCore.MySql.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Pomelo.EntityFrameworkCore.MySql.dll": { - "related": ".xml" - } - } - }, - "RabbitMQ.Client/7.1.2": { - "type": "package", - "dependencies": { - "System.IO.Pipelines": "8.0.0", - "System.Threading.RateLimiting": "8.0.0" - }, - "compile": { - "lib/net8.0/RabbitMQ.Client.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/RabbitMQ.Client.dll": { - "related": ".xml" - } - } - }, - "RedLock.net/2.3.2": { - "type": "package", - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "1.1.0", - "Microsoft.Extensions.Logging": "2.0.0", - "Microsoft.Extensions.Logging.Abstractions": "2.0.0", - "StackExchange.Redis": "2.0.513" - }, - "compile": { - "lib/netstandard2.0/RedLockNet.Abstractions.dll": {}, - "lib/netstandard2.0/RedLockNet.SERedis.dll": {} - }, - "runtime": { - "lib/netstandard2.0/RedLockNet.Abstractions.dll": {}, - "lib/netstandard2.0/RedLockNet.SERedis.dll": {} - } - }, - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "runtimeTargets": { - "runtimes/debian.8-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "debian.8-x64" - } - } - }, - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "runtimeTargets": { - "runtimes/fedora.23-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "fedora.23-x64" - } - } - }, - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "runtimeTargets": { - "runtimes/fedora.24-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "fedora.24-x64" - } - } - }, - "runtime.native.System/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - }, - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "runtime.native.System.IO.Compression/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - }, - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "runtime.native.System.Net.Http/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - }, - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "type": "package", - "dependencies": { - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "4.3.0" - }, - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "dependencies": { - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - }, - "compile": { - "lib/netstandard1.0/_._": {} - }, - "runtime": { - "lib/netstandard1.0/_._": {} - } - }, - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "runtimeTargets": { - "runtimes/opensuse.13.2-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "opensuse.13.2-x64" - } - } - }, - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "runtimeTargets": { - "runtimes/opensuse.42.1-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "opensuse.42.1-x64" - } - } - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "type": "package", - "runtimeTargets": { - "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.Apple.dylib": { - "assetType": "native", - "rid": "osx.10.10-x64" - } - } - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "runtimeTargets": { - "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.OpenSsl.dylib": { - "assetType": "native", - "rid": "osx.10.10-x64" - } - } - }, - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "runtimeTargets": { - "runtimes/rhel.7-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "rhel.7-x64" - } - } - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "runtimeTargets": { - "runtimes/ubuntu.14.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "ubuntu.14.04-x64" - } - } - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "runtimeTargets": { - "runtimes/ubuntu.16.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "ubuntu.16.04-x64" - } - } - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "runtimeTargets": { - "runtimes/ubuntu.16.10-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { - "assetType": "native", - "rid": "ubuntu.16.10-x64" - } - } - }, - "StackExchange.Redis/2.9.32": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.Logging.Abstractions": "8.0.0", - "Pipelines.Sockets.Unofficial": "2.2.8" - }, - "compile": { - "lib/net8.0/StackExchange.Redis.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/StackExchange.Redis.dll": { - "related": ".xml" - } - } - }, - "Swashbuckle.AspNetCore/6.6.2": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.ApiDescription.Server": "6.0.5", - "Swashbuckle.AspNetCore.Swagger": "6.6.2", - "Swashbuckle.AspNetCore.SwaggerGen": "6.6.2", - "Swashbuckle.AspNetCore.SwaggerUI": "6.6.2" - }, - "build": { - "build/_._": {} - } - }, - "Swashbuckle.AspNetCore.Swagger/6.6.2": { - "type": "package", - "dependencies": { - "Microsoft.OpenApi": "1.6.14" - }, - "compile": { - "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": { - "related": ".pdb;.xml" - } - }, - "runtime": { - "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": { - "related": ".pdb;.xml" - } - }, - "frameworkReferences": [ - "Microsoft.AspNetCore.App" - ] - }, - "Swashbuckle.AspNetCore.SwaggerGen/6.6.2": { - "type": "package", - "dependencies": { - "Swashbuckle.AspNetCore.Swagger": "6.6.2" - }, - "compile": { - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { - "related": ".pdb;.xml" - } - }, - "runtime": { - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { - "related": ".pdb;.xml" - } - } - }, - "Swashbuckle.AspNetCore.SwaggerUI/6.6.2": { - "type": "package", - "compile": { - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { - "related": ".pdb;.xml" - } - }, - "runtime": { - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { - "related": ".pdb;.xml" - } - }, - "frameworkReferences": [ - "Microsoft.AspNetCore.App" - ] - }, - "System.AppContext/4.3.0": { - "type": "package", - "dependencies": { - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.6/System.AppContext.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.6/System.AppContext.dll": {} - } - }, - "System.Buffers/4.6.0": { - "type": "package", - "compile": { - "lib/netcoreapp2.1/_._": {} - }, - "runtime": { - "lib/netcoreapp2.1/_._": {} - } - }, - "System.Collections/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Collections.dll": { - "related": ".xml" - } - } - }, - "System.Collections.Concurrent/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Globalization": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Collections.Concurrent.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Collections.Concurrent.dll": {} - } - }, - "System.Console/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Console.dll": { - "related": ".xml" - } - } - }, - "System.Diagnostics.Debug/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Diagnostics.Debug.dll": { - "related": ".xml" - } - } - }, - "System.Diagnostics.DiagnosticSource/10.0.2": { - "type": "package", - "compile": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.Diagnostics.EventLog/6.0.0": { - "type": "package", - "compile": { - "lib/net6.0/System.Diagnostics.EventLog.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net6.0/System.Diagnostics.EventLog.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/netcoreapp3.1/_._": {} - }, - "runtimeTargets": { - "runtimes/win/lib/net6.0/System.Diagnostics.EventLog.Messages.dll": { - "assetType": "runtime", - "rid": "win" - }, - "runtimes/win/lib/net6.0/System.Diagnostics.EventLog.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Diagnostics.Tools/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.0/System.Diagnostics.Tools.dll": { - "related": ".xml" - } - } - }, - "System.Diagnostics.Tracing/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.5/System.Diagnostics.Tracing.dll": { - "related": ".xml" - } - } - }, - "System.Globalization/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Globalization.dll": { - "related": ".xml" - } - } - }, - "System.Globalization.Calendars/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Globalization": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Globalization.Calendars.dll": { - "related": ".xml" - } - } - }, - "System.Globalization.Extensions/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Globalization": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.InteropServices": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/_._": { - "related": ".xml" - } - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.3/System.Globalization.Extensions.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.3/System.Globalization.Extensions.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.IdentityModel.Tokens.Jwt/8.14.0": { - "type": "package", - "dependencies": { - "Microsoft.IdentityModel.JsonWebTokens": "8.14.0", - "Microsoft.IdentityModel.Tokens": "8.14.0" - }, - "compile": { - "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll": { - "related": ".xml" - } - } - }, - "System.IO/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "ref/netstandard1.5/System.IO.dll": { - "related": ".xml" - } - } - }, - "System.IO.Compression/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Buffers": "4.3.0", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "runtime.native.System": "4.3.0", - "runtime.native.System.IO.Compression": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.IO.Compression.dll": { - "related": ".xml" - } - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.3/System.IO.Compression.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.3/System.IO.Compression.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.IO.Compression.ZipFile/4.3.0": { - "type": "package", - "dependencies": { - "System.Buffers": "4.3.0", - "System.IO": "4.3.0", - "System.IO.Compression": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Text.Encoding": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.IO.Compression.ZipFile.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.IO.Compression.ZipFile.dll": {} - } - }, - "System.IO.FileSystem/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.IO.FileSystem.dll": { - "related": ".xml" - } - } - }, - "System.IO.FileSystem.Primitives/4.3.0": { - "type": "package", - "dependencies": { - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.IO.FileSystem.Primitives.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.IO.FileSystem.Primitives.dll": {} - } - }, - "System.IO.Pipelines/8.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.IO.Pipelines.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.IO.Pipelines.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "System.Linq/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0" - }, - "compile": { - "ref/netstandard1.6/System.Linq.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.6/System.Linq.dll": {} - } - }, - "System.Linq.Expressions/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Linq": "4.3.0", - "System.ObjectModel": "4.3.0", - "System.Reflection": "4.3.0", - "System.Reflection.Emit": "4.3.0", - "System.Reflection.Emit.ILGeneration": "4.3.0", - "System.Reflection.Emit.Lightweight": "4.3.0", - "System.Reflection.Extensions": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Reflection.TypeExtensions": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Threading": "4.3.0" - }, - "compile": { - "ref/netstandard1.6/System.Linq.Expressions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.6/System.Linq.Expressions.dll": {} - } - }, - "System.Net.Http/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.DiagnosticSource": "4.3.0", - "System.Diagnostics.Tracing": "4.3.0", - "System.Globalization": "4.3.0", - "System.Globalization.Extensions": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.Net.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.OpenSsl": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Security.Cryptography.X509Certificates": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "runtime.native.System": "4.3.0", - "runtime.native.System.Net.Http": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Net.Http.dll": { - "related": ".xml" - } - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.6/System.Net.Http.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.3/System.Net.Http.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Net.Primitives/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Net.Primitives.dll": { - "related": ".xml" - } - } - }, - "System.Net.Sockets/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.Net.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Net.Sockets.dll": { - "related": ".xml" - } - } - }, - "System.Net.WebSockets.WebSocketProtocol/5.1.0": { - "type": "package", - "compile": { - "lib/net6.0/System.Net.WebSockets.WebSocketProtocol.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net6.0/System.Net.WebSockets.WebSocketProtocol.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "System.ObjectModel/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.ObjectModel.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.ObjectModel.dll": {} - } - }, - "System.Reflection/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.IO": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.5/System.Reflection.dll": { - "related": ".xml" - } - } - }, - "System.Reflection.Emit/4.7.0": { - "type": "package", - "compile": { - "ref/netcoreapp2.0/_._": {} - }, - "runtime": { - "lib/netcoreapp2.0/_._": {} - } - }, - "System.Reflection.Emit.ILGeneration/4.3.0": { - "type": "package", - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Reflection.Emit.ILGeneration.dll": {} - } - }, - "System.Reflection.Emit.Lightweight/4.3.0": { - "type": "package", - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Emit.ILGeneration": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Reflection.Emit.Lightweight.dll": {} - } - }, - "System.Reflection.Extensions/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.0/System.Reflection.Extensions.dll": { - "related": ".xml" - } - } - }, - "System.Reflection.Metadata/1.6.0": { - "type": "package", - "compile": { - "lib/netstandard2.0/System.Reflection.Metadata.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/System.Reflection.Metadata.dll": { - "related": ".xml" - } - } - }, - "System.Reflection.Primitives/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.0/System.Reflection.Primitives.dll": { - "related": ".xml" - } - } - }, - "System.Reflection.TypeExtensions/4.3.0": { - "type": "package", - "dependencies": { - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.5/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.5/System.Reflection.TypeExtensions.dll": {} - } - }, - "System.Resources.ResourceManager/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Globalization": "4.3.0", - "System.Reflection": "4.3.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.0/System.Resources.ResourceManager.dll": { - "related": ".xml" - } - } - }, - "System.Runtime/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0" - }, - "compile": { - "ref/netstandard1.5/System.Runtime.dll": { - "related": ".xml" - } - } - }, - "System.Runtime.Extensions/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.5/System.Runtime.Extensions.dll": { - "related": ".xml" - } - } - }, - "System.Runtime.Handles/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Runtime.Handles.dll": { - "related": ".xml" - } - } - }, - "System.Runtime.InteropServices/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Reflection": "4.3.0", - "System.Reflection.Primitives": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Handles": "4.3.0" - }, - "compile": { - "ref/netcoreapp1.1/System.Runtime.InteropServices.dll": {} - } - }, - "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { - "type": "package", - "dependencies": { - "System.Reflection": "4.3.0", - "System.Reflection.Extensions": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Threading": "4.3.0", - "runtime.native.System": "4.3.0" - }, - "compile": { - "ref/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {} - }, - "runtime": { - "lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {} - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Runtime.Numerics/4.3.0": { - "type": "package", - "dependencies": { - "System.Globalization": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0" - }, - "compile": { - "ref/netstandard1.1/System.Runtime.Numerics.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Runtime.Numerics.dll": {} - } - }, - "System.Security.Cryptography.Algorithms/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.Apple": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - }, - "compile": { - "ref/netstandard1.6/System.Security.Cryptography.Algorithms.dll": {} - }, - "runtimeTargets": { - "runtimes/osx/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { - "assetType": "runtime", - "rid": "osx" - }, - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Security.Cryptography.Cng/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0" - }, - "compile": { - "ref/netstandard1.6/_._": {} - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Cng.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Cng.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Security.Cryptography.Csp/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/_._": {} - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Csp.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Csp.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Security.Cryptography.Encoding/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Collections.Concurrent": "4.3.0", - "System.Linq": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Security.Cryptography.Encoding.dll": { - "related": ".xml" - } - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Security.Cryptography.OpenSsl/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - }, - "compile": { - "ref/netstandard1.6/_._": {} - }, - "runtime": { - "lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll": {} - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll": { - "assetType": "runtime", - "rid": "unix" - } - } - }, - "System.Security.Cryptography.Primitives/4.3.0": { - "type": "package", - "dependencies": { - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Security.Cryptography.Primitives.dll": {} - }, - "runtime": { - "lib/netstandard1.3/System.Security.Cryptography.Primitives.dll": {} - } - }, - "System.Security.Cryptography.X509Certificates/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.Globalization.Calendars": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.Handles": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Runtime.Numerics": "4.3.0", - "System.Security.Cryptography.Algorithms": "4.3.0", - "System.Security.Cryptography.Cng": "4.3.0", - "System.Security.Cryptography.Csp": "4.3.0", - "System.Security.Cryptography.Encoding": "4.3.0", - "System.Security.Cryptography.OpenSsl": "4.3.0", - "System.Security.Cryptography.Primitives": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "runtime.native.System": "4.3.0", - "runtime.native.System.Net.Http": "4.3.0", - "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" - }, - "compile": { - "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.dll": { - "related": ".xml" - } - }, - "runtimeTargets": { - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll": { - "assetType": "runtime", - "rid": "unix" - }, - "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll": { - "assetType": "runtime", - "rid": "win" - } - } - }, - "System.Text.Encoding/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Text.Encoding.dll": { - "related": ".xml" - } - } - }, - "System.Text.Encoding.Extensions/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0", - "System.Text.Encoding": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Text.Encoding.Extensions.dll": { - "related": ".xml" - } - } - }, - "System.Text.Encodings.Web/8.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - }, - "runtimeTargets": { - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { - "assetType": "runtime", - "rid": "browser" - } - } - }, - "System.Text.RegularExpressions/4.3.0": { - "type": "package", - "dependencies": { - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netcoreapp1.1/System.Text.RegularExpressions.dll": {} - }, - "runtime": { - "lib/netstandard1.6/System.Text.RegularExpressions.dll": {} - } - }, - "System.Threading/4.3.0": { - "type": "package", - "dependencies": { - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Threading.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Threading.dll": {} - } - }, - "System.Threading.Channels/8.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Threading.Channels.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Threading.Channels.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "System.Threading.RateLimiting/8.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Threading.RateLimiting.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Threading.RateLimiting.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net6.0/_._": {} - } - }, - "System.Threading.Tasks/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Threading.Tasks.dll": { - "related": ".xml" - } - } - }, - "System.Threading.Tasks.Extensions/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Runtime": "4.3.0", - "System.Threading.Tasks": "4.3.0" - }, - "compile": { - "lib/netstandard1.0/_._": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.0/System.Threading.Tasks.Extensions.dll": { - "related": ".xml" - } - } - }, - "System.Threading.Timer/4.3.0": { - "type": "package", - "dependencies": { - "Microsoft.NETCore.Platforms": "1.1.0", - "Microsoft.NETCore.Targets": "1.1.0", - "System.Runtime": "4.3.0" - }, - "compile": { - "ref/netstandard1.2/System.Threading.Timer.dll": { - "related": ".xml" - } - } - }, - "System.Xml.ReaderWriter/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.IO.FileSystem": "4.3.0", - "System.IO.FileSystem.Primitives": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Runtime.InteropServices": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Text.Encoding.Extensions": "4.3.0", - "System.Text.RegularExpressions": "4.3.0", - "System.Threading.Tasks": "4.3.0", - "System.Threading.Tasks.Extensions": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Xml.ReaderWriter.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Xml.ReaderWriter.dll": {} - } - }, - "System.Xml.XDocument/4.3.0": { - "type": "package", - "dependencies": { - "System.Collections": "4.3.0", - "System.Diagnostics.Debug": "4.3.0", - "System.Diagnostics.Tools": "4.3.0", - "System.Globalization": "4.3.0", - "System.IO": "4.3.0", - "System.Reflection": "4.3.0", - "System.Resources.ResourceManager": "4.3.0", - "System.Runtime": "4.3.0", - "System.Runtime.Extensions": "4.3.0", - "System.Text.Encoding": "4.3.0", - "System.Threading": "4.3.0", - "System.Xml.ReaderWriter": "4.3.0" - }, - "compile": { - "ref/netstandard1.3/System.Xml.XDocument.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.3/System.Xml.XDocument.dll": {} - } - }, - "xunit/2.5.3": { - "type": "package", - "dependencies": { - "xunit.analyzers": "1.4.0", - "xunit.assert": "2.5.3", - "xunit.core": "[2.5.3]" - } - }, - "xunit.abstractions/2.0.3": { - "type": "package", - "compile": { - "lib/netstandard2.0/xunit.abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/xunit.abstractions.dll": { - "related": ".xml" - } - } - }, - "xunit.analyzers/1.4.0": { - "type": "package" - }, - "xunit.assert/2.5.3": { - "type": "package", - "dependencies": { - "NETStandard.Library": "1.6.1" - }, - "compile": { - "lib/netstandard1.1/xunit.assert.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.1/xunit.assert.dll": { - "related": ".xml" - } - } - }, - "xunit.core/2.5.3": { - "type": "package", - "dependencies": { - "xunit.extensibility.core": "[2.5.3]", - "xunit.extensibility.execution": "[2.5.3]" - }, - "build": { - "build/xunit.core.props": {}, - "build/xunit.core.targets": {} - }, - "buildMultiTargeting": { - "buildMultiTargeting/xunit.core.props": {}, - "buildMultiTargeting/xunit.core.targets": {} - } - }, - "xunit.extensibility.core/2.5.3": { - "type": "package", - "dependencies": { - "NETStandard.Library": "1.6.1", - "xunit.abstractions": "2.0.3" - }, - "compile": { - "lib/netstandard1.1/xunit.core.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.1/xunit.core.dll": { - "related": ".xml" - } - } - }, - "xunit.extensibility.execution/2.5.3": { - "type": "package", - "dependencies": { - "NETStandard.Library": "1.6.1", - "xunit.extensibility.core": "[2.5.3]" - }, - "compile": { - "lib/netstandard1.1/xunit.execution.dotnet.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard1.1/xunit.execution.dotnet.dll": { - "related": ".xml" - } - } - }, - "xunit.runner.visualstudio/2.5.3": { - "type": "package", - "compile": { - "lib/net6.0/_._": {} - }, - "runtime": { - "lib/net6.0/_._": {} - }, - "build": { - "build/net6.0/xunit.runner.visualstudio.props": {} - } - }, - "IM_API/1.0.0": { - "type": "project", - "framework": ".NETCoreApp,Version=v8.0", - "dependencies": { - "AutoMapper": "12.0.1", - "AutoMapper.Extensions.Microsoft.DependencyInjection": "12.0.0", - "MassTransit.RabbitMQ": "8.5.5", - "Microsoft.AspNetCore.Authentication.JwtBearer": "8.0.21", - "Microsoft.AspNetCore.SignalR": "1.2.0", - "Microsoft.Extensions.Caching.StackExchangeRedis": "10.0.2", - "Microsoft.VisualStudio.Azure.Containers.Tools.Targets": "1.22.1", - "Newtonsoft.Json": "13.0.4", - "Pomelo.EntityFrameworkCore.MySql": "8.0.3", - "RedLock.net": "2.3.2", - "StackExchange.Redis": "2.9.32", - "Swashbuckle.AspNetCore": "6.6.2", - "System.IdentityModel.Tokens.Jwt": "8.14.0" - }, - "compile": { - "bin/placeholder/IM_API.dll": {} - }, - "runtime": { - "bin/placeholder/IM_API.dll": {} - }, - "frameworkReferences": [ - "Microsoft.AspNetCore.App" - ] - } - } - }, - "libraries": { - "AutoMapper/12.0.1": { - "sha512": "hvV62vl6Hp/WfQ24yzo3Co9+OPl8wH8hApwVtgWpiAynVJkUcs7xvehnSftawL8Pe8FrPffBRM3hwzLQqWDNjA==", - "type": "package", - "path": "automapper/12.0.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "automapper.12.0.1.nupkg.sha512", - "automapper.nuspec", - "icon.png", - "lib/netstandard2.1/AutoMapper.dll", - "lib/netstandard2.1/AutoMapper.xml" - ] - }, - "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.0": { - "sha512": "XCJ4E3oKrbRl1qY9Mr+7uyC0xZj1+bqQjmQRWTiTKiVuuXTny+7YFWHi20tPjwkMukLbicN6yGlDy5PZ4wyi1w==", - "type": "package", - "path": "automapper.extensions.microsoft.dependencyinjection/12.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "automapper.extensions.microsoft.dependencyinjection.12.0.0.nupkg.sha512", - "automapper.extensions.microsoft.dependencyinjection.nuspec", - "icon.png", - "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll" - ] - }, - "Castle.Core/5.1.1": { - "sha512": "rpYtIczkzGpf+EkZgDr9CClTdemhsrwA/W5hMoPjLkRFnXzH44zDLoovXeKtmxb1ykXK9aJVODSpiJml8CTw2g==", - "type": "package", - "path": "castle.core/5.1.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ASL - Apache Software Foundation License.txt", - "CHANGELOG.md", - "LICENSE", - "castle-logo.png", - "castle.core.5.1.1.nupkg.sha512", - "castle.core.nuspec", - "lib/net462/Castle.Core.dll", - "lib/net462/Castle.Core.xml", - "lib/net6.0/Castle.Core.dll", - "lib/net6.0/Castle.Core.xml", - "lib/netstandard2.0/Castle.Core.dll", - "lib/netstandard2.0/Castle.Core.xml", - "lib/netstandard2.1/Castle.Core.dll", - "lib/netstandard2.1/Castle.Core.xml", - "readme.txt" - ] - }, - "coverlet.collector/6.0.0": { - "sha512": "tW3lsNS+dAEII6YGUX/VMoJjBS1QvsxqJeqLaJXub08y1FSjasFPtQ4UBUsudE9PNrzLjooClMsPtY2cZLdXpQ==", - "type": "package", - "path": "coverlet.collector/6.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "build/netstandard1.0/Microsoft.Bcl.AsyncInterfaces.dll", - "build/netstandard1.0/Microsoft.CSharp.dll", - "build/netstandard1.0/Microsoft.DotNet.PlatformAbstractions.dll", - "build/netstandard1.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "build/netstandard1.0/Microsoft.Extensions.DependencyInjection.dll", - "build/netstandard1.0/Microsoft.Extensions.DependencyModel.dll", - "build/netstandard1.0/Microsoft.Extensions.FileSystemGlobbing.dll", - "build/netstandard1.0/Microsoft.TestPlatform.CoreUtilities.dll", - "build/netstandard1.0/Microsoft.TestPlatform.PlatformAbstractions.dll", - "build/netstandard1.0/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll", - "build/netstandard1.0/Mono.Cecil.Mdb.dll", - "build/netstandard1.0/Mono.Cecil.Pdb.dll", - "build/netstandard1.0/Mono.Cecil.Rocks.dll", - "build/netstandard1.0/Mono.Cecil.dll", - "build/netstandard1.0/Newtonsoft.Json.dll", - "build/netstandard1.0/NuGet.Frameworks.dll", - "build/netstandard1.0/System.AppContext.dll", - "build/netstandard1.0/System.Collections.Immutable.dll", - "build/netstandard1.0/System.Dynamic.Runtime.dll", - "build/netstandard1.0/System.IO.FileSystem.Primitives.dll", - "build/netstandard1.0/System.Linq.Expressions.dll", - "build/netstandard1.0/System.Linq.dll", - "build/netstandard1.0/System.ObjectModel.dll", - "build/netstandard1.0/System.Reflection.Emit.ILGeneration.dll", - "build/netstandard1.0/System.Reflection.Emit.Lightweight.dll", - "build/netstandard1.0/System.Reflection.Emit.dll", - "build/netstandard1.0/System.Reflection.Metadata.dll", - "build/netstandard1.0/System.Reflection.TypeExtensions.dll", - "build/netstandard1.0/System.Runtime.CompilerServices.Unsafe.dll", - "build/netstandard1.0/System.Runtime.Serialization.Primitives.dll", - "build/netstandard1.0/System.Text.RegularExpressions.dll", - "build/netstandard1.0/System.Threading.Tasks.Extensions.dll", - "build/netstandard1.0/System.Threading.dll", - "build/netstandard1.0/System.Xml.ReaderWriter.dll", - "build/netstandard1.0/System.Xml.XDocument.dll", - "build/netstandard1.0/coverlet.collector.deps.json", - "build/netstandard1.0/coverlet.collector.dll", - "build/netstandard1.0/coverlet.collector.pdb", - "build/netstandard1.0/coverlet.collector.targets", - "build/netstandard1.0/coverlet.core.dll", - "build/netstandard1.0/coverlet.core.pdb", - "coverlet-icon.png", - "coverlet.collector.6.0.0.nupkg.sha512", - "coverlet.collector.nuspec" - ] - }, - "MassTransit/8.5.5": { - "sha512": "bSg8k5q+rP1s+dIGXLLbctqDGdIkfDjdxwNWtCUH7xNCN9ZuM7mqSPQPIFgaYIi34e81m4FqAqo4CAHuWPkhRA==", - "type": "package", - "path": "masstransit/8.5.5", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "NuGet.README.md", - "lib/net472/MassTransit.dll", - "lib/net472/MassTransit.xml", - "lib/net8.0/MassTransit.dll", - "lib/net8.0/MassTransit.xml", - "lib/net9.0/MassTransit.dll", - "lib/net9.0/MassTransit.xml", - "lib/netstandard2.0/MassTransit.dll", - "lib/netstandard2.0/MassTransit.xml", - "masstransit.8.5.5.nupkg.sha512", - "masstransit.nuspec", - "mt-logo-small.png" - ] - }, - "MassTransit.Abstractions/8.5.5": { - "sha512": "0mn2Ay17dD6z5tgSLjbVRlldSbL9iowzFEfVgVfBXVG5ttz9dSWeR4TrdD6pqH93GWXp4CvSmF8i1HqxLX7DZw==", - "type": "package", - "path": "masstransit.abstractions/8.5.5", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "NuGet.README.md", - "lib/net472/MassTransit.Abstractions.dll", - "lib/net472/MassTransit.Abstractions.xml", - "lib/net8.0/MassTransit.Abstractions.dll", - "lib/net8.0/MassTransit.Abstractions.xml", - "lib/net9.0/MassTransit.Abstractions.dll", - "lib/net9.0/MassTransit.Abstractions.xml", - "lib/netstandard2.0/MassTransit.Abstractions.dll", - "lib/netstandard2.0/MassTransit.Abstractions.xml", - "masstransit.abstractions.8.5.5.nupkg.sha512", - "masstransit.abstractions.nuspec", - "mt-logo-small.png" - ] - }, - "MassTransit.RabbitMQ/8.5.5": { - "sha512": "UxWn4o90YVMF9PBkJeoskOFPneh6YtnI1fLJHtvZiSAG0eoiRrWPGa+6FQCvjkQ/ljCKfjzok2eGZc/vmNZ01A==", - "type": "package", - "path": "masstransit.rabbitmq/8.5.5", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "NuGet.README.md", - "lib/net472/MassTransit.RabbitMqTransport.dll", - "lib/net472/MassTransit.RabbitMqTransport.xml", - "lib/net8.0/MassTransit.RabbitMqTransport.dll", - "lib/net8.0/MassTransit.RabbitMqTransport.xml", - "lib/net9.0/MassTransit.RabbitMqTransport.dll", - "lib/net9.0/MassTransit.RabbitMqTransport.xml", - "lib/netstandard2.0/MassTransit.RabbitMqTransport.dll", - "lib/netstandard2.0/MassTransit.RabbitMqTransport.xml", - "masstransit.rabbitmq.8.5.5.nupkg.sha512", - "masstransit.rabbitmq.nuspec", - "mt-logo-small.png" - ] - }, - "Microsoft.AspNetCore.Authentication.Abstractions/2.3.0": { - "sha512": "ve6uvLwKNRkfnO/QeN9M8eUJ49lCnWv/6/9p6iTEuiI6Rtsz+myaBAjdMzLuTViQY032xbTF5AdZF5BJzJJyXQ==", - "type": "package", - "path": "microsoft.aspnetcore.authentication.abstractions/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.xml", - "microsoft.aspnetcore.authentication.abstractions.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.authentication.abstractions.nuspec" - ] - }, - "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.21": { - "sha512": "ZuUpJ4DvmVArmTlyGGg+b9IdKgd8Kw0SmEzhjy4dQw8R6rxfNqCXfGvGm3ld7xlrgthJFou/le9tadsSyjFLuw==", - "type": "package", - "path": "microsoft.aspnetcore.authentication.jwtbearer/8.0.21", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll", - "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.xml", - "microsoft.aspnetcore.authentication.jwtbearer.8.0.21.nupkg.sha512", - "microsoft.aspnetcore.authentication.jwtbearer.nuspec" - ] - }, - "Microsoft.AspNetCore.Authorization/2.3.0": { - "sha512": "2/aBgLqBXva/+w8pzRNY8ET43Gi+dr1gv/7ySfbsh23lTK6IAgID5MGUEa1hreNIF+0XpW4tX7QwVe70+YvaPg==", - "type": "package", - "path": "microsoft.aspnetcore.authorization/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.xml", - "microsoft.aspnetcore.authorization.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.authorization.nuspec" - ] - }, - "Microsoft.AspNetCore.Authorization.Policy/2.3.0": { - "sha512": "vn31uQ1dA1MIV2WNNDOOOm88V5KgR9esfi0LyQ6eVaGq2h0Yw+R29f5A6qUNJt+RccS3qkYayylAy9tP1wV+7Q==", - "type": "package", - "path": "microsoft.aspnetcore.authorization.policy/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.Policy.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.Policy.xml", - "microsoft.aspnetcore.authorization.policy.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.authorization.policy.nuspec" - ] - }, - "Microsoft.AspNetCore.Connections.Abstractions/2.3.0": { - "sha512": "ULFSa+/L+WiAHVlIFHyg0OmHChU9Hx+K+xnt0hbIU5XmT1EGy0pNDx23QAzDtAy9jxQrTG6MX0MdvMeU4D4c7w==", - "type": "package", - "path": "microsoft.aspnetcore.connections.abstractions/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.xml", - "microsoft.aspnetcore.connections.abstractions.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.connections.abstractions.nuspec" - ] - }, - "Microsoft.AspNetCore.Hosting.Abstractions/2.3.0": { - "sha512": "4ivq53W2k6Nj4eez9wc81ytfGj6HR1NaZJCpOrvghJo9zHuQF57PLhPoQH5ItyCpHXnrN/y7yJDUm+TGYzrx0w==", - "type": "package", - "path": "microsoft.aspnetcore.hosting.abstractions/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Abstractions.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Abstractions.xml", - "microsoft.aspnetcore.hosting.abstractions.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.hosting.abstractions.nuspec" - ] - }, - "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.3.0": { - "sha512": "F5iHx7odAbFKBV1DNPDkFFcVmD5Tk7rk+tYm3LMQxHEFFdjlg5QcYb5XhHAefl5YaaPeG6ad+/ck8kSG3/D6kw==", - "type": "package", - "path": "microsoft.aspnetcore.hosting.server.abstractions/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Server.Abstractions.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Server.Abstractions.xml", - "microsoft.aspnetcore.hosting.server.abstractions.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.hosting.server.abstractions.nuspec" - ] - }, - "Microsoft.AspNetCore.Http/2.3.0": { - "sha512": "I9azEG2tZ4DDHAFgv+N38e6Yhttvf+QjE2j2UYyCACE7Swm5/0uoihCMWZ87oOZYeqiEFSxbsfpT71OYHe2tpw==", - "type": "package", - "path": "microsoft.aspnetcore.http/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.xml", - "microsoft.aspnetcore.http.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.http.nuspec" - ] - }, - "Microsoft.AspNetCore.Http.Abstractions/2.3.0": { - "sha512": "39r9PPrjA6s0blyFv5qarckjNkaHRA5B+3b53ybuGGNTXEj1/DStQJ4NWjFL6QTRQpL9zt7nDyKxZdJOlcnq+Q==", - "type": "package", - "path": "microsoft.aspnetcore.http.abstractions/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.xml", - "microsoft.aspnetcore.http.abstractions.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.http.abstractions.nuspec" - ] - }, - "Microsoft.AspNetCore.Http.Connections/1.2.0": { - "sha512": "VYMCOLvdT0y3O9lk4jUuIs8+re7u5+i+ka6ZZ6fIzSJ94c/JeMnAOOg39EB2i4crPXvLoiSdzKWlNPJgTbCZ2g==", - "type": "package", - "path": "microsoft.aspnetcore.http.connections/1.2.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.xml", - "microsoft.aspnetcore.http.connections.1.2.0.nupkg.sha512", - "microsoft.aspnetcore.http.connections.nuspec" - ] - }, - "Microsoft.AspNetCore.Http.Connections.Common/1.2.0": { - "sha512": "yUA7eg6kv7Wbz5TCW4PqS5/kYE5VxUIEDvoxjw4p1RwS2LGm84F9fBtM0mD6wrRfiv1NUyJ7WBjn3PWd/ccO+w==", - "type": "package", - "path": "microsoft.aspnetcore.http.connections.common/1.2.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.xml", - "microsoft.aspnetcore.http.connections.common.1.2.0.nupkg.sha512", - "microsoft.aspnetcore.http.connections.common.nuspec" - ] - }, - "Microsoft.AspNetCore.Http.Extensions/2.3.0": { - "sha512": "EY2u/wFF5jsYwGXXswfQWrSsFPmiXsniAlUWo3rv/MGYf99ZFsENDnZcQP6W3c/+xQmQXq0NauzQ7jyy+o1LDQ==", - "type": "package", - "path": "microsoft.aspnetcore.http.extensions/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Extensions.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Extensions.xml", - "microsoft.aspnetcore.http.extensions.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.http.extensions.nuspec" - ] - }, - "Microsoft.AspNetCore.Http.Features/2.3.0": { - "sha512": "f10WUgcsKqrkmnz6gt8HeZ7kyKjYN30PO7cSic1lPtH7paPtnQqXPOveul/SIPI43PhRD4trttg4ywnrEmmJpA==", - "type": "package", - "path": "microsoft.aspnetcore.http.features/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.xml", - "microsoft.aspnetcore.http.features.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.http.features.nuspec" - ] - }, - "Microsoft.AspNetCore.Routing/2.3.0": { - "sha512": "no5/VC0CAQuT4PK4rp2K5fqwuSfzr2mdB6m1XNfWVhHnwzpRQzKAu9flChiT/JTLKwVI0Vq2MSmSW2OFMDCNXg==", - "type": "package", - "path": "microsoft.aspnetcore.routing/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Routing.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Routing.xml", - "microsoft.aspnetcore.routing.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.routing.nuspec" - ] - }, - "Microsoft.AspNetCore.Routing.Abstractions/2.3.0": { - "sha512": "ZkFpUrSmp6TocxZLBEX3IBv5dPMbQuMs6L/BPl0WRfn32UVOtNYJQ0bLdh3cL9LMV0rmTW/5R0w8CBYxr0AOUw==", - "type": "package", - "path": "microsoft.aspnetcore.routing.abstractions/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.xml", - "microsoft.aspnetcore.routing.abstractions.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.routing.abstractions.nuspec" - ] - }, - "Microsoft.AspNetCore.SignalR/1.2.0": { - "sha512": "XoCcsOTdtBiXyOzUtpbCl0IaqMOYjnr+6dbDxvUCFn7NR6bu7CwrlQ3oQzkltTwDZH0b6VEUN9wZPOYvPHi+Lg==", - "type": "package", - "path": "microsoft.aspnetcore.signalr/1.2.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.xml", - "microsoft.aspnetcore.signalr.1.2.0.nupkg.sha512", - "microsoft.aspnetcore.signalr.nuspec" - ] - }, - "Microsoft.AspNetCore.SignalR.Common/1.2.0": { - "sha512": "FZeXIaoWqe145ZPdfiptwkw/sP1BX1UD0706GNBwwoaFiKsNbLEl/Trhj2+idlp3qbX1BEwkQesKNxkopVY5Xg==", - "type": "package", - "path": "microsoft.aspnetcore.signalr.common/1.2.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.xml", - "microsoft.aspnetcore.signalr.common.1.2.0.nupkg.sha512", - "microsoft.aspnetcore.signalr.common.nuspec" - ] - }, - "Microsoft.AspNetCore.SignalR.Core/1.2.0": { - "sha512": "eZTuMkSDw1uwjhLhJbMxgW2Cuyxfn0Kfqm8OBmqvuzE9Qc/VVzh8dGrAp2F9Pk7XKTDHmlhc5RTLcPPAZ5PSZw==", - "type": "package", - "path": "microsoft.aspnetcore.signalr.core/1.2.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Core.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Core.xml", - "microsoft.aspnetcore.signalr.core.1.2.0.nupkg.sha512", - "microsoft.aspnetcore.signalr.core.nuspec" - ] - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/1.2.0": { - "sha512": "hNvZ7kQxp5Udqd/IFWViU35bUJvi4xnNzjkF28HRvrdrS7JNsIASTvMqArP6HLQUc3j6nlUOeShNhVmgI1wzHg==", - "type": "package", - "path": "microsoft.aspnetcore.signalr.protocols.json/1.2.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", - "microsoft.aspnetcore.signalr.protocols.json.1.2.0.nupkg.sha512", - "microsoft.aspnetcore.signalr.protocols.json.nuspec" - ] - }, - "Microsoft.AspNetCore.WebSockets/2.3.0": { - "sha512": "+T4zpnVPkIjvvkyhTH3WBJlTfqmTBRozvnMudAUDvcb4e+NrWf52q8BXh52rkCrBgX6Cudf6F/UhZwTowyBtKg==", - "type": "package", - "path": "microsoft.aspnetcore.websockets/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.WebSockets.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.WebSockets.xml", - "microsoft.aspnetcore.websockets.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.websockets.nuspec" - ] - }, - "Microsoft.AspNetCore.WebUtilities/2.3.0": { - "sha512": "trbXdWzoAEUVd0PE2yTopkz4kjZaAIA7xUWekd5uBw+7xE8Do/YOVTeb9d9koPTlbtZT539aESJjSLSqD8eYrQ==", - "type": "package", - "path": "microsoft.aspnetcore.webutilities/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.AspNetCore.WebUtilities.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.WebUtilities.xml", - "microsoft.aspnetcore.webutilities.2.3.0.nupkg.sha512", - "microsoft.aspnetcore.webutilities.nuspec" - ] - }, - "Microsoft.Bcl.AsyncInterfaces/1.1.0": { - "sha512": "1Am6l4Vpn3/K32daEqZI+FFr96OlZkgwK2LcT3pZ2zWubR5zTPW3/FkO1Rat9kb7oQOa4rxgl9LJHc5tspCWfg==", - "type": "package", - "path": "microsoft.bcl.asyncinterfaces/1.1.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "lib/net461/Microsoft.Bcl.AsyncInterfaces.dll", - "lib/net461/Microsoft.Bcl.AsyncInterfaces.xml", - "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll", - "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml", - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll", - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml", - "microsoft.bcl.asyncinterfaces.1.1.0.nupkg.sha512", - "microsoft.bcl.asyncinterfaces.nuspec", - "ref/net461/Microsoft.Bcl.AsyncInterfaces.dll", - "ref/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll", - "ref/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll", - "useSharedDesignerContext.txt", - "version.txt" - ] - }, - "Microsoft.CodeCoverage/17.8.0": { - "sha512": "KC8SXWbGIdoFVdlxKk9WHccm0llm9HypcHMLUUFabRiTS3SO2fQXNZfdiF3qkEdTJhbRrxhdRxjL4jbtwPq4Ew==", - "type": "package", - "path": "microsoft.codecoverage/17.8.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE_MIT.txt", - "ThirdPartyNotices.txt", - "build/netstandard2.0/CodeCoverage/CodeCoverage.config", - "build/netstandard2.0/CodeCoverage/CodeCoverage.exe", - "build/netstandard2.0/CodeCoverage/VanguardInstrumentationProfiler_x86.config", - "build/netstandard2.0/CodeCoverage/amd64/CodeCoverage.exe", - "build/netstandard2.0/CodeCoverage/amd64/VanguardInstrumentationProfiler_x64.config", - "build/netstandard2.0/CodeCoverage/amd64/covrun64.dll", - "build/netstandard2.0/CodeCoverage/amd64/msdia140.dll", - "build/netstandard2.0/CodeCoverage/arm64/VanguardInstrumentationProfiler_arm64.config", - "build/netstandard2.0/CodeCoverage/arm64/covrunarm64.dll", - "build/netstandard2.0/CodeCoverage/arm64/msdia140.dll", - "build/netstandard2.0/CodeCoverage/codecoveragemessages.dll", - "build/netstandard2.0/CodeCoverage/coreclr/Microsoft.VisualStudio.CodeCoverage.Shim.dll", - "build/netstandard2.0/CodeCoverage/covrun32.dll", - "build/netstandard2.0/CodeCoverage/msdia140.dll", - "build/netstandard2.0/InstrumentationEngine/alpine/x64/VanguardInstrumentationProfiler_x64.config", - "build/netstandard2.0/InstrumentationEngine/alpine/x64/libCoverageInstrumentationMethod.so", - "build/netstandard2.0/InstrumentationEngine/alpine/x64/libInstrumentationEngine.so", - "build/netstandard2.0/InstrumentationEngine/arm64/MicrosoftInstrumentationEngine_arm64.dll", - "build/netstandard2.0/InstrumentationEngine/macos/x64/VanguardInstrumentationProfiler_x64.config", - "build/netstandard2.0/InstrumentationEngine/macos/x64/libCoverageInstrumentationMethod.dylib", - "build/netstandard2.0/InstrumentationEngine/macos/x64/libInstrumentationEngine.dylib", - "build/netstandard2.0/InstrumentationEngine/ubuntu/x64/VanguardInstrumentationProfiler_x64.config", - "build/netstandard2.0/InstrumentationEngine/ubuntu/x64/libCoverageInstrumentationMethod.so", - "build/netstandard2.0/InstrumentationEngine/ubuntu/x64/libInstrumentationEngine.so", - "build/netstandard2.0/InstrumentationEngine/x64/MicrosoftInstrumentationEngine_x64.dll", - "build/netstandard2.0/InstrumentationEngine/x86/MicrosoftInstrumentationEngine_x86.dll", - "build/netstandard2.0/Microsoft.CodeCoverage.Core.dll", - "build/netstandard2.0/Microsoft.CodeCoverage.Instrumentation.dll", - "build/netstandard2.0/Microsoft.CodeCoverage.Interprocess.dll", - "build/netstandard2.0/Microsoft.CodeCoverage.props", - "build/netstandard2.0/Microsoft.CodeCoverage.targets", - "build/netstandard2.0/Microsoft.DiaSymReader.dll", - "build/netstandard2.0/Microsoft.VisualStudio.TraceDataCollector.dll", - "build/netstandard2.0/Mono.Cecil.Pdb.dll", - "build/netstandard2.0/Mono.Cecil.Rocks.dll", - "build/netstandard2.0/Mono.Cecil.dll", - "build/netstandard2.0/ThirdPartyNotices.txt", - "build/netstandard2.0/cs/Microsoft.VisualStudio.TraceDataCollector.resources.dll", - "build/netstandard2.0/de/Microsoft.VisualStudio.TraceDataCollector.resources.dll", - "build/netstandard2.0/es/Microsoft.VisualStudio.TraceDataCollector.resources.dll", - "build/netstandard2.0/fr/Microsoft.VisualStudio.TraceDataCollector.resources.dll", - "build/netstandard2.0/it/Microsoft.VisualStudio.TraceDataCollector.resources.dll", - "build/netstandard2.0/ja/Microsoft.VisualStudio.TraceDataCollector.resources.dll", - "build/netstandard2.0/ko/Microsoft.VisualStudio.TraceDataCollector.resources.dll", - "build/netstandard2.0/pl/Microsoft.VisualStudio.TraceDataCollector.resources.dll", - "build/netstandard2.0/pt-BR/Microsoft.VisualStudio.TraceDataCollector.resources.dll", - "build/netstandard2.0/ru/Microsoft.VisualStudio.TraceDataCollector.resources.dll", - "build/netstandard2.0/tr/Microsoft.VisualStudio.TraceDataCollector.resources.dll", - "build/netstandard2.0/zh-Hans/Microsoft.VisualStudio.TraceDataCollector.resources.dll", - "build/netstandard2.0/zh-Hant/Microsoft.VisualStudio.TraceDataCollector.resources.dll", - "lib/net462/Microsoft.VisualStudio.CodeCoverage.Shim.dll", - "lib/netcoreapp3.1/Microsoft.VisualStudio.CodeCoverage.Shim.dll", - "microsoft.codecoverage.17.8.0.nupkg.sha512", - "microsoft.codecoverage.nuspec" - ] - }, - "Microsoft.CSharp/4.7.0": { - "sha512": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==", - "type": "package", - "path": "microsoft.csharp/4.7.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/Microsoft.CSharp.dll", - "lib/netcoreapp2.0/_._", - "lib/netstandard1.3/Microsoft.CSharp.dll", - "lib/netstandard2.0/Microsoft.CSharp.dll", - "lib/netstandard2.0/Microsoft.CSharp.xml", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/uap10.0.16299/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "microsoft.csharp.4.7.0.nupkg.sha512", - "microsoft.csharp.nuspec", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/Microsoft.CSharp.dll", - "ref/netcore50/Microsoft.CSharp.xml", - "ref/netcore50/de/Microsoft.CSharp.xml", - "ref/netcore50/es/Microsoft.CSharp.xml", - "ref/netcore50/fr/Microsoft.CSharp.xml", - "ref/netcore50/it/Microsoft.CSharp.xml", - "ref/netcore50/ja/Microsoft.CSharp.xml", - "ref/netcore50/ko/Microsoft.CSharp.xml", - "ref/netcore50/ru/Microsoft.CSharp.xml", - "ref/netcore50/zh-hans/Microsoft.CSharp.xml", - "ref/netcore50/zh-hant/Microsoft.CSharp.xml", - "ref/netcoreapp2.0/_._", - "ref/netstandard1.0/Microsoft.CSharp.dll", - "ref/netstandard1.0/Microsoft.CSharp.xml", - "ref/netstandard1.0/de/Microsoft.CSharp.xml", - "ref/netstandard1.0/es/Microsoft.CSharp.xml", - "ref/netstandard1.0/fr/Microsoft.CSharp.xml", - "ref/netstandard1.0/it/Microsoft.CSharp.xml", - "ref/netstandard1.0/ja/Microsoft.CSharp.xml", - "ref/netstandard1.0/ko/Microsoft.CSharp.xml", - "ref/netstandard1.0/ru/Microsoft.CSharp.xml", - "ref/netstandard1.0/zh-hans/Microsoft.CSharp.xml", - "ref/netstandard1.0/zh-hant/Microsoft.CSharp.xml", - "ref/netstandard2.0/Microsoft.CSharp.dll", - "ref/netstandard2.0/Microsoft.CSharp.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/uap10.0.16299/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "useSharedDesignerContext.txt", - "version.txt" - ] - }, - "Microsoft.EntityFrameworkCore/8.0.22": { - "sha512": "nKGrD/WOO1d7qtXvghFAHre5Fk3ubw41pDFM0hbFxVIkMFxl4B0ug2LylMHOq+dgAceUeo3bx0qMh6/Jl9NbrA==", - "type": "package", - "path": "microsoft.entityframeworkcore/8.0.22", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props", - "lib/net8.0/Microsoft.EntityFrameworkCore.dll", - "lib/net8.0/Microsoft.EntityFrameworkCore.xml", - "microsoft.entityframeworkcore.8.0.22.nupkg.sha512", - "microsoft.entityframeworkcore.nuspec" - ] - }, - "Microsoft.EntityFrameworkCore.Abstractions/8.0.22": { - "sha512": "p4Fw9mpJnZHmkdOGCbBqbvuyj1LnnFxNon8snMKIQ0MGSB+j9f6ffWDfvGRaOS/9ikqQG9RMOTzZk52q1G23ng==", - "type": "package", - "path": "microsoft.entityframeworkcore.abstractions/8.0.22", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll", - "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.xml", - "microsoft.entityframeworkcore.abstractions.8.0.22.nupkg.sha512", - "microsoft.entityframeworkcore.abstractions.nuspec" - ] - }, - "Microsoft.EntityFrameworkCore.Analyzers/8.0.22": { - "sha512": "lrSWwr+X+Fn5XGOwOYFQJWx+u+eameqhMjQ1mohXUE2N7LauucZAtcH/j+yXwQntosKoXU1TOoggTL/zmYqbHQ==", - "type": "package", - "path": "microsoft.entityframeworkcore.analyzers/8.0.22", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll", - "docs/PACKAGE.md", - "lib/netstandard2.0/_._", - "microsoft.entityframeworkcore.analyzers.8.0.22.nupkg.sha512", - "microsoft.entityframeworkcore.analyzers.nuspec" - ] - }, - "Microsoft.EntityFrameworkCore.InMemory/8.0.22": { - "sha512": "dPbM/KLIh/AdHRjh/OhrzhAiHRLT0JBC5KSvAZ71eg42+QwF9aEuBfTzqr+GJE6DK9CLhqh9jXAqRKFojPki5g==", - "type": "package", - "path": "microsoft.entityframeworkcore.inmemory/8.0.22", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "lib/net8.0/Microsoft.EntityFrameworkCore.InMemory.dll", - "lib/net8.0/Microsoft.EntityFrameworkCore.InMemory.xml", - "microsoft.entityframeworkcore.inmemory.8.0.22.nupkg.sha512", - "microsoft.entityframeworkcore.inmemory.nuspec" - ] - }, - "Microsoft.EntityFrameworkCore.Relational/8.0.13": { - "sha512": "uQR2iTar+6ZEjEHTwgH0/7ySSRme4R9sDiupfG3w/eBub3365fPw/MjhsuOMQkdq9YzLM7veH4Qt/K9OqL26Qg==", - "type": "package", - "path": "microsoft.entityframeworkcore.relational/8.0.13", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll", - "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.xml", - "microsoft.entityframeworkcore.relational.8.0.13.nupkg.sha512", - "microsoft.entityframeworkcore.relational.nuspec" - ] - }, - "Microsoft.Extensions.ApiDescription.Server/6.0.5": { - "sha512": "Ckb5EDBUNJdFWyajfXzUIMRkhf52fHZOQuuZg/oiu8y7zDCVwD0iHhew6MnThjHmevanpxL3f5ci2TtHQEN6bw==", - "type": "package", - "path": "microsoft.extensions.apidescription.server/6.0.5", - "hasTools": true, - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "build/Microsoft.Extensions.ApiDescription.Server.props", - "build/Microsoft.Extensions.ApiDescription.Server.targets", - "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props", - "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets", - "microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512", - "microsoft.extensions.apidescription.server.nuspec", - "tools/Newtonsoft.Json.dll", - "tools/dotnet-getdocument.deps.json", - "tools/dotnet-getdocument.dll", - "tools/dotnet-getdocument.runtimeconfig.json", - "tools/net461-x86/GetDocument.Insider.exe", - "tools/net461-x86/GetDocument.Insider.exe.config", - "tools/net461-x86/Microsoft.Win32.Primitives.dll", - "tools/net461-x86/System.AppContext.dll", - "tools/net461-x86/System.Buffers.dll", - "tools/net461-x86/System.Collections.Concurrent.dll", - "tools/net461-x86/System.Collections.NonGeneric.dll", - "tools/net461-x86/System.Collections.Specialized.dll", - "tools/net461-x86/System.Collections.dll", - "tools/net461-x86/System.ComponentModel.EventBasedAsync.dll", - "tools/net461-x86/System.ComponentModel.Primitives.dll", - "tools/net461-x86/System.ComponentModel.TypeConverter.dll", - "tools/net461-x86/System.ComponentModel.dll", - "tools/net461-x86/System.Console.dll", - "tools/net461-x86/System.Data.Common.dll", - "tools/net461-x86/System.Diagnostics.Contracts.dll", - "tools/net461-x86/System.Diagnostics.Debug.dll", - "tools/net461-x86/System.Diagnostics.DiagnosticSource.dll", - "tools/net461-x86/System.Diagnostics.FileVersionInfo.dll", - "tools/net461-x86/System.Diagnostics.Process.dll", - "tools/net461-x86/System.Diagnostics.StackTrace.dll", - "tools/net461-x86/System.Diagnostics.TextWriterTraceListener.dll", - "tools/net461-x86/System.Diagnostics.Tools.dll", - "tools/net461-x86/System.Diagnostics.TraceSource.dll", - "tools/net461-x86/System.Diagnostics.Tracing.dll", - "tools/net461-x86/System.Drawing.Primitives.dll", - "tools/net461-x86/System.Dynamic.Runtime.dll", - "tools/net461-x86/System.Globalization.Calendars.dll", - "tools/net461-x86/System.Globalization.Extensions.dll", - "tools/net461-x86/System.Globalization.dll", - "tools/net461-x86/System.IO.Compression.ZipFile.dll", - "tools/net461-x86/System.IO.Compression.dll", - "tools/net461-x86/System.IO.FileSystem.DriveInfo.dll", - "tools/net461-x86/System.IO.FileSystem.Primitives.dll", - "tools/net461-x86/System.IO.FileSystem.Watcher.dll", - "tools/net461-x86/System.IO.FileSystem.dll", - "tools/net461-x86/System.IO.IsolatedStorage.dll", - "tools/net461-x86/System.IO.MemoryMappedFiles.dll", - "tools/net461-x86/System.IO.Pipes.dll", - "tools/net461-x86/System.IO.UnmanagedMemoryStream.dll", - "tools/net461-x86/System.IO.dll", - "tools/net461-x86/System.Linq.Expressions.dll", - "tools/net461-x86/System.Linq.Parallel.dll", - "tools/net461-x86/System.Linq.Queryable.dll", - "tools/net461-x86/System.Linq.dll", - "tools/net461-x86/System.Memory.dll", - "tools/net461-x86/System.Net.Http.dll", - "tools/net461-x86/System.Net.NameResolution.dll", - "tools/net461-x86/System.Net.NetworkInformation.dll", - "tools/net461-x86/System.Net.Ping.dll", - "tools/net461-x86/System.Net.Primitives.dll", - "tools/net461-x86/System.Net.Requests.dll", - "tools/net461-x86/System.Net.Security.dll", - "tools/net461-x86/System.Net.Sockets.dll", - "tools/net461-x86/System.Net.WebHeaderCollection.dll", - "tools/net461-x86/System.Net.WebSockets.Client.dll", - "tools/net461-x86/System.Net.WebSockets.dll", - "tools/net461-x86/System.Numerics.Vectors.dll", - "tools/net461-x86/System.ObjectModel.dll", - "tools/net461-x86/System.Reflection.Extensions.dll", - "tools/net461-x86/System.Reflection.Primitives.dll", - "tools/net461-x86/System.Reflection.dll", - "tools/net461-x86/System.Resources.Reader.dll", - "tools/net461-x86/System.Resources.ResourceManager.dll", - "tools/net461-x86/System.Resources.Writer.dll", - "tools/net461-x86/System.Runtime.CompilerServices.Unsafe.dll", - "tools/net461-x86/System.Runtime.CompilerServices.VisualC.dll", - "tools/net461-x86/System.Runtime.Extensions.dll", - "tools/net461-x86/System.Runtime.Handles.dll", - "tools/net461-x86/System.Runtime.InteropServices.RuntimeInformation.dll", - "tools/net461-x86/System.Runtime.InteropServices.dll", - "tools/net461-x86/System.Runtime.Numerics.dll", - "tools/net461-x86/System.Runtime.Serialization.Formatters.dll", - "tools/net461-x86/System.Runtime.Serialization.Json.dll", - "tools/net461-x86/System.Runtime.Serialization.Primitives.dll", - "tools/net461-x86/System.Runtime.Serialization.Xml.dll", - "tools/net461-x86/System.Runtime.dll", - "tools/net461-x86/System.Security.Claims.dll", - "tools/net461-x86/System.Security.Cryptography.Algorithms.dll", - "tools/net461-x86/System.Security.Cryptography.Csp.dll", - "tools/net461-x86/System.Security.Cryptography.Encoding.dll", - "tools/net461-x86/System.Security.Cryptography.Primitives.dll", - "tools/net461-x86/System.Security.Cryptography.X509Certificates.dll", - "tools/net461-x86/System.Security.Principal.dll", - "tools/net461-x86/System.Security.SecureString.dll", - "tools/net461-x86/System.Text.Encoding.Extensions.dll", - "tools/net461-x86/System.Text.Encoding.dll", - "tools/net461-x86/System.Text.RegularExpressions.dll", - "tools/net461-x86/System.Threading.Overlapped.dll", - "tools/net461-x86/System.Threading.Tasks.Parallel.dll", - "tools/net461-x86/System.Threading.Tasks.dll", - "tools/net461-x86/System.Threading.Thread.dll", - "tools/net461-x86/System.Threading.ThreadPool.dll", - "tools/net461-x86/System.Threading.Timer.dll", - "tools/net461-x86/System.Threading.dll", - "tools/net461-x86/System.ValueTuple.dll", - "tools/net461-x86/System.Xml.ReaderWriter.dll", - "tools/net461-x86/System.Xml.XDocument.dll", - "tools/net461-x86/System.Xml.XPath.XDocument.dll", - "tools/net461-x86/System.Xml.XPath.dll", - "tools/net461-x86/System.Xml.XmlDocument.dll", - "tools/net461-x86/System.Xml.XmlSerializer.dll", - "tools/net461-x86/netstandard.dll", - "tools/net461/GetDocument.Insider.exe", - "tools/net461/GetDocument.Insider.exe.config", - "tools/net461/Microsoft.Win32.Primitives.dll", - "tools/net461/System.AppContext.dll", - "tools/net461/System.Buffers.dll", - "tools/net461/System.Collections.Concurrent.dll", - "tools/net461/System.Collections.NonGeneric.dll", - "tools/net461/System.Collections.Specialized.dll", - "tools/net461/System.Collections.dll", - "tools/net461/System.ComponentModel.EventBasedAsync.dll", - "tools/net461/System.ComponentModel.Primitives.dll", - "tools/net461/System.ComponentModel.TypeConverter.dll", - "tools/net461/System.ComponentModel.dll", - "tools/net461/System.Console.dll", - "tools/net461/System.Data.Common.dll", - "tools/net461/System.Diagnostics.Contracts.dll", - "tools/net461/System.Diagnostics.Debug.dll", - "tools/net461/System.Diagnostics.DiagnosticSource.dll", - "tools/net461/System.Diagnostics.FileVersionInfo.dll", - "tools/net461/System.Diagnostics.Process.dll", - "tools/net461/System.Diagnostics.StackTrace.dll", - "tools/net461/System.Diagnostics.TextWriterTraceListener.dll", - "tools/net461/System.Diagnostics.Tools.dll", - "tools/net461/System.Diagnostics.TraceSource.dll", - "tools/net461/System.Diagnostics.Tracing.dll", - "tools/net461/System.Drawing.Primitives.dll", - "tools/net461/System.Dynamic.Runtime.dll", - "tools/net461/System.Globalization.Calendars.dll", - "tools/net461/System.Globalization.Extensions.dll", - "tools/net461/System.Globalization.dll", - "tools/net461/System.IO.Compression.ZipFile.dll", - "tools/net461/System.IO.Compression.dll", - "tools/net461/System.IO.FileSystem.DriveInfo.dll", - "tools/net461/System.IO.FileSystem.Primitives.dll", - "tools/net461/System.IO.FileSystem.Watcher.dll", - "tools/net461/System.IO.FileSystem.dll", - "tools/net461/System.IO.IsolatedStorage.dll", - "tools/net461/System.IO.MemoryMappedFiles.dll", - "tools/net461/System.IO.Pipes.dll", - "tools/net461/System.IO.UnmanagedMemoryStream.dll", - "tools/net461/System.IO.dll", - "tools/net461/System.Linq.Expressions.dll", - "tools/net461/System.Linq.Parallel.dll", - "tools/net461/System.Linq.Queryable.dll", - "tools/net461/System.Linq.dll", - "tools/net461/System.Memory.dll", - "tools/net461/System.Net.Http.dll", - "tools/net461/System.Net.NameResolution.dll", - "tools/net461/System.Net.NetworkInformation.dll", - "tools/net461/System.Net.Ping.dll", - "tools/net461/System.Net.Primitives.dll", - "tools/net461/System.Net.Requests.dll", - "tools/net461/System.Net.Security.dll", - "tools/net461/System.Net.Sockets.dll", - "tools/net461/System.Net.WebHeaderCollection.dll", - "tools/net461/System.Net.WebSockets.Client.dll", - "tools/net461/System.Net.WebSockets.dll", - "tools/net461/System.Numerics.Vectors.dll", - "tools/net461/System.ObjectModel.dll", - "tools/net461/System.Reflection.Extensions.dll", - "tools/net461/System.Reflection.Primitives.dll", - "tools/net461/System.Reflection.dll", - "tools/net461/System.Resources.Reader.dll", - "tools/net461/System.Resources.ResourceManager.dll", - "tools/net461/System.Resources.Writer.dll", - "tools/net461/System.Runtime.CompilerServices.Unsafe.dll", - "tools/net461/System.Runtime.CompilerServices.VisualC.dll", - "tools/net461/System.Runtime.Extensions.dll", - "tools/net461/System.Runtime.Handles.dll", - "tools/net461/System.Runtime.InteropServices.RuntimeInformation.dll", - "tools/net461/System.Runtime.InteropServices.dll", - "tools/net461/System.Runtime.Numerics.dll", - "tools/net461/System.Runtime.Serialization.Formatters.dll", - "tools/net461/System.Runtime.Serialization.Json.dll", - "tools/net461/System.Runtime.Serialization.Primitives.dll", - "tools/net461/System.Runtime.Serialization.Xml.dll", - "tools/net461/System.Runtime.dll", - "tools/net461/System.Security.Claims.dll", - "tools/net461/System.Security.Cryptography.Algorithms.dll", - "tools/net461/System.Security.Cryptography.Csp.dll", - "tools/net461/System.Security.Cryptography.Encoding.dll", - "tools/net461/System.Security.Cryptography.Primitives.dll", - "tools/net461/System.Security.Cryptography.X509Certificates.dll", - "tools/net461/System.Security.Principal.dll", - "tools/net461/System.Security.SecureString.dll", - "tools/net461/System.Text.Encoding.Extensions.dll", - "tools/net461/System.Text.Encoding.dll", - "tools/net461/System.Text.RegularExpressions.dll", - "tools/net461/System.Threading.Overlapped.dll", - "tools/net461/System.Threading.Tasks.Parallel.dll", - "tools/net461/System.Threading.Tasks.dll", - "tools/net461/System.Threading.Thread.dll", - "tools/net461/System.Threading.ThreadPool.dll", - "tools/net461/System.Threading.Timer.dll", - "tools/net461/System.Threading.dll", - "tools/net461/System.ValueTuple.dll", - "tools/net461/System.Xml.ReaderWriter.dll", - "tools/net461/System.Xml.XDocument.dll", - "tools/net461/System.Xml.XPath.XDocument.dll", - "tools/net461/System.Xml.XPath.dll", - "tools/net461/System.Xml.XmlDocument.dll", - "tools/net461/System.Xml.XmlSerializer.dll", - "tools/net461/netstandard.dll", - "tools/netcoreapp2.1/GetDocument.Insider.deps.json", - "tools/netcoreapp2.1/GetDocument.Insider.dll", - "tools/netcoreapp2.1/GetDocument.Insider.runtimeconfig.json", - "tools/netcoreapp2.1/System.Diagnostics.DiagnosticSource.dll" - ] - }, - "Microsoft.Extensions.Caching.Abstractions/10.0.2": { - "sha512": "WIRPDa/qoKHmJhTAPCO/zLu9kRLQ2Fd6HD5tzgdXJ3xGEVXDHP6FvakKJjynwKrVDld8H4G4tcbW53wuC/wxMQ==", - "type": "package", - "path": "microsoft.extensions.caching.abstractions/10.0.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.Caching.Abstractions.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Abstractions.targets", - "lib/net10.0/Microsoft.Extensions.Caching.Abstractions.dll", - "lib/net10.0/Microsoft.Extensions.Caching.Abstractions.xml", - "lib/net462/Microsoft.Extensions.Caching.Abstractions.dll", - "lib/net462/Microsoft.Extensions.Caching.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.xml", - "lib/net9.0/Microsoft.Extensions.Caching.Abstractions.dll", - "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.10.0.2.nupkg.sha512", - "microsoft.extensions.caching.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Caching.Memory/8.0.1": { - "sha512": "HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==", - "type": "package", - "path": "microsoft.extensions.caching.memory/8.0.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.Caching.Memory.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Memory.targets", - "lib/net462/Microsoft.Extensions.Caching.Memory.dll", - "lib/net462/Microsoft.Extensions.Caching.Memory.xml", - "lib/net6.0/Microsoft.Extensions.Caching.Memory.dll", - "lib/net6.0/Microsoft.Extensions.Caching.Memory.xml", - "lib/net7.0/Microsoft.Extensions.Caching.Memory.dll", - "lib/net7.0/Microsoft.Extensions.Caching.Memory.xml", - "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll", - "lib/net8.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.8.0.1.nupkg.sha512", - "microsoft.extensions.caching.memory.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Caching.StackExchangeRedis/10.0.2": { - "sha512": "WEx0VM6KVv4Bf6lwe4WQTd4EixIfw38ZU3u/7zMe+uC5fOyiANu8Os/qyiqv2iEsIJb296tbd2E2BTaWIha3Vg==", - "type": "package", - "path": "microsoft.extensions.caching.stackexchangeredis/10.0.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.Extensions.Caching.StackExchangeRedis.dll", - "lib/net10.0/Microsoft.Extensions.Caching.StackExchangeRedis.xml", - "lib/net462/Microsoft.Extensions.Caching.StackExchangeRedis.dll", - "lib/net462/Microsoft.Extensions.Caching.StackExchangeRedis.xml", - "lib/netstandard2.0/Microsoft.Extensions.Caching.StackExchangeRedis.dll", - "lib/netstandard2.0/Microsoft.Extensions.Caching.StackExchangeRedis.xml", - "microsoft.extensions.caching.stackexchangeredis.10.0.2.nupkg.sha512", - "microsoft.extensions.caching.stackexchangeredis.nuspec" - ] - }, - "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { - "sha512": "3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==", - "type": "package", - "path": "microsoft.extensions.configuration.abstractions/8.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.Configuration.Abstractions.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Configuration.Abstractions.targets", - "lib/net462/Microsoft.Extensions.Configuration.Abstractions.dll", - "lib/net462/Microsoft.Extensions.Configuration.Abstractions.xml", - "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.dll", - "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.xml", - "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.dll", - "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll", - "lib/net8.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.8.0.0.nupkg.sha512", - "microsoft.extensions.configuration.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.DependencyInjection/8.0.1": { - "sha512": "BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==", - "type": "package", - "path": "microsoft.extensions.dependencyinjection/8.0.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets", - "lib/net462/Microsoft.Extensions.DependencyInjection.dll", - "lib/net462/Microsoft.Extensions.DependencyInjection.xml", - "lib/net6.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/net6.0/Microsoft.Extensions.DependencyInjection.xml", - "lib/net7.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/net7.0/Microsoft.Extensions.DependencyInjection.xml", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml", - "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml", - "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll", - "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml", - "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512", - "microsoft.extensions.dependencyinjection.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": { - "sha512": "zOIurr59+kUf9vNcsUkCvKWZv+fPosUZXURZesYkJCvl0EzTc9F7maAO4Cd2WEV7ZJJ0AZrFQvuH6Npph9wdBw==", - "type": "package", - "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets", - "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "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.10.0.2.nupkg.sha512", - "microsoft.extensions.dependencyinjection.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Diagnostics.Abstractions/8.0.1": { - "sha512": "elH2vmwNmsXuKmUeMQ4YW9ldXiF+gSGDgg1vORksob5POnpaI6caj1Hu8zaYbEuibhqCoWg0YRWDazBY3zjBfg==", - "type": "package", - "path": "microsoft.extensions.diagnostics.abstractions/8.0.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.Diagnostics.Abstractions.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Diagnostics.Abstractions.targets", - "lib/net462/Microsoft.Extensions.Diagnostics.Abstractions.dll", - "lib/net462/Microsoft.Extensions.Diagnostics.Abstractions.xml", - "lib/net6.0/Microsoft.Extensions.Diagnostics.Abstractions.dll", - "lib/net6.0/Microsoft.Extensions.Diagnostics.Abstractions.xml", - "lib/net7.0/Microsoft.Extensions.Diagnostics.Abstractions.dll", - "lib/net7.0/Microsoft.Extensions.Diagnostics.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.Diagnostics.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.Diagnostics.Abstractions.xml", - "lib/netstandard2.0/Microsoft.Extensions.Diagnostics.Abstractions.dll", - "lib/netstandard2.0/Microsoft.Extensions.Diagnostics.Abstractions.xml", - "microsoft.extensions.diagnostics.abstractions.8.0.1.nupkg.sha512", - "microsoft.extensions.diagnostics.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Diagnostics.HealthChecks/8.0.0": { - "sha512": "P9SoBuVZhJPpALZmSq72aQEb9ryP67EdquaCZGXGrrcASTNHYdrUhnpgSwIipgM5oVC+dKpRXg5zxobmF9xr5g==", - "type": "package", - "path": "microsoft.extensions.diagnostics.healthchecks/8.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net462/Microsoft.Extensions.Diagnostics.HealthChecks.dll", - "lib/net462/Microsoft.Extensions.Diagnostics.HealthChecks.xml", - "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.dll", - "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.xml", - "lib/netstandard2.0/Microsoft.Extensions.Diagnostics.HealthChecks.dll", - "lib/netstandard2.0/Microsoft.Extensions.Diagnostics.HealthChecks.xml", - "microsoft.extensions.diagnostics.healthchecks.8.0.0.nupkg.sha512", - "microsoft.extensions.diagnostics.healthchecks.nuspec" - ] - }, - "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/8.0.0": { - "sha512": "AT2qqos3IgI09ok36Qag9T8bb6kHJ3uT9Q5ki6CySybFsK6/9JbvQAgAHf1pVEjST0/N4JaFaCbm40R5edffwg==", - "type": "package", - "path": "microsoft.extensions.diagnostics.healthchecks.abstractions/8.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net462/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.dll", - "lib/net462/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.xml", - "lib/netstandard2.0/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.dll", - "lib/netstandard2.0/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.xml", - "microsoft.extensions.diagnostics.healthchecks.abstractions.8.0.0.nupkg.sha512", - "microsoft.extensions.diagnostics.healthchecks.abstractions.nuspec" - ] - }, - "Microsoft.Extensions.FileProviders.Abstractions/8.0.0": { - "sha512": "ZbaMlhJlpisjuWbvXr4LdAst/1XxH3vZ6A0BsgTphZ2L4PGuxRLz7Jr/S7mkAAnOn78Vu0fKhEgNF5JO3zfjqQ==", - "type": "package", - "path": "microsoft.extensions.fileproviders.abstractions/8.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.FileProviders.Abstractions.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.FileProviders.Abstractions.targets", - "lib/net462/Microsoft.Extensions.FileProviders.Abstractions.dll", - "lib/net462/Microsoft.Extensions.FileProviders.Abstractions.xml", - "lib/net6.0/Microsoft.Extensions.FileProviders.Abstractions.dll", - "lib/net6.0/Microsoft.Extensions.FileProviders.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.FileProviders.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.FileProviders.Abstractions.xml", - "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Abstractions.dll", - "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Abstractions.xml", - "microsoft.extensions.fileproviders.abstractions.8.0.0.nupkg.sha512", - "microsoft.extensions.fileproviders.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Hosting.Abstractions/8.0.1": { - "sha512": "nHwq9aPBdBPYXPti6wYEEfgXddfBrYC+CQLn+qISiwQq5tpfaqDZSKOJNxoe9rfQxGf1c+2wC/qWFe1QYJPYqw==", - "type": "package", - "path": "microsoft.extensions.hosting.abstractions/8.0.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.Hosting.Abstractions.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Hosting.Abstractions.targets", - "lib/net462/Microsoft.Extensions.Hosting.Abstractions.dll", - "lib/net462/Microsoft.Extensions.Hosting.Abstractions.xml", - "lib/net6.0/Microsoft.Extensions.Hosting.Abstractions.dll", - "lib/net6.0/Microsoft.Extensions.Hosting.Abstractions.xml", - "lib/net7.0/Microsoft.Extensions.Hosting.Abstractions.dll", - "lib/net7.0/Microsoft.Extensions.Hosting.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.Hosting.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.Hosting.Abstractions.xml", - "lib/netstandard2.0/Microsoft.Extensions.Hosting.Abstractions.dll", - "lib/netstandard2.0/Microsoft.Extensions.Hosting.Abstractions.xml", - "lib/netstandard2.1/Microsoft.Extensions.Hosting.Abstractions.dll", - "lib/netstandard2.1/Microsoft.Extensions.Hosting.Abstractions.xml", - "microsoft.extensions.hosting.abstractions.8.0.1.nupkg.sha512", - "microsoft.extensions.hosting.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Logging/8.0.1": { - "sha512": "4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==", - "type": "package", - "path": "microsoft.extensions.logging/8.0.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.Logging.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets", - "lib/net462/Microsoft.Extensions.Logging.dll", - "lib/net462/Microsoft.Extensions.Logging.xml", - "lib/net6.0/Microsoft.Extensions.Logging.dll", - "lib/net6.0/Microsoft.Extensions.Logging.xml", - "lib/net7.0/Microsoft.Extensions.Logging.dll", - "lib/net7.0/Microsoft.Extensions.Logging.xml", - "lib/net8.0/Microsoft.Extensions.Logging.dll", - "lib/net8.0/Microsoft.Extensions.Logging.xml", - "lib/netstandard2.0/Microsoft.Extensions.Logging.dll", - "lib/netstandard2.0/Microsoft.Extensions.Logging.xml", - "lib/netstandard2.1/Microsoft.Extensions.Logging.dll", - "lib/netstandard2.1/Microsoft.Extensions.Logging.xml", - "microsoft.extensions.logging.8.0.1.nupkg.sha512", - "microsoft.extensions.logging.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.2": { - "sha512": "RZkez/JjpnO+MZ6efKkSynN6ZztLpw3WbxNzjLCPBd97wWj1S9ZYPWi0nmT4kWBRa6atHsdM1ydGkUr8GudyDQ==", - "type": "package", - "path": "microsoft.extensions.logging.abstractions/10.0.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll", - "analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll", - "analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll", - "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", - "buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets", - "buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets", - "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets", - "buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets", - "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.dll", - "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.xml", - "lib/net462/Microsoft.Extensions.Logging.Abstractions.dll", - "lib/net462/Microsoft.Extensions.Logging.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml", - "lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll", - "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.10.0.2.nupkg.sha512", - "microsoft.extensions.logging.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.ObjectPool/8.0.11": { - "sha512": "6ApKcHNJigXBfZa6XlDQ8feJpq7SG1ogZXg6M4FiNzgd6irs3LUAzo0Pfn4F2ZI9liGnH1XIBR/OtSbZmJAV5w==", - "type": "package", - "path": "microsoft.extensions.objectpool/8.0.11", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net462/Microsoft.Extensions.ObjectPool.dll", - "lib/net462/Microsoft.Extensions.ObjectPool.xml", - "lib/net8.0/Microsoft.Extensions.ObjectPool.dll", - "lib/net8.0/Microsoft.Extensions.ObjectPool.xml", - "lib/netstandard2.0/Microsoft.Extensions.ObjectPool.dll", - "lib/netstandard2.0/Microsoft.Extensions.ObjectPool.xml", - "microsoft.extensions.objectpool.8.0.11.nupkg.sha512", - "microsoft.extensions.objectpool.nuspec" - ] - }, - "Microsoft.Extensions.Options/10.0.2": { - "sha512": "1De2LJjmxdqopI5AYC5dIhoZQ79AR5ayywxNF1rXrXFtKQfbQOV9+n/IsZBa7qWlr0MqoGpW8+OY2v/57udZOA==", - "type": "package", - "path": "microsoft.extensions.options/10.0.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Options.SourceGeneration.dll", - "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "buildTransitive/net461/Microsoft.Extensions.Options.targets", - "buildTransitive/net462/Microsoft.Extensions.Options.targets", - "buildTransitive/net8.0/Microsoft.Extensions.Options.targets", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Options.targets", - "buildTransitive/netstandard2.0/Microsoft.Extensions.Options.targets", - "lib/net10.0/Microsoft.Extensions.Options.dll", - "lib/net10.0/Microsoft.Extensions.Options.xml", - "lib/net462/Microsoft.Extensions.Options.dll", - "lib/net462/Microsoft.Extensions.Options.xml", - "lib/net8.0/Microsoft.Extensions.Options.dll", - "lib/net8.0/Microsoft.Extensions.Options.xml", - "lib/net9.0/Microsoft.Extensions.Options.dll", - "lib/net9.0/Microsoft.Extensions.Options.xml", - "lib/netstandard2.0/Microsoft.Extensions.Options.dll", - "lib/netstandard2.0/Microsoft.Extensions.Options.xml", - "lib/netstandard2.1/Microsoft.Extensions.Options.dll", - "lib/netstandard2.1/Microsoft.Extensions.Options.xml", - "microsoft.extensions.options.10.0.2.nupkg.sha512", - "microsoft.extensions.options.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Primitives/10.0.2": { - "sha512": "QmSiO+oLBEooGgB3i0GRXyeYRDHjllqt3k365jwfZlYWhvSHA3UL2NEVV5m8aZa041eIlblo6KMI5txvTMpTwA==", - "type": "package", - "path": "microsoft.extensions.primitives/10.0.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.Primitives.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets", - "lib/net10.0/Microsoft.Extensions.Primitives.dll", - "lib/net10.0/Microsoft.Extensions.Primitives.xml", - "lib/net462/Microsoft.Extensions.Primitives.dll", - "lib/net462/Microsoft.Extensions.Primitives.xml", - "lib/net8.0/Microsoft.Extensions.Primitives.dll", - "lib/net8.0/Microsoft.Extensions.Primitives.xml", - "lib/net9.0/Microsoft.Extensions.Primitives.dll", - "lib/net9.0/Microsoft.Extensions.Primitives.xml", - "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll", - "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml", - "microsoft.extensions.primitives.10.0.2.nupkg.sha512", - "microsoft.extensions.primitives.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.IdentityModel.Abstractions/8.14.0": { - "sha512": "iwbCpSjD3ehfTwBhtSNEtKPK0ICun6ov7Ibx6ISNA9bfwIyzI2Siwyi9eJFCJBwxowK9xcA1mj+jBWiigeqgcQ==", - "type": "package", - "path": "microsoft.identitymodel.abstractions/8.14.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net462/Microsoft.IdentityModel.Abstractions.dll", - "lib/net462/Microsoft.IdentityModel.Abstractions.xml", - "lib/net472/Microsoft.IdentityModel.Abstractions.dll", - "lib/net472/Microsoft.IdentityModel.Abstractions.xml", - "lib/net6.0/Microsoft.IdentityModel.Abstractions.dll", - "lib/net6.0/Microsoft.IdentityModel.Abstractions.xml", - "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll", - "lib/net8.0/Microsoft.IdentityModel.Abstractions.xml", - "lib/net9.0/Microsoft.IdentityModel.Abstractions.dll", - "lib/net9.0/Microsoft.IdentityModel.Abstractions.xml", - "lib/netstandard2.0/Microsoft.IdentityModel.Abstractions.dll", - "lib/netstandard2.0/Microsoft.IdentityModel.Abstractions.xml", - "microsoft.identitymodel.abstractions.8.14.0.nupkg.sha512", - "microsoft.identitymodel.abstractions.nuspec" - ] - }, - "Microsoft.IdentityModel.JsonWebTokens/8.14.0": { - "sha512": "4jOpiA4THdtpLyMdAb24dtj7+6GmvhOhxf5XHLYWmPKF8ApEnApal1UnJsKO4HxUWRXDA6C4WQVfYyqsRhpNpQ==", - "type": "package", - "path": "microsoft.identitymodel.jsonwebtokens/8.14.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net462/Microsoft.IdentityModel.JsonWebTokens.dll", - "lib/net462/Microsoft.IdentityModel.JsonWebTokens.xml", - "lib/net472/Microsoft.IdentityModel.JsonWebTokens.dll", - "lib/net472/Microsoft.IdentityModel.JsonWebTokens.xml", - "lib/net6.0/Microsoft.IdentityModel.JsonWebTokens.dll", - "lib/net6.0/Microsoft.IdentityModel.JsonWebTokens.xml", - "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll", - "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.xml", - "lib/net9.0/Microsoft.IdentityModel.JsonWebTokens.dll", - "lib/net9.0/Microsoft.IdentityModel.JsonWebTokens.xml", - "lib/netstandard2.0/Microsoft.IdentityModel.JsonWebTokens.dll", - "lib/netstandard2.0/Microsoft.IdentityModel.JsonWebTokens.xml", - "microsoft.identitymodel.jsonwebtokens.8.14.0.nupkg.sha512", - "microsoft.identitymodel.jsonwebtokens.nuspec" - ] - }, - "Microsoft.IdentityModel.Logging/8.14.0": { - "sha512": "eqqnemdW38CKZEHS6diA50BV94QICozDZEvSrsvN3SJXUFwVB9gy+/oz76gldP7nZliA16IglXjXTCTdmU/Ejg==", - "type": "package", - "path": "microsoft.identitymodel.logging/8.14.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net462/Microsoft.IdentityModel.Logging.dll", - "lib/net462/Microsoft.IdentityModel.Logging.xml", - "lib/net472/Microsoft.IdentityModel.Logging.dll", - "lib/net472/Microsoft.IdentityModel.Logging.xml", - "lib/net6.0/Microsoft.IdentityModel.Logging.dll", - "lib/net6.0/Microsoft.IdentityModel.Logging.xml", - "lib/net8.0/Microsoft.IdentityModel.Logging.dll", - "lib/net8.0/Microsoft.IdentityModel.Logging.xml", - "lib/net9.0/Microsoft.IdentityModel.Logging.dll", - "lib/net9.0/Microsoft.IdentityModel.Logging.xml", - "lib/netstandard2.0/Microsoft.IdentityModel.Logging.dll", - "lib/netstandard2.0/Microsoft.IdentityModel.Logging.xml", - "microsoft.identitymodel.logging.8.14.0.nupkg.sha512", - "microsoft.identitymodel.logging.nuspec" - ] - }, - "Microsoft.IdentityModel.Protocols/7.1.2": { - "sha512": "SydLwMRFx6EHPWJ+N6+MVaoArN1Htt92b935O3RUWPY1yUF63zEjvd3lBu79eWdZUwedP8TN2I5V9T3nackvIQ==", - "type": "package", - "path": "microsoft.identitymodel.protocols/7.1.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net461/Microsoft.IdentityModel.Protocols.dll", - "lib/net461/Microsoft.IdentityModel.Protocols.xml", - "lib/net462/Microsoft.IdentityModel.Protocols.dll", - "lib/net462/Microsoft.IdentityModel.Protocols.xml", - "lib/net472/Microsoft.IdentityModel.Protocols.dll", - "lib/net472/Microsoft.IdentityModel.Protocols.xml", - "lib/net6.0/Microsoft.IdentityModel.Protocols.dll", - "lib/net6.0/Microsoft.IdentityModel.Protocols.xml", - "lib/net8.0/Microsoft.IdentityModel.Protocols.dll", - "lib/net8.0/Microsoft.IdentityModel.Protocols.xml", - "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.dll", - "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.xml", - "microsoft.identitymodel.protocols.7.1.2.nupkg.sha512", - "microsoft.identitymodel.protocols.nuspec" - ] - }, - "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.1.2": { - "sha512": "6lHQoLXhnMQ42mGrfDkzbIOR3rzKM1W1tgTeMPLgLCqwwGw0d96xFi/UiX/fYsu7d6cD5MJiL3+4HuI8VU+sVQ==", - "type": "package", - "path": "microsoft.identitymodel.protocols.openidconnect/7.1.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net461/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", - "lib/net461/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", - "lib/net462/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", - "lib/net462/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", - "lib/net472/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", - "lib/net472/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", - "lib/net6.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", - "lib/net6.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", - "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", - "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", - "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", - "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", - "microsoft.identitymodel.protocols.openidconnect.7.1.2.nupkg.sha512", - "microsoft.identitymodel.protocols.openidconnect.nuspec" - ] - }, - "Microsoft.IdentityModel.Tokens/8.14.0": { - "sha512": "lKIZiBiGd36k02TCdMHp1KlNWisyIvQxcYJvIkz7P4gSQ9zi8dgh6S5Grj8NNG7HWYIPfQymGyoZ6JB5d1Lo1g==", - "type": "package", - "path": "microsoft.identitymodel.tokens/8.14.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net462/Microsoft.IdentityModel.Tokens.dll", - "lib/net462/Microsoft.IdentityModel.Tokens.xml", - "lib/net472/Microsoft.IdentityModel.Tokens.dll", - "lib/net472/Microsoft.IdentityModel.Tokens.xml", - "lib/net6.0/Microsoft.IdentityModel.Tokens.dll", - "lib/net6.0/Microsoft.IdentityModel.Tokens.xml", - "lib/net8.0/Microsoft.IdentityModel.Tokens.dll", - "lib/net8.0/Microsoft.IdentityModel.Tokens.xml", - "lib/net9.0/Microsoft.IdentityModel.Tokens.dll", - "lib/net9.0/Microsoft.IdentityModel.Tokens.xml", - "lib/netstandard2.0/Microsoft.IdentityModel.Tokens.dll", - "lib/netstandard2.0/Microsoft.IdentityModel.Tokens.xml", - "microsoft.identitymodel.tokens.8.14.0.nupkg.sha512", - "microsoft.identitymodel.tokens.nuspec" - ] - }, - "Microsoft.Net.Http.Headers/2.3.0": { - "sha512": "/M0wVg6tJUOHutWD3BMOUVZAioJVXe0tCpFiovzv0T9T12TBf4MnaHP0efO8TCr1a6O9RZgQeZ9Gdark8L9XdA==", - "type": "package", - "path": "microsoft.net.http.headers/2.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/netstandard2.0/Microsoft.Net.Http.Headers.dll", - "lib/netstandard2.0/Microsoft.Net.Http.Headers.xml", - "microsoft.net.http.headers.2.3.0.nupkg.sha512", - "microsoft.net.http.headers.nuspec" - ] - }, - "Microsoft.NET.Test.Sdk/17.8.0": { - "sha512": "BmTYGbD/YuDHmApIENdoyN1jCk0Rj1fJB0+B/fVekyTdVidr91IlzhqzytiUgaEAzL1ZJcYCme0MeBMYvJVzvw==", - "type": "package", - "path": "microsoft.net.test.sdk/17.8.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE_MIT.txt", - "build/net462/Microsoft.NET.Test.Sdk.props", - "build/net462/Microsoft.NET.Test.Sdk.targets", - "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.Program.cs", - "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.Program.fs", - "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.Program.vb", - "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.props", - "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.targets", - "buildMultiTargeting/Microsoft.NET.Test.Sdk.props", - "lib/net462/_._", - "lib/netcoreapp3.1/_._", - "microsoft.net.test.sdk.17.8.0.nupkg.sha512", - "microsoft.net.test.sdk.nuspec" - ] - }, - "Microsoft.NETCore.Platforms/1.1.0": { - "sha512": "kz0PEW2lhqygehI/d6XsPCQzD7ff7gUJaVGPVETX611eadGsA3A877GdSlU0LRVMCTH/+P3o2iDTak+S08V2+A==", - "type": "package", - "path": "microsoft.netcore.platforms/1.1.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "microsoft.netcore.platforms.1.1.0.nupkg.sha512", - "microsoft.netcore.platforms.nuspec", - "runtime.json" - ] - }, - "Microsoft.NETCore.Targets/1.1.0": { - "sha512": "aOZA3BWfz9RXjpzt0sRJJMjAscAUm3Hoa4UWAfceV9UTYxgwZ1lZt5nO2myFf+/jetYQo4uTP7zS8sJY67BBxg==", - "type": "package", - "path": "microsoft.netcore.targets/1.1.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "microsoft.netcore.targets.1.1.0.nupkg.sha512", - "microsoft.netcore.targets.nuspec", - "runtime.json" - ] - }, - "Microsoft.OpenApi/1.6.14": { - "sha512": "tTaBT8qjk3xINfESyOPE2rIellPvB7qpVqiWiyA/lACVvz+xOGiXhFUfohcx82NLbi5avzLW0lx+s6oAqQijfw==", - "type": "package", - "path": "microsoft.openapi/1.6.14", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/netstandard2.0/Microsoft.OpenApi.dll", - "lib/netstandard2.0/Microsoft.OpenApi.pdb", - "lib/netstandard2.0/Microsoft.OpenApi.xml", - "microsoft.openapi.1.6.14.nupkg.sha512", - "microsoft.openapi.nuspec" - ] - }, - "Microsoft.TestPlatform.ObjectModel/17.8.0": { - "sha512": "AYy6vlpGMfz5kOFq99L93RGbqftW/8eQTqjT9iGXW6s9MRP3UdtY8idJ8rJcjeSja8A18IhIro5YnH3uv1nz4g==", - "type": "package", - "path": "microsoft.testplatform.objectmodel/17.8.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE_MIT.txt", - "lib/net462/Microsoft.TestPlatform.CoreUtilities.dll", - "lib/net462/Microsoft.TestPlatform.PlatformAbstractions.dll", - "lib/net462/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll", - "lib/net462/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/net462/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/net462/de/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/net462/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/net462/es/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/net462/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/net462/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/net462/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/net462/it/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/net462/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/net462/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/net462/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/net462/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/net462/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/net462/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/net462/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/net462/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/net462/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/net462/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/net462/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/net462/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/net462/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/net462/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/net462/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/net462/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/net462/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll", - "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll", - "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll", - "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netstandard2.0/Microsoft.TestPlatform.CoreUtilities.dll", - "lib/netstandard2.0/Microsoft.TestPlatform.PlatformAbstractions.dll", - "lib/netstandard2.0/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll", - "lib/netstandard2.0/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netstandard2.0/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netstandard2.0/de/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netstandard2.0/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netstandard2.0/es/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netstandard2.0/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netstandard2.0/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netstandard2.0/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netstandard2.0/it/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netstandard2.0/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netstandard2.0/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netstandard2.0/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netstandard2.0/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netstandard2.0/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netstandard2.0/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netstandard2.0/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netstandard2.0/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netstandard2.0/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netstandard2.0/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netstandard2.0/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netstandard2.0/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netstandard2.0/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netstandard2.0/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netstandard2.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "lib/netstandard2.0/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll", - "lib/netstandard2.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", - "microsoft.testplatform.objectmodel.17.8.0.nupkg.sha512", - "microsoft.testplatform.objectmodel.nuspec" - ] - }, - "Microsoft.TestPlatform.TestHost/17.8.0": { - "sha512": "9ivcl/7SGRmOT0YYrHQGohWiT5YCpkmy/UEzldfVisLm6QxbLaK3FAJqZXI34rnRLmqqDCeMQxKINwmKwAPiDw==", - "type": "package", - "path": "microsoft.testplatform.testhost/17.8.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE_MIT.txt", - "ThirdPartyNotices.txt", - "build/netcoreapp3.1/Microsoft.TestPlatform.TestHost.props", - "build/netcoreapp3.1/x64/testhost.dll", - "build/netcoreapp3.1/x64/testhost.exe", - "build/netcoreapp3.1/x86/testhost.x86.dll", - "build/netcoreapp3.1/x86/testhost.x86.exe", - "lib/net462/_._", - "lib/netcoreapp3.1/Microsoft.TestPlatform.CommunicationUtilities.dll", - "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll", - "lib/netcoreapp3.1/Microsoft.TestPlatform.CrossPlatEngine.dll", - "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll", - "lib/netcoreapp3.1/Microsoft.TestPlatform.Utilities.dll", - "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.Common.dll", - "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll", - "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", - "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", - "lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", - "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", - "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", - "lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", - "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", - "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", - "lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", - "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", - "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", - "lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", - "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", - "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", - "lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", - "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", - "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", - "lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", - "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", - "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", - "lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", - "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", - "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", - "lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", - "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", - "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", - "lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", - "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", - "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", - "lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", - "lib/netcoreapp3.1/testhost.deps.json", - "lib/netcoreapp3.1/testhost.dll", - "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", - "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", - "lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", - "lib/netcoreapp3.1/x64/msdia140.dll", - "lib/netcoreapp3.1/x86/msdia140.dll", - "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", - "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", - "lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", - "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", - "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", - "lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", - "microsoft.testplatform.testhost.17.8.0.nupkg.sha512", - "microsoft.testplatform.testhost.nuspec" - ] - }, - "Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.22.1": { - "sha512": "EfYANhAWqmWKoLwN6bxoiPZSOfJSO9lzX+UrU6GVhLhPub1Hd+5f0zL0/tggIA6mRz6Ebw2xCNcIsM4k+7NPng==", - "type": "package", - "path": "microsoft.visualstudio.azure.containers.tools.targets/1.22.1", - "hasTools": true, - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "CHANGELOG.md", - "EULA.md", - "ThirdPartyNotices.txt", - "build/Container.props", - "build/Container.targets", - "build/Microsoft.VisualStudio.Azure.Containers.Tools.Targets.props", - "build/Microsoft.VisualStudio.Azure.Containers.Tools.Targets.targets", - "build/Rules/GeneralBrowseObject.xaml", - "build/Rules/cs-CZ/GeneralBrowseObject.xaml", - "build/Rules/de-DE/GeneralBrowseObject.xaml", - "build/Rules/es-ES/GeneralBrowseObject.xaml", - "build/Rules/fr-FR/GeneralBrowseObject.xaml", - "build/Rules/it-IT/GeneralBrowseObject.xaml", - "build/Rules/ja-JP/GeneralBrowseObject.xaml", - "build/Rules/ko-KR/GeneralBrowseObject.xaml", - "build/Rules/pl-PL/GeneralBrowseObject.xaml", - "build/Rules/pt-BR/GeneralBrowseObject.xaml", - "build/Rules/ru-RU/GeneralBrowseObject.xaml", - "build/Rules/tr-TR/GeneralBrowseObject.xaml", - "build/Rules/zh-CN/GeneralBrowseObject.xaml", - "build/Rules/zh-TW/GeneralBrowseObject.xaml", - "build/ToolsTarget.props", - "build/ToolsTarget.targets", - "icon.png", - "microsoft.visualstudio.azure.containers.tools.targets.1.22.1.nupkg.sha512", - "microsoft.visualstudio.azure.containers.tools.targets.nuspec", - "tools/Microsoft.VisualStudio.Containers.Tools.Common.dll", - "tools/Microsoft.VisualStudio.Containers.Tools.Shared.dll", - "tools/Microsoft.VisualStudio.Containers.Tools.Tasks.dll", - "tools/Newtonsoft.Json.dll", - "tools/System.Security.Principal.Windows.dll", - "tools/cs/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", - "tools/cs/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", - "tools/cs/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", - "tools/de/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", - "tools/de/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", - "tools/de/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", - "tools/es/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", - "tools/es/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", - "tools/es/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", - "tools/fr/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", - "tools/fr/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", - "tools/fr/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", - "tools/it/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", - "tools/it/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", - "tools/it/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", - "tools/ja/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", - "tools/ja/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", - "tools/ja/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", - "tools/ko/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", - "tools/ko/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", - "tools/ko/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", - "tools/pl/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", - "tools/pl/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", - "tools/pl/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", - "tools/pt-BR/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", - "tools/pt-BR/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", - "tools/pt-BR/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", - "tools/ru/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", - "tools/ru/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", - "tools/ru/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", - "tools/tr/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", - "tools/tr/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", - "tools/tr/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", - "tools/zh-Hans/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", - "tools/zh-Hans/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", - "tools/zh-Hans/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", - "tools/zh-Hant/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", - "tools/zh-Hant/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", - "tools/zh-Hant/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll" - ] - }, - "Microsoft.Win32.Primitives/4.3.0": { - "sha512": "9ZQKCWxH7Ijp9BfahvL2Zyf1cJIk8XYLF6Yjzr2yi0b2cOut/HQ31qf1ThHAgCc3WiZMdnWcfJCgN82/0UunxA==", - "type": "package", - "path": "microsoft.win32.primitives/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/Microsoft.Win32.Primitives.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "microsoft.win32.primitives.4.3.0.nupkg.sha512", - "microsoft.win32.primitives.nuspec", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/Microsoft.Win32.Primitives.dll", - "ref/netstandard1.3/Microsoft.Win32.Primitives.dll", - "ref/netstandard1.3/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/de/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/es/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/fr/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/it/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/ja/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/ko/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/ru/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/zh-hans/Microsoft.Win32.Primitives.xml", - "ref/netstandard1.3/zh-hant/Microsoft.Win32.Primitives.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._" - ] - }, - "Moq/4.20.72": { - "sha512": "EA55cjyNn8eTNWrgrdZJH5QLFp2L43oxl1tlkoYUKIE9pRwL784OWiTXeCV5ApS+AMYEAlt7Fo03A2XfouvHmQ==", - "type": "package", - "path": "moq/4.20.72", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "icon.png", - "lib/net462/Moq.dll", - "lib/net6.0/Moq.dll", - "lib/netstandard2.0/Moq.dll", - "lib/netstandard2.1/Moq.dll", - "moq.4.20.72.nupkg.sha512", - "moq.nuspec", - "readme.md" - ] - }, - "MySqlConnector/2.3.5": { - "sha512": "AmEfUPkFl+Ev6jJ8Dhns3CYHBfD12RHzGYWuLt6DfG6/af6YvOMyPz74ZPPjBYQGRJkumD2Z48Kqm8s5DJuhLA==", - "type": "package", - "path": "mysqlconnector/2.3.5", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net462/MySqlConnector.dll", - "lib/net462/MySqlConnector.xml", - "lib/net471/MySqlConnector.dll", - "lib/net471/MySqlConnector.xml", - "lib/net48/MySqlConnector.dll", - "lib/net48/MySqlConnector.xml", - "lib/net6.0/MySqlConnector.dll", - "lib/net6.0/MySqlConnector.xml", - "lib/net7.0/MySqlConnector.dll", - "lib/net7.0/MySqlConnector.xml", - "lib/net8.0/MySqlConnector.dll", - "lib/net8.0/MySqlConnector.xml", - "lib/netstandard2.0/MySqlConnector.dll", - "lib/netstandard2.0/MySqlConnector.xml", - "lib/netstandard2.1/MySqlConnector.dll", - "lib/netstandard2.1/MySqlConnector.xml", - "logo.png", - "mysqlconnector.2.3.5.nupkg.sha512", - "mysqlconnector.nuspec" - ] - }, - "NETStandard.Library/1.6.1": { - "sha512": "WcSp3+vP+yHNgS8EV5J7pZ9IRpeDuARBPN28by8zqff1wJQXm26PVU8L3/fYLBJVU7BtDyqNVWq2KlCVvSSR4A==", - "type": "package", - "path": "netstandard.library/1.6.1", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "netstandard.library.1.6.1.nupkg.sha512", - "netstandard.library.nuspec" - ] - }, - "Newtonsoft.Json/13.0.4": { - "sha512": "pdgNNMai3zv51W5aq268sujXUyx7SNdE2bj1wZcWjAQrKMFZV260lbqYop1d2GM67JI1huLRwxo9ZqnfF/lC6A==", - "type": "package", - "path": "newtonsoft.json/13.0.4", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "LICENSE.md", - "README.md", - "lib/net20/Newtonsoft.Json.dll", - "lib/net20/Newtonsoft.Json.xml", - "lib/net35/Newtonsoft.Json.dll", - "lib/net35/Newtonsoft.Json.xml", - "lib/net40/Newtonsoft.Json.dll", - "lib/net40/Newtonsoft.Json.xml", - "lib/net45/Newtonsoft.Json.dll", - "lib/net45/Newtonsoft.Json.xml", - "lib/net6.0/Newtonsoft.Json.dll", - "lib/net6.0/Newtonsoft.Json.xml", - "lib/netstandard1.0/Newtonsoft.Json.dll", - "lib/netstandard1.0/Newtonsoft.Json.xml", - "lib/netstandard1.3/Newtonsoft.Json.dll", - "lib/netstandard1.3/Newtonsoft.Json.xml", - "lib/netstandard2.0/Newtonsoft.Json.dll", - "lib/netstandard2.0/Newtonsoft.Json.xml", - "newtonsoft.json.13.0.4.nupkg.sha512", - "newtonsoft.json.nuspec", - "packageIcon.png" - ] - }, - "NuGet.Frameworks/6.5.0": { - "sha512": "QWINE2x3MbTODsWT1Gh71GaGb5icBz4chS8VYvTgsBnsi8esgN6wtHhydd7fvToWECYGq7T4cgBBDiKD/363fg==", - "type": "package", - "path": "nuget.frameworks/6.5.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "icon.png", - "lib/net472/NuGet.Frameworks.dll", - "lib/netstandard2.0/NuGet.Frameworks.dll", - "nuget.frameworks.6.5.0.nupkg.sha512", - "nuget.frameworks.nuspec" - ] - }, - "Pipelines.Sockets.Unofficial/2.2.8": { - "sha512": "zG2FApP5zxSx6OcdJQLbZDk2AVlN2BNQD6MorwIfV6gVj0RRxWPEp2LXAxqDGZqeNV1Zp0BNPcNaey/GXmTdvQ==", - "type": "package", - "path": "pipelines.sockets.unofficial/2.2.8", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net461/Pipelines.Sockets.Unofficial.dll", - "lib/net461/Pipelines.Sockets.Unofficial.xml", - "lib/net472/Pipelines.Sockets.Unofficial.dll", - "lib/net472/Pipelines.Sockets.Unofficial.xml", - "lib/net5.0/Pipelines.Sockets.Unofficial.dll", - "lib/net5.0/Pipelines.Sockets.Unofficial.xml", - "lib/netcoreapp3.1/Pipelines.Sockets.Unofficial.dll", - "lib/netcoreapp3.1/Pipelines.Sockets.Unofficial.xml", - "lib/netstandard2.0/Pipelines.Sockets.Unofficial.dll", - "lib/netstandard2.0/Pipelines.Sockets.Unofficial.xml", - "lib/netstandard2.1/Pipelines.Sockets.Unofficial.dll", - "lib/netstandard2.1/Pipelines.Sockets.Unofficial.xml", - "pipelines.sockets.unofficial.2.2.8.nupkg.sha512", - "pipelines.sockets.unofficial.nuspec" - ] - }, - "Pomelo.EntityFrameworkCore.MySql/8.0.3": { - "sha512": "gOHP6v/nFp5V/FgHqv9mZocGqCLGofihEX9dTbLhiXX3H7SJHmGX70GIPUpiqLT+1jIfDxg1PZh9MTUKuk7Kig==", - "type": "package", - "path": "pomelo.entityframeworkcore.mysql/8.0.3", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "icon.png", - "lib/net8.0/Pomelo.EntityFrameworkCore.MySql.dll", - "lib/net8.0/Pomelo.EntityFrameworkCore.MySql.xml", - "pomelo.entityframeworkcore.mysql.8.0.3.nupkg.sha512", - "pomelo.entityframeworkcore.mysql.nuspec" - ] - }, - "RabbitMQ.Client/7.1.2": { - "sha512": "y3c6ulgULScWthHw5PLM1ShHRLhxg0vCtzX/hh61gRgNecL3ZC3WoBW2HYHoXOVRqTl99Br9E7CZEytGZEsCyQ==", - "type": "package", - "path": "rabbitmq.client/7.1.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "icon.png", - "lib/net8.0/RabbitMQ.Client.dll", - "lib/net8.0/RabbitMQ.Client.xml", - "lib/netstandard2.0/RabbitMQ.Client.dll", - "lib/netstandard2.0/RabbitMQ.Client.xml", - "rabbitmq.client.7.1.2.nupkg.sha512", - "rabbitmq.client.nuspec" - ] - }, - "RedLock.net/2.3.2": { - "sha512": "jlrALAArm4dCE292U3EtRoMnVKJ9M6sunbZn/oG5OuzlGtTpusXBfvDrnGWbgGDlWV027f5E9H5CiVnPxiq8+g==", - "type": "package", - "path": "redlock.net/2.3.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net461/RedLockNet.Abstractions.dll", - "lib/net461/RedLockNet.SERedis.dll", - "lib/net472/RedLockNet.Abstractions.dll", - "lib/net472/RedLockNet.SERedis.dll", - "lib/netstandard2.0/RedLockNet.Abstractions.dll", - "lib/netstandard2.0/RedLockNet.SERedis.dll", - "redlock-icon.png", - "redlock.net.2.3.2.nupkg.sha512", - "redlock.net.nuspec" - ] - }, - "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "HdSSp5MnJSsg08KMfZThpuLPJpPwE5hBXvHwoKWosyHHfe8Mh5WKT0ylEOf6yNzX6Ngjxe4Whkafh5q7Ymac4Q==", - "type": "package", - "path": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/debian.8-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "+yH1a49wJMy8Zt4yx5RhJrxO/DBDByAiCzNwiETI+1S4mPdCu0OY4djdciC7Vssk0l22wQaDLrXxXkp+3+7bVA==", - "type": "package", - "path": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/fedora.23-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "c3YNH1GQJbfIPJeCnr4avseugSqPrxwIqzthYyZDN6EuOyNOzq+y2KSUfRcXauya1sF4foESTgwM5e1A8arAKw==", - "type": "package", - "path": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/fedora.24-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.native.System/4.3.0": { - "sha512": "c/qWt2LieNZIj1jGnVNsE2Kl23Ya2aSTBuXMD6V7k9KWr6l16Tqdwq+hJScEpWER9753NWC8h96PaVNY5Ld7Jw==", - "type": "package", - "path": "runtime.native.system/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "runtime.native.system.4.3.0.nupkg.sha512", - "runtime.native.system.nuspec" - ] - }, - "runtime.native.System.IO.Compression/4.3.0": { - "sha512": "INBPonS5QPEgn7naufQFXJEp3zX6L4bwHgJ/ZH78aBTpeNfQMtf7C6VrAFhlq2xxWBveIOWyFzQjJ8XzHMhdOQ==", - "type": "package", - "path": "runtime.native.system.io.compression/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "runtime.native.system.io.compression.4.3.0.nupkg.sha512", - "runtime.native.system.io.compression.nuspec" - ] - }, - "runtime.native.System.Net.Http/4.3.0": { - "sha512": "ZVuZJqnnegJhd2k/PtAbbIcZ3aZeITq3sj06oKfMBSfphW3HDmk/t4ObvbOk/JA/swGR0LNqMksAh/f7gpTROg==", - "type": "package", - "path": "runtime.native.system.net.http/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "runtime.native.system.net.http.4.3.0.nupkg.sha512", - "runtime.native.system.net.http.nuspec" - ] - }, - "runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "sha512": "DloMk88juo0OuOWr56QG7MNchmafTLYWvABy36izkrLI5VledI0rq28KGs1i9wbpeT9NPQrx/wTf8U2vazqQ3Q==", - "type": "package", - "path": "runtime.native.system.security.cryptography.apple/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", - "runtime.native.system.security.cryptography.apple.nuspec" - ] - }, - "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "NS1U+700m4KFRHR5o4vo9DSlTmlCKu/u7dtE5sUHVIPB+xpXxYQvgBgA6wEIeCz6Yfn0Z52/72WYsToCEPJnrw==", - "type": "package", - "path": "runtime.native.system.security.cryptography.openssl/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/_._", - "runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "runtime.native.system.security.cryptography.openssl.nuspec" - ] - }, - "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "b3pthNgxxFcD+Pc0WSEoC0+md3MyhRS6aCEeenvNE3Fdw1HyJ18ZhRFVJJzIeR/O/jpxPboB805Ho0T3Ul7w8A==", - "type": "package", - "path": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/opensuse.13.2-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "KeLz4HClKf+nFS7p/6Fi/CqyLXh81FpiGzcmuS8DGi9lUqSnZ6Es23/gv2O+1XVGfrbNmviF7CckBpavkBoIFQ==", - "type": "package", - "path": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/opensuse.42.1-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { - "sha512": "kVXCuMTrTlxq4XOOMAysuNwsXWpYeboGddNGpIgNSZmv1b6r/s/DPk0fYMB7Q5Qo4bY68o48jt4T4y5BVecbCQ==", - "type": "package", - "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", - "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.nuspec", - "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.Apple.dylib" - ] - }, - "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "X7IdhILzr4ROXd8mI1BUCQMSHSQwelUlBjF1JyTKCjXaOGn2fB4EKBxQbCK2VjO3WaWIdlXZL3W6TiIVnrhX4g==", - "type": "package", - "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.OpenSsl.dylib" - ] - }, - "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "nyFNiCk/r+VOiIqreLix8yN+q3Wga9+SE8BCgkf+2BwEKiNx6DyvFjCgkfV743/grxv8jHJ8gUK4XEQw7yzRYg==", - "type": "package", - "path": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/rhel.7-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "ytoewC6wGorL7KoCAvRfsgoJPJbNq+64k2SqW6JcOAebWsFUvCCYgfzQMrnpvPiEl4OrblUlhF2ji+Q1+SVLrQ==", - "type": "package", - "path": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/ubuntu.14.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "I8bKw2I8k58Wx7fMKQJn2R8lamboCAiHfHeV/pS65ScKWMMI0+wJkLYlEKvgW1D/XvSl/221clBoR2q9QNNM7A==", - "type": "package", - "path": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/ubuntu.16.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "VB5cn/7OzUfzdnC8tqAIMQciVLiq2epm2NrAm1E9OjNRyG4lVhfR61SMcLizejzQP8R8Uf/0l5qOIbUEi+RdEg==", - "type": "package", - "path": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.nuspec", - "runtimes/ubuntu.16.10-x64/native/System.Security.Cryptography.Native.OpenSsl.so" - ] - }, - "StackExchange.Redis/2.9.32": { - "sha512": "j5Rjbf7gWz5izrn0UWQy9RlQY4cQDPkwJfVqATnVsOa/+zzJrps12LOgacMsDl/Vit2f01cDiDkG/Rst8v2iGw==", - "type": "package", - "path": "stackexchange.redis/2.9.32", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net461/StackExchange.Redis.dll", - "lib/net461/StackExchange.Redis.xml", - "lib/net472/StackExchange.Redis.dll", - "lib/net472/StackExchange.Redis.xml", - "lib/net6.0/StackExchange.Redis.dll", - "lib/net6.0/StackExchange.Redis.xml", - "lib/net8.0/StackExchange.Redis.dll", - "lib/net8.0/StackExchange.Redis.xml", - "lib/netcoreapp3.1/StackExchange.Redis.dll", - "lib/netcoreapp3.1/StackExchange.Redis.xml", - "lib/netstandard2.0/StackExchange.Redis.dll", - "lib/netstandard2.0/StackExchange.Redis.xml", - "stackexchange.redis.2.9.32.nupkg.sha512", - "stackexchange.redis.nuspec" - ] - }, - "Swashbuckle.AspNetCore/6.6.2": { - "sha512": "+NB4UYVYN6AhDSjW0IJAd1AGD8V33gemFNLPaxKTtPkHB+HaKAKf9MGAEUPivEWvqeQfcKIw8lJaHq6LHljRuw==", - "type": "package", - "path": "swashbuckle.aspnetcore/6.6.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "build/Swashbuckle.AspNetCore.props", - "swashbuckle.aspnetcore.6.6.2.nupkg.sha512", - "swashbuckle.aspnetcore.nuspec" - ] - }, - "Swashbuckle.AspNetCore.Swagger/6.6.2": { - "sha512": "ovgPTSYX83UrQUWiS5vzDcJ8TEX1MAxBgDFMK45rC24MorHEPQlZAHlaXj/yth4Zf6xcktpUgTEBvffRQVwDKA==", - "type": "package", - "path": "swashbuckle.aspnetcore.swagger/6.6.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net5.0/Swashbuckle.AspNetCore.Swagger.dll", - "lib/net5.0/Swashbuckle.AspNetCore.Swagger.pdb", - "lib/net5.0/Swashbuckle.AspNetCore.Swagger.xml", - "lib/net6.0/Swashbuckle.AspNetCore.Swagger.dll", - "lib/net6.0/Swashbuckle.AspNetCore.Swagger.pdb", - "lib/net6.0/Swashbuckle.AspNetCore.Swagger.xml", - "lib/net7.0/Swashbuckle.AspNetCore.Swagger.dll", - "lib/net7.0/Swashbuckle.AspNetCore.Swagger.pdb", - "lib/net7.0/Swashbuckle.AspNetCore.Swagger.xml", - "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll", - "lib/net8.0/Swashbuckle.AspNetCore.Swagger.pdb", - "lib/net8.0/Swashbuckle.AspNetCore.Swagger.xml", - "lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.dll", - "lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.pdb", - "lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.xml", - "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.dll", - "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.pdb", - "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.xml", - "package-readme.md", - "swashbuckle.aspnetcore.swagger.6.6.2.nupkg.sha512", - "swashbuckle.aspnetcore.swagger.nuspec" - ] - }, - "Swashbuckle.AspNetCore.SwaggerGen/6.6.2": { - "sha512": "zv4ikn4AT1VYuOsDCpktLq4QDq08e7Utzbir86M5/ZkRaLXbCPF11E1/vTmOiDzRTl0zTZINQU2qLKwTcHgfrA==", - "type": "package", - "path": "swashbuckle.aspnetcore.swaggergen/6.6.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.dll", - "lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", - "lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.xml", - "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll", - "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", - "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.xml", - "lib/net7.0/Swashbuckle.AspNetCore.SwaggerGen.dll", - "lib/net7.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", - "lib/net7.0/Swashbuckle.AspNetCore.SwaggerGen.xml", - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll", - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.xml", - "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.dll", - "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", - "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.xml", - "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.dll", - "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", - "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.xml", - "package-readme.md", - "swashbuckle.aspnetcore.swaggergen.6.6.2.nupkg.sha512", - "swashbuckle.aspnetcore.swaggergen.nuspec" - ] - }, - "Swashbuckle.AspNetCore.SwaggerUI/6.6.2": { - "sha512": "mBBb+/8Hm2Q3Wygag+hu2jj69tZW5psuv0vMRXY07Wy+Rrj40vRP8ZTbKBhs91r45/HXT4aY4z0iSBYx1h6JvA==", - "type": "package", - "path": "swashbuckle.aspnetcore.swaggerui/6.6.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.dll", - "lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", - "lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.xml", - "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll", - "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", - "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.xml", - "lib/net7.0/Swashbuckle.AspNetCore.SwaggerUI.dll", - "lib/net7.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", - "lib/net7.0/Swashbuckle.AspNetCore.SwaggerUI.xml", - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll", - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", - "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.xml", - "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.dll", - "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", - "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.xml", - "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.dll", - "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", - "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.xml", - "package-readme.md", - "swashbuckle.aspnetcore.swaggerui.6.6.2.nupkg.sha512", - "swashbuckle.aspnetcore.swaggerui.nuspec" - ] - }, - "System.AppContext/4.3.0": { - "sha512": "fKC+rmaLfeIzUhagxY17Q9siv/sPrjjKcfNg1Ic8IlQkZLipo8ljcaZQu4VtI4Jqbzjc2VTjzGLF6WmsRXAEgA==", - "type": "package", - "path": "system.appcontext/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.AppContext.dll", - "lib/net463/System.AppContext.dll", - "lib/netcore50/System.AppContext.dll", - "lib/netstandard1.6/System.AppContext.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.AppContext.dll", - "ref/net463/System.AppContext.dll", - "ref/netstandard/_._", - "ref/netstandard1.3/System.AppContext.dll", - "ref/netstandard1.3/System.AppContext.xml", - "ref/netstandard1.3/de/System.AppContext.xml", - "ref/netstandard1.3/es/System.AppContext.xml", - "ref/netstandard1.3/fr/System.AppContext.xml", - "ref/netstandard1.3/it/System.AppContext.xml", - "ref/netstandard1.3/ja/System.AppContext.xml", - "ref/netstandard1.3/ko/System.AppContext.xml", - "ref/netstandard1.3/ru/System.AppContext.xml", - "ref/netstandard1.3/zh-hans/System.AppContext.xml", - "ref/netstandard1.3/zh-hant/System.AppContext.xml", - "ref/netstandard1.6/System.AppContext.dll", - "ref/netstandard1.6/System.AppContext.xml", - "ref/netstandard1.6/de/System.AppContext.xml", - "ref/netstandard1.6/es/System.AppContext.xml", - "ref/netstandard1.6/fr/System.AppContext.xml", - "ref/netstandard1.6/it/System.AppContext.xml", - "ref/netstandard1.6/ja/System.AppContext.xml", - "ref/netstandard1.6/ko/System.AppContext.xml", - "ref/netstandard1.6/ru/System.AppContext.xml", - "ref/netstandard1.6/zh-hans/System.AppContext.xml", - "ref/netstandard1.6/zh-hant/System.AppContext.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/System.AppContext.dll", - "system.appcontext.4.3.0.nupkg.sha512", - "system.appcontext.nuspec" - ] - }, - "System.Buffers/4.6.0": { - "sha512": "lN6tZi7Q46zFzAbRYXTIvfXcyvQQgxnY7Xm6C6xQ9784dEL1amjM6S6Iw4ZpsvesAKnRVsM4scrDQaDqSClkjA==", - "type": "package", - "path": "system.buffers/4.6.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "buildTransitive/net461/System.Buffers.targets", - "buildTransitive/net462/_._", - "lib/net462/System.Buffers.dll", - "lib/net462/System.Buffers.xml", - "lib/netcoreapp2.1/_._", - "lib/netstandard2.0/System.Buffers.dll", - "lib/netstandard2.0/System.Buffers.xml", - "system.buffers.4.6.0.nupkg.sha512", - "system.buffers.nuspec" - ] - }, - "System.Collections/4.3.0": { - "sha512": "3Dcj85/TBdVpL5Zr+gEEBUuFe2icOnLalmEh9hfck1PTYbbyWuZgh4fmm2ysCLTrqLQw6t3TgTyJ+VLp+Qb+Lw==", - "type": "package", - "path": "system.collections/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Collections.dll", - "ref/netcore50/System.Collections.xml", - "ref/netcore50/de/System.Collections.xml", - "ref/netcore50/es/System.Collections.xml", - "ref/netcore50/fr/System.Collections.xml", - "ref/netcore50/it/System.Collections.xml", - "ref/netcore50/ja/System.Collections.xml", - "ref/netcore50/ko/System.Collections.xml", - "ref/netcore50/ru/System.Collections.xml", - "ref/netcore50/zh-hans/System.Collections.xml", - "ref/netcore50/zh-hant/System.Collections.xml", - "ref/netstandard1.0/System.Collections.dll", - "ref/netstandard1.0/System.Collections.xml", - "ref/netstandard1.0/de/System.Collections.xml", - "ref/netstandard1.0/es/System.Collections.xml", - "ref/netstandard1.0/fr/System.Collections.xml", - "ref/netstandard1.0/it/System.Collections.xml", - "ref/netstandard1.0/ja/System.Collections.xml", - "ref/netstandard1.0/ko/System.Collections.xml", - "ref/netstandard1.0/ru/System.Collections.xml", - "ref/netstandard1.0/zh-hans/System.Collections.xml", - "ref/netstandard1.0/zh-hant/System.Collections.xml", - "ref/netstandard1.3/System.Collections.dll", - "ref/netstandard1.3/System.Collections.xml", - "ref/netstandard1.3/de/System.Collections.xml", - "ref/netstandard1.3/es/System.Collections.xml", - "ref/netstandard1.3/fr/System.Collections.xml", - "ref/netstandard1.3/it/System.Collections.xml", - "ref/netstandard1.3/ja/System.Collections.xml", - "ref/netstandard1.3/ko/System.Collections.xml", - "ref/netstandard1.3/ru/System.Collections.xml", - "ref/netstandard1.3/zh-hans/System.Collections.xml", - "ref/netstandard1.3/zh-hant/System.Collections.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.collections.4.3.0.nupkg.sha512", - "system.collections.nuspec" - ] - }, - "System.Collections.Concurrent/4.3.0": { - "sha512": "ztl69Xp0Y/UXCL+3v3tEU+lIy+bvjKNUmopn1wep/a291pVPK7dxBd6T7WnlQqRog+d1a/hSsgRsmFnIBKTPLQ==", - "type": "package", - "path": "system.collections.concurrent/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Collections.Concurrent.dll", - "lib/netstandard1.3/System.Collections.Concurrent.dll", - "lib/portable-net45+win8+wpa81/_._", - "lib/win8/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Collections.Concurrent.dll", - "ref/netcore50/System.Collections.Concurrent.xml", - "ref/netcore50/de/System.Collections.Concurrent.xml", - "ref/netcore50/es/System.Collections.Concurrent.xml", - "ref/netcore50/fr/System.Collections.Concurrent.xml", - "ref/netcore50/it/System.Collections.Concurrent.xml", - "ref/netcore50/ja/System.Collections.Concurrent.xml", - "ref/netcore50/ko/System.Collections.Concurrent.xml", - "ref/netcore50/ru/System.Collections.Concurrent.xml", - "ref/netcore50/zh-hans/System.Collections.Concurrent.xml", - "ref/netcore50/zh-hant/System.Collections.Concurrent.xml", - "ref/netstandard1.1/System.Collections.Concurrent.dll", - "ref/netstandard1.1/System.Collections.Concurrent.xml", - "ref/netstandard1.1/de/System.Collections.Concurrent.xml", - "ref/netstandard1.1/es/System.Collections.Concurrent.xml", - "ref/netstandard1.1/fr/System.Collections.Concurrent.xml", - "ref/netstandard1.1/it/System.Collections.Concurrent.xml", - "ref/netstandard1.1/ja/System.Collections.Concurrent.xml", - "ref/netstandard1.1/ko/System.Collections.Concurrent.xml", - "ref/netstandard1.1/ru/System.Collections.Concurrent.xml", - "ref/netstandard1.1/zh-hans/System.Collections.Concurrent.xml", - "ref/netstandard1.1/zh-hant/System.Collections.Concurrent.xml", - "ref/netstandard1.3/System.Collections.Concurrent.dll", - "ref/netstandard1.3/System.Collections.Concurrent.xml", - "ref/netstandard1.3/de/System.Collections.Concurrent.xml", - "ref/netstandard1.3/es/System.Collections.Concurrent.xml", - "ref/netstandard1.3/fr/System.Collections.Concurrent.xml", - "ref/netstandard1.3/it/System.Collections.Concurrent.xml", - "ref/netstandard1.3/ja/System.Collections.Concurrent.xml", - "ref/netstandard1.3/ko/System.Collections.Concurrent.xml", - "ref/netstandard1.3/ru/System.Collections.Concurrent.xml", - "ref/netstandard1.3/zh-hans/System.Collections.Concurrent.xml", - "ref/netstandard1.3/zh-hant/System.Collections.Concurrent.xml", - "ref/portable-net45+win8+wpa81/_._", - "ref/win8/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.collections.concurrent.4.3.0.nupkg.sha512", - "system.collections.concurrent.nuspec" - ] - }, - "System.Console/4.3.0": { - "sha512": "DHDrIxiqk1h03m6khKWV2X8p/uvN79rgSqpilL6uzpmSfxfU5ng8VcPtW4qsDsQDHiTv6IPV9TmD5M/vElPNLg==", - "type": "package", - "path": "system.console/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Console.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Console.dll", - "ref/netstandard1.3/System.Console.dll", - "ref/netstandard1.3/System.Console.xml", - "ref/netstandard1.3/de/System.Console.xml", - "ref/netstandard1.3/es/System.Console.xml", - "ref/netstandard1.3/fr/System.Console.xml", - "ref/netstandard1.3/it/System.Console.xml", - "ref/netstandard1.3/ja/System.Console.xml", - "ref/netstandard1.3/ko/System.Console.xml", - "ref/netstandard1.3/ru/System.Console.xml", - "ref/netstandard1.3/zh-hans/System.Console.xml", - "ref/netstandard1.3/zh-hant/System.Console.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.console.4.3.0.nupkg.sha512", - "system.console.nuspec" - ] - }, - "System.Diagnostics.Debug/4.3.0": { - "sha512": "ZUhUOdqmaG5Jk3Xdb8xi5kIyQYAA4PnTNlHx1mu9ZY3qv4ELIdKbnL/akbGaKi2RnNUWaZsAs31rvzFdewTj2g==", - "type": "package", - "path": "system.diagnostics.debug/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Diagnostics.Debug.dll", - "ref/netcore50/System.Diagnostics.Debug.xml", - "ref/netcore50/de/System.Diagnostics.Debug.xml", - "ref/netcore50/es/System.Diagnostics.Debug.xml", - "ref/netcore50/fr/System.Diagnostics.Debug.xml", - "ref/netcore50/it/System.Diagnostics.Debug.xml", - "ref/netcore50/ja/System.Diagnostics.Debug.xml", - "ref/netcore50/ko/System.Diagnostics.Debug.xml", - "ref/netcore50/ru/System.Diagnostics.Debug.xml", - "ref/netcore50/zh-hans/System.Diagnostics.Debug.xml", - "ref/netcore50/zh-hant/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/System.Diagnostics.Debug.dll", - "ref/netstandard1.0/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/de/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/es/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/fr/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/it/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/ja/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/ko/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/ru/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/zh-hans/System.Diagnostics.Debug.xml", - "ref/netstandard1.0/zh-hant/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/System.Diagnostics.Debug.dll", - "ref/netstandard1.3/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/de/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/es/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/fr/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/it/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/ja/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/ko/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/ru/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/zh-hans/System.Diagnostics.Debug.xml", - "ref/netstandard1.3/zh-hant/System.Diagnostics.Debug.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.diagnostics.debug.4.3.0.nupkg.sha512", - "system.diagnostics.debug.nuspec" - ] - }, - "System.Diagnostics.DiagnosticSource/10.0.2": { - "sha512": "lYWBy8fKkJHaRcOuw30d67PrtVjR5754sz5Wl76s8P+vJ9FSThh9b7LIcTSODx1LY7NB3Srvg+JMnzd67qNZOw==", - "type": "package", - "path": "system.diagnostics.diagnosticsource/10.0.2", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Diagnostics.DiagnosticSource.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.Diagnostics.DiagnosticSource.targets", - "lib/net10.0/System.Diagnostics.DiagnosticSource.dll", - "lib/net10.0/System.Diagnostics.DiagnosticSource.xml", - "lib/net462/System.Diagnostics.DiagnosticSource.dll", - "lib/net462/System.Diagnostics.DiagnosticSource.xml", - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll", - "lib/net8.0/System.Diagnostics.DiagnosticSource.xml", - "lib/net9.0/System.Diagnostics.DiagnosticSource.dll", - "lib/net9.0/System.Diagnostics.DiagnosticSource.xml", - "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.dll", - "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.xml", - "system.diagnostics.diagnosticsource.10.0.2.nupkg.sha512", - "system.diagnostics.diagnosticsource.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Diagnostics.EventLog/6.0.0": { - "sha512": "lcyUiXTsETK2ALsZrX+nWuHSIQeazhqPphLfaRxzdGaG93+0kELqpgEHtwWOlQe7+jSFnKwaCAgL4kjeZCQJnw==", - "type": "package", - "path": "system.diagnostics.eventlog/6.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/netcoreapp2.0/System.Diagnostics.EventLog.targets", - "buildTransitive/netcoreapp3.1/_._", - "lib/net461/System.Diagnostics.EventLog.dll", - "lib/net461/System.Diagnostics.EventLog.xml", - "lib/net6.0/System.Diagnostics.EventLog.dll", - "lib/net6.0/System.Diagnostics.EventLog.xml", - "lib/netcoreapp3.1/System.Diagnostics.EventLog.dll", - "lib/netcoreapp3.1/System.Diagnostics.EventLog.xml", - "lib/netstandard2.0/System.Diagnostics.EventLog.dll", - "lib/netstandard2.0/System.Diagnostics.EventLog.xml", - "runtimes/win/lib/net6.0/System.Diagnostics.EventLog.Messages.dll", - "runtimes/win/lib/net6.0/System.Diagnostics.EventLog.dll", - "runtimes/win/lib/net6.0/System.Diagnostics.EventLog.xml", - "runtimes/win/lib/netcoreapp3.1/System.Diagnostics.EventLog.Messages.dll", - "runtimes/win/lib/netcoreapp3.1/System.Diagnostics.EventLog.dll", - "runtimes/win/lib/netcoreapp3.1/System.Diagnostics.EventLog.xml", - "system.diagnostics.eventlog.6.0.0.nupkg.sha512", - "system.diagnostics.eventlog.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Diagnostics.Tools/4.3.0": { - "sha512": "UUvkJfSYJMM6x527dJg2VyWPSRqIVB0Z7dbjHst1zmwTXz5CcXSYJFWRpuigfbO1Lf7yfZiIaEUesfnl/g5EyA==", - "type": "package", - "path": "system.diagnostics.tools/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Diagnostics.Tools.dll", - "ref/netcore50/System.Diagnostics.Tools.xml", - "ref/netcore50/de/System.Diagnostics.Tools.xml", - "ref/netcore50/es/System.Diagnostics.Tools.xml", - "ref/netcore50/fr/System.Diagnostics.Tools.xml", - "ref/netcore50/it/System.Diagnostics.Tools.xml", - "ref/netcore50/ja/System.Diagnostics.Tools.xml", - "ref/netcore50/ko/System.Diagnostics.Tools.xml", - "ref/netcore50/ru/System.Diagnostics.Tools.xml", - "ref/netcore50/zh-hans/System.Diagnostics.Tools.xml", - "ref/netcore50/zh-hant/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/System.Diagnostics.Tools.dll", - "ref/netstandard1.0/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/de/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/es/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/fr/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/it/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/ja/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/ko/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/ru/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/zh-hans/System.Diagnostics.Tools.xml", - "ref/netstandard1.0/zh-hant/System.Diagnostics.Tools.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.diagnostics.tools.4.3.0.nupkg.sha512", - "system.diagnostics.tools.nuspec" - ] - }, - "System.Diagnostics.Tracing/4.3.0": { - "sha512": "rswfv0f/Cqkh78rA5S8eN8Neocz234+emGCtTF3lxPY96F+mmmUen6tbn0glN6PMvlKQb9bPAY5e9u7fgPTkKw==", - "type": "package", - "path": "system.diagnostics.tracing/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net462/System.Diagnostics.Tracing.dll", - "lib/portable-net45+win8+wpa81/_._", - "lib/win8/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net462/System.Diagnostics.Tracing.dll", - "ref/netcore50/System.Diagnostics.Tracing.dll", - "ref/netcore50/System.Diagnostics.Tracing.xml", - "ref/netcore50/de/System.Diagnostics.Tracing.xml", - "ref/netcore50/es/System.Diagnostics.Tracing.xml", - "ref/netcore50/fr/System.Diagnostics.Tracing.xml", - "ref/netcore50/it/System.Diagnostics.Tracing.xml", - "ref/netcore50/ja/System.Diagnostics.Tracing.xml", - "ref/netcore50/ko/System.Diagnostics.Tracing.xml", - "ref/netcore50/ru/System.Diagnostics.Tracing.xml", - "ref/netcore50/zh-hans/System.Diagnostics.Tracing.xml", - "ref/netcore50/zh-hant/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/System.Diagnostics.Tracing.dll", - "ref/netstandard1.1/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/de/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/es/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/fr/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/it/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/ja/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/ko/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/ru/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/zh-hans/System.Diagnostics.Tracing.xml", - "ref/netstandard1.1/zh-hant/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/System.Diagnostics.Tracing.dll", - "ref/netstandard1.2/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/de/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/es/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/fr/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/it/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/ja/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/ko/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/ru/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/zh-hans/System.Diagnostics.Tracing.xml", - "ref/netstandard1.2/zh-hant/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/System.Diagnostics.Tracing.dll", - "ref/netstandard1.3/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/de/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/es/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/fr/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/it/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/ja/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/ko/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/ru/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/zh-hans/System.Diagnostics.Tracing.xml", - "ref/netstandard1.3/zh-hant/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/System.Diagnostics.Tracing.dll", - "ref/netstandard1.5/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/de/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/es/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/fr/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/it/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/ja/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/ko/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/ru/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/zh-hans/System.Diagnostics.Tracing.xml", - "ref/netstandard1.5/zh-hant/System.Diagnostics.Tracing.xml", - "ref/portable-net45+win8+wpa81/_._", - "ref/win8/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.diagnostics.tracing.4.3.0.nupkg.sha512", - "system.diagnostics.tracing.nuspec" - ] - }, - "System.Globalization/4.3.0": { - "sha512": "kYdVd2f2PAdFGblzFswE4hkNANJBKRmsfa2X5LG2AcWE1c7/4t0pYae1L8vfZ5xvE2nK/R9JprtToA61OSHWIg==", - "type": "package", - "path": "system.globalization/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Globalization.dll", - "ref/netcore50/System.Globalization.xml", - "ref/netcore50/de/System.Globalization.xml", - "ref/netcore50/es/System.Globalization.xml", - "ref/netcore50/fr/System.Globalization.xml", - "ref/netcore50/it/System.Globalization.xml", - "ref/netcore50/ja/System.Globalization.xml", - "ref/netcore50/ko/System.Globalization.xml", - "ref/netcore50/ru/System.Globalization.xml", - "ref/netcore50/zh-hans/System.Globalization.xml", - "ref/netcore50/zh-hant/System.Globalization.xml", - "ref/netstandard1.0/System.Globalization.dll", - "ref/netstandard1.0/System.Globalization.xml", - "ref/netstandard1.0/de/System.Globalization.xml", - "ref/netstandard1.0/es/System.Globalization.xml", - "ref/netstandard1.0/fr/System.Globalization.xml", - "ref/netstandard1.0/it/System.Globalization.xml", - "ref/netstandard1.0/ja/System.Globalization.xml", - "ref/netstandard1.0/ko/System.Globalization.xml", - "ref/netstandard1.0/ru/System.Globalization.xml", - "ref/netstandard1.0/zh-hans/System.Globalization.xml", - "ref/netstandard1.0/zh-hant/System.Globalization.xml", - "ref/netstandard1.3/System.Globalization.dll", - "ref/netstandard1.3/System.Globalization.xml", - "ref/netstandard1.3/de/System.Globalization.xml", - "ref/netstandard1.3/es/System.Globalization.xml", - "ref/netstandard1.3/fr/System.Globalization.xml", - "ref/netstandard1.3/it/System.Globalization.xml", - "ref/netstandard1.3/ja/System.Globalization.xml", - "ref/netstandard1.3/ko/System.Globalization.xml", - "ref/netstandard1.3/ru/System.Globalization.xml", - "ref/netstandard1.3/zh-hans/System.Globalization.xml", - "ref/netstandard1.3/zh-hant/System.Globalization.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.globalization.4.3.0.nupkg.sha512", - "system.globalization.nuspec" - ] - }, - "System.Globalization.Calendars/4.3.0": { - "sha512": "GUlBtdOWT4LTV3I+9/PJW+56AnnChTaOqqTLFtdmype/L500M2LIyXgmtd9X2P2VOkmJd5c67H5SaC2QcL1bFA==", - "type": "package", - "path": "system.globalization.calendars/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Globalization.Calendars.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Globalization.Calendars.dll", - "ref/netstandard1.3/System.Globalization.Calendars.dll", - "ref/netstandard1.3/System.Globalization.Calendars.xml", - "ref/netstandard1.3/de/System.Globalization.Calendars.xml", - "ref/netstandard1.3/es/System.Globalization.Calendars.xml", - "ref/netstandard1.3/fr/System.Globalization.Calendars.xml", - "ref/netstandard1.3/it/System.Globalization.Calendars.xml", - "ref/netstandard1.3/ja/System.Globalization.Calendars.xml", - "ref/netstandard1.3/ko/System.Globalization.Calendars.xml", - "ref/netstandard1.3/ru/System.Globalization.Calendars.xml", - "ref/netstandard1.3/zh-hans/System.Globalization.Calendars.xml", - "ref/netstandard1.3/zh-hant/System.Globalization.Calendars.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.globalization.calendars.4.3.0.nupkg.sha512", - "system.globalization.calendars.nuspec" - ] - }, - "System.Globalization.Extensions/4.3.0": { - "sha512": "FhKmdR6MPG+pxow6wGtNAWdZh7noIOpdD5TwQ3CprzgIE1bBBoim0vbR1+AWsWjQmU7zXHgQo4TWSP6lCeiWcQ==", - "type": "package", - "path": "system.globalization.extensions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Globalization.Extensions.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Globalization.Extensions.dll", - "ref/netstandard1.3/System.Globalization.Extensions.dll", - "ref/netstandard1.3/System.Globalization.Extensions.xml", - "ref/netstandard1.3/de/System.Globalization.Extensions.xml", - "ref/netstandard1.3/es/System.Globalization.Extensions.xml", - "ref/netstandard1.3/fr/System.Globalization.Extensions.xml", - "ref/netstandard1.3/it/System.Globalization.Extensions.xml", - "ref/netstandard1.3/ja/System.Globalization.Extensions.xml", - "ref/netstandard1.3/ko/System.Globalization.Extensions.xml", - "ref/netstandard1.3/ru/System.Globalization.Extensions.xml", - "ref/netstandard1.3/zh-hans/System.Globalization.Extensions.xml", - "ref/netstandard1.3/zh-hant/System.Globalization.Extensions.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/unix/lib/netstandard1.3/System.Globalization.Extensions.dll", - "runtimes/win/lib/net46/System.Globalization.Extensions.dll", - "runtimes/win/lib/netstandard1.3/System.Globalization.Extensions.dll", - "system.globalization.extensions.4.3.0.nupkg.sha512", - "system.globalization.extensions.nuspec" - ] - }, - "System.IdentityModel.Tokens.Jwt/8.14.0": { - "sha512": "EYGgN/S+HK7S6F3GaaPLFAfK0UzMrkXFyWCvXpQWFYmZln3dqtbyIO7VuTM/iIIPMzkelg8ZLlBPvMhxj6nOAA==", - "type": "package", - "path": "system.identitymodel.tokens.jwt/8.14.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "README.md", - "lib/net462/System.IdentityModel.Tokens.Jwt.dll", - "lib/net462/System.IdentityModel.Tokens.Jwt.xml", - "lib/net472/System.IdentityModel.Tokens.Jwt.dll", - "lib/net472/System.IdentityModel.Tokens.Jwt.xml", - "lib/net6.0/System.IdentityModel.Tokens.Jwt.dll", - "lib/net6.0/System.IdentityModel.Tokens.Jwt.xml", - "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll", - "lib/net8.0/System.IdentityModel.Tokens.Jwt.xml", - "lib/net9.0/System.IdentityModel.Tokens.Jwt.dll", - "lib/net9.0/System.IdentityModel.Tokens.Jwt.xml", - "lib/netstandard2.0/System.IdentityModel.Tokens.Jwt.dll", - "lib/netstandard2.0/System.IdentityModel.Tokens.Jwt.xml", - "system.identitymodel.tokens.jwt.8.14.0.nupkg.sha512", - "system.identitymodel.tokens.jwt.nuspec" - ] - }, - "System.IO/4.3.0": { - "sha512": "3qjaHvxQPDpSOYICjUoTsmoq5u6QJAFRUITgeT/4gqkF1bajbSmb1kwSxEA8AHlofqgcKJcM8udgieRNhaJ5Cg==", - "type": "package", - "path": "system.io/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net462/System.IO.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net462/System.IO.dll", - "ref/netcore50/System.IO.dll", - "ref/netcore50/System.IO.xml", - "ref/netcore50/de/System.IO.xml", - "ref/netcore50/es/System.IO.xml", - "ref/netcore50/fr/System.IO.xml", - "ref/netcore50/it/System.IO.xml", - "ref/netcore50/ja/System.IO.xml", - "ref/netcore50/ko/System.IO.xml", - "ref/netcore50/ru/System.IO.xml", - "ref/netcore50/zh-hans/System.IO.xml", - "ref/netcore50/zh-hant/System.IO.xml", - "ref/netstandard1.0/System.IO.dll", - "ref/netstandard1.0/System.IO.xml", - "ref/netstandard1.0/de/System.IO.xml", - "ref/netstandard1.0/es/System.IO.xml", - "ref/netstandard1.0/fr/System.IO.xml", - "ref/netstandard1.0/it/System.IO.xml", - "ref/netstandard1.0/ja/System.IO.xml", - "ref/netstandard1.0/ko/System.IO.xml", - "ref/netstandard1.0/ru/System.IO.xml", - "ref/netstandard1.0/zh-hans/System.IO.xml", - "ref/netstandard1.0/zh-hant/System.IO.xml", - "ref/netstandard1.3/System.IO.dll", - "ref/netstandard1.3/System.IO.xml", - "ref/netstandard1.3/de/System.IO.xml", - "ref/netstandard1.3/es/System.IO.xml", - "ref/netstandard1.3/fr/System.IO.xml", - "ref/netstandard1.3/it/System.IO.xml", - "ref/netstandard1.3/ja/System.IO.xml", - "ref/netstandard1.3/ko/System.IO.xml", - "ref/netstandard1.3/ru/System.IO.xml", - "ref/netstandard1.3/zh-hans/System.IO.xml", - "ref/netstandard1.3/zh-hant/System.IO.xml", - "ref/netstandard1.5/System.IO.dll", - "ref/netstandard1.5/System.IO.xml", - "ref/netstandard1.5/de/System.IO.xml", - "ref/netstandard1.5/es/System.IO.xml", - "ref/netstandard1.5/fr/System.IO.xml", - "ref/netstandard1.5/it/System.IO.xml", - "ref/netstandard1.5/ja/System.IO.xml", - "ref/netstandard1.5/ko/System.IO.xml", - "ref/netstandard1.5/ru/System.IO.xml", - "ref/netstandard1.5/zh-hans/System.IO.xml", - "ref/netstandard1.5/zh-hant/System.IO.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.io.4.3.0.nupkg.sha512", - "system.io.nuspec" - ] - }, - "System.IO.Compression/4.3.0": { - "sha512": "YHndyoiV90iu4iKG115ibkhrG+S3jBm8Ap9OwoUAzO5oPDAWcr0SFwQFm0HjM8WkEZWo0zvLTyLmbvTkW1bXgg==", - "type": "package", - "path": "system.io.compression/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net46/System.IO.Compression.dll", - "lib/portable-net45+win8+wpa81/_._", - "lib/win8/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net46/System.IO.Compression.dll", - "ref/netcore50/System.IO.Compression.dll", - "ref/netcore50/System.IO.Compression.xml", - "ref/netcore50/de/System.IO.Compression.xml", - "ref/netcore50/es/System.IO.Compression.xml", - "ref/netcore50/fr/System.IO.Compression.xml", - "ref/netcore50/it/System.IO.Compression.xml", - "ref/netcore50/ja/System.IO.Compression.xml", - "ref/netcore50/ko/System.IO.Compression.xml", - "ref/netcore50/ru/System.IO.Compression.xml", - "ref/netcore50/zh-hans/System.IO.Compression.xml", - "ref/netcore50/zh-hant/System.IO.Compression.xml", - "ref/netstandard1.1/System.IO.Compression.dll", - "ref/netstandard1.1/System.IO.Compression.xml", - "ref/netstandard1.1/de/System.IO.Compression.xml", - "ref/netstandard1.1/es/System.IO.Compression.xml", - "ref/netstandard1.1/fr/System.IO.Compression.xml", - "ref/netstandard1.1/it/System.IO.Compression.xml", - "ref/netstandard1.1/ja/System.IO.Compression.xml", - "ref/netstandard1.1/ko/System.IO.Compression.xml", - "ref/netstandard1.1/ru/System.IO.Compression.xml", - "ref/netstandard1.1/zh-hans/System.IO.Compression.xml", - "ref/netstandard1.1/zh-hant/System.IO.Compression.xml", - "ref/netstandard1.3/System.IO.Compression.dll", - "ref/netstandard1.3/System.IO.Compression.xml", - "ref/netstandard1.3/de/System.IO.Compression.xml", - "ref/netstandard1.3/es/System.IO.Compression.xml", - "ref/netstandard1.3/fr/System.IO.Compression.xml", - "ref/netstandard1.3/it/System.IO.Compression.xml", - "ref/netstandard1.3/ja/System.IO.Compression.xml", - "ref/netstandard1.3/ko/System.IO.Compression.xml", - "ref/netstandard1.3/ru/System.IO.Compression.xml", - "ref/netstandard1.3/zh-hans/System.IO.Compression.xml", - "ref/netstandard1.3/zh-hant/System.IO.Compression.xml", - "ref/portable-net45+win8+wpa81/_._", - "ref/win8/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/unix/lib/netstandard1.3/System.IO.Compression.dll", - "runtimes/win/lib/net46/System.IO.Compression.dll", - "runtimes/win/lib/netstandard1.3/System.IO.Compression.dll", - "system.io.compression.4.3.0.nupkg.sha512", - "system.io.compression.nuspec" - ] - }, - "System.IO.Compression.ZipFile/4.3.0": { - "sha512": "G4HwjEsgIwy3JFBduZ9quBkAu+eUwjIdJleuNSgmUojbH6O3mlvEIme+GHx/cLlTAPcrnnL7GqvB9pTlWRfhOg==", - "type": "package", - "path": "system.io.compression.zipfile/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.IO.Compression.ZipFile.dll", - "lib/netstandard1.3/System.IO.Compression.ZipFile.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.IO.Compression.ZipFile.dll", - "ref/netstandard1.3/System.IO.Compression.ZipFile.dll", - "ref/netstandard1.3/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/de/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/es/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/fr/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/it/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/ja/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/ko/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/ru/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/zh-hans/System.IO.Compression.ZipFile.xml", - "ref/netstandard1.3/zh-hant/System.IO.Compression.ZipFile.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.io.compression.zipfile.4.3.0.nupkg.sha512", - "system.io.compression.zipfile.nuspec" - ] - }, - "System.IO.FileSystem/4.3.0": { - "sha512": "3wEMARTnuio+ulnvi+hkRNROYwa1kylvYahhcLk4HSoVdl+xxTFVeVlYOfLwrDPImGls0mDqbMhrza8qnWPTdA==", - "type": "package", - "path": "system.io.filesystem/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.IO.FileSystem.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.IO.FileSystem.dll", - "ref/netstandard1.3/System.IO.FileSystem.dll", - "ref/netstandard1.3/System.IO.FileSystem.xml", - "ref/netstandard1.3/de/System.IO.FileSystem.xml", - "ref/netstandard1.3/es/System.IO.FileSystem.xml", - "ref/netstandard1.3/fr/System.IO.FileSystem.xml", - "ref/netstandard1.3/it/System.IO.FileSystem.xml", - "ref/netstandard1.3/ja/System.IO.FileSystem.xml", - "ref/netstandard1.3/ko/System.IO.FileSystem.xml", - "ref/netstandard1.3/ru/System.IO.FileSystem.xml", - "ref/netstandard1.3/zh-hans/System.IO.FileSystem.xml", - "ref/netstandard1.3/zh-hant/System.IO.FileSystem.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.io.filesystem.4.3.0.nupkg.sha512", - "system.io.filesystem.nuspec" - ] - }, - "System.IO.FileSystem.Primitives/4.3.0": { - "sha512": "6QOb2XFLch7bEc4lIcJH49nJN2HV+OC3fHDgsLVsBVBk3Y4hFAnOBGzJ2lUu7CyDDFo9IBWkSsnbkT6IBwwiMw==", - "type": "package", - "path": "system.io.filesystem.primitives/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.IO.FileSystem.Primitives.dll", - "lib/netstandard1.3/System.IO.FileSystem.Primitives.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.IO.FileSystem.Primitives.dll", - "ref/netstandard1.3/System.IO.FileSystem.Primitives.dll", - "ref/netstandard1.3/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/de/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/es/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/fr/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/it/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/ja/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/ko/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/ru/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/zh-hans/System.IO.FileSystem.Primitives.xml", - "ref/netstandard1.3/zh-hant/System.IO.FileSystem.Primitives.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.io.filesystem.primitives.4.3.0.nupkg.sha512", - "system.io.filesystem.primitives.nuspec" - ] - }, - "System.IO.Pipelines/8.0.0": { - "sha512": "FHNOatmUq0sqJOkTx+UF/9YK1f180cnW5FVqnQMvYUN0elp6wFzbtPSiqbo1/ru8ICp43JM1i7kKkk6GsNGHlA==", - "type": "package", - "path": "system.io.pipelines/8.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.IO.Pipelines.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.IO.Pipelines.targets", - "lib/net462/System.IO.Pipelines.dll", - "lib/net462/System.IO.Pipelines.xml", - "lib/net6.0/System.IO.Pipelines.dll", - "lib/net6.0/System.IO.Pipelines.xml", - "lib/net7.0/System.IO.Pipelines.dll", - "lib/net7.0/System.IO.Pipelines.xml", - "lib/net8.0/System.IO.Pipelines.dll", - "lib/net8.0/System.IO.Pipelines.xml", - "lib/netstandard2.0/System.IO.Pipelines.dll", - "lib/netstandard2.0/System.IO.Pipelines.xml", - "system.io.pipelines.8.0.0.nupkg.sha512", - "system.io.pipelines.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Linq/4.3.0": { - "sha512": "5DbqIUpsDp0dFftytzuMmc0oeMdQwjcP/EWxsksIz/w1TcFRkZ3yKKz0PqiYFMmEwPSWw+qNVqD7PJ889JzHbw==", - "type": "package", - "path": "system.linq/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net463/System.Linq.dll", - "lib/netcore50/System.Linq.dll", - "lib/netstandard1.6/System.Linq.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net463/System.Linq.dll", - "ref/netcore50/System.Linq.dll", - "ref/netcore50/System.Linq.xml", - "ref/netcore50/de/System.Linq.xml", - "ref/netcore50/es/System.Linq.xml", - "ref/netcore50/fr/System.Linq.xml", - "ref/netcore50/it/System.Linq.xml", - "ref/netcore50/ja/System.Linq.xml", - "ref/netcore50/ko/System.Linq.xml", - "ref/netcore50/ru/System.Linq.xml", - "ref/netcore50/zh-hans/System.Linq.xml", - "ref/netcore50/zh-hant/System.Linq.xml", - "ref/netstandard1.0/System.Linq.dll", - "ref/netstandard1.0/System.Linq.xml", - "ref/netstandard1.0/de/System.Linq.xml", - "ref/netstandard1.0/es/System.Linq.xml", - "ref/netstandard1.0/fr/System.Linq.xml", - "ref/netstandard1.0/it/System.Linq.xml", - "ref/netstandard1.0/ja/System.Linq.xml", - "ref/netstandard1.0/ko/System.Linq.xml", - "ref/netstandard1.0/ru/System.Linq.xml", - "ref/netstandard1.0/zh-hans/System.Linq.xml", - "ref/netstandard1.0/zh-hant/System.Linq.xml", - "ref/netstandard1.6/System.Linq.dll", - "ref/netstandard1.6/System.Linq.xml", - "ref/netstandard1.6/de/System.Linq.xml", - "ref/netstandard1.6/es/System.Linq.xml", - "ref/netstandard1.6/fr/System.Linq.xml", - "ref/netstandard1.6/it/System.Linq.xml", - "ref/netstandard1.6/ja/System.Linq.xml", - "ref/netstandard1.6/ko/System.Linq.xml", - "ref/netstandard1.6/ru/System.Linq.xml", - "ref/netstandard1.6/zh-hans/System.Linq.xml", - "ref/netstandard1.6/zh-hant/System.Linq.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.linq.4.3.0.nupkg.sha512", - "system.linq.nuspec" - ] - }, - "System.Linq.Expressions/4.3.0": { - "sha512": "PGKkrd2khG4CnlyJwxwwaWWiSiWFNBGlgXvJpeO0xCXrZ89ODrQ6tjEWS/kOqZ8GwEOUATtKtzp1eRgmYNfclg==", - "type": "package", - "path": "system.linq.expressions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net463/System.Linq.Expressions.dll", - "lib/netcore50/System.Linq.Expressions.dll", - "lib/netstandard1.6/System.Linq.Expressions.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net463/System.Linq.Expressions.dll", - "ref/netcore50/System.Linq.Expressions.dll", - "ref/netcore50/System.Linq.Expressions.xml", - "ref/netcore50/de/System.Linq.Expressions.xml", - "ref/netcore50/es/System.Linq.Expressions.xml", - "ref/netcore50/fr/System.Linq.Expressions.xml", - "ref/netcore50/it/System.Linq.Expressions.xml", - "ref/netcore50/ja/System.Linq.Expressions.xml", - "ref/netcore50/ko/System.Linq.Expressions.xml", - "ref/netcore50/ru/System.Linq.Expressions.xml", - "ref/netcore50/zh-hans/System.Linq.Expressions.xml", - "ref/netcore50/zh-hant/System.Linq.Expressions.xml", - "ref/netstandard1.0/System.Linq.Expressions.dll", - "ref/netstandard1.0/System.Linq.Expressions.xml", - "ref/netstandard1.0/de/System.Linq.Expressions.xml", - "ref/netstandard1.0/es/System.Linq.Expressions.xml", - "ref/netstandard1.0/fr/System.Linq.Expressions.xml", - "ref/netstandard1.0/it/System.Linq.Expressions.xml", - "ref/netstandard1.0/ja/System.Linq.Expressions.xml", - "ref/netstandard1.0/ko/System.Linq.Expressions.xml", - "ref/netstandard1.0/ru/System.Linq.Expressions.xml", - "ref/netstandard1.0/zh-hans/System.Linq.Expressions.xml", - "ref/netstandard1.0/zh-hant/System.Linq.Expressions.xml", - "ref/netstandard1.3/System.Linq.Expressions.dll", - "ref/netstandard1.3/System.Linq.Expressions.xml", - "ref/netstandard1.3/de/System.Linq.Expressions.xml", - "ref/netstandard1.3/es/System.Linq.Expressions.xml", - "ref/netstandard1.3/fr/System.Linq.Expressions.xml", - "ref/netstandard1.3/it/System.Linq.Expressions.xml", - "ref/netstandard1.3/ja/System.Linq.Expressions.xml", - "ref/netstandard1.3/ko/System.Linq.Expressions.xml", - "ref/netstandard1.3/ru/System.Linq.Expressions.xml", - "ref/netstandard1.3/zh-hans/System.Linq.Expressions.xml", - "ref/netstandard1.3/zh-hant/System.Linq.Expressions.xml", - "ref/netstandard1.6/System.Linq.Expressions.dll", - "ref/netstandard1.6/System.Linq.Expressions.xml", - "ref/netstandard1.6/de/System.Linq.Expressions.xml", - "ref/netstandard1.6/es/System.Linq.Expressions.xml", - "ref/netstandard1.6/fr/System.Linq.Expressions.xml", - "ref/netstandard1.6/it/System.Linq.Expressions.xml", - "ref/netstandard1.6/ja/System.Linq.Expressions.xml", - "ref/netstandard1.6/ko/System.Linq.Expressions.xml", - "ref/netstandard1.6/ru/System.Linq.Expressions.xml", - "ref/netstandard1.6/zh-hans/System.Linq.Expressions.xml", - "ref/netstandard1.6/zh-hant/System.Linq.Expressions.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/System.Linq.Expressions.dll", - "system.linq.expressions.4.3.0.nupkg.sha512", - "system.linq.expressions.nuspec" - ] - }, - "System.Net.Http/4.3.0": { - "sha512": "sYg+FtILtRQuYWSIAuNOELwVuVsxVyJGWQyOnlAzhV4xvhyFnON1bAzYYC+jjRW8JREM45R0R5Dgi8MTC5sEwA==", - "type": "package", - "path": "system.net.http/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/Xamarinmac20/_._", - "lib/monoandroid10/_._", - "lib/monotouch10/_._", - "lib/net45/_._", - "lib/net46/System.Net.Http.dll", - "lib/portable-net45+win8+wpa81/_._", - "lib/win8/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/Xamarinmac20/_._", - "ref/monoandroid10/_._", - "ref/monotouch10/_._", - "ref/net45/_._", - "ref/net46/System.Net.Http.dll", - "ref/net46/System.Net.Http.xml", - "ref/net46/de/System.Net.Http.xml", - "ref/net46/es/System.Net.Http.xml", - "ref/net46/fr/System.Net.Http.xml", - "ref/net46/it/System.Net.Http.xml", - "ref/net46/ja/System.Net.Http.xml", - "ref/net46/ko/System.Net.Http.xml", - "ref/net46/ru/System.Net.Http.xml", - "ref/net46/zh-hans/System.Net.Http.xml", - "ref/net46/zh-hant/System.Net.Http.xml", - "ref/netcore50/System.Net.Http.dll", - "ref/netcore50/System.Net.Http.xml", - "ref/netcore50/de/System.Net.Http.xml", - "ref/netcore50/es/System.Net.Http.xml", - "ref/netcore50/fr/System.Net.Http.xml", - "ref/netcore50/it/System.Net.Http.xml", - "ref/netcore50/ja/System.Net.Http.xml", - "ref/netcore50/ko/System.Net.Http.xml", - "ref/netcore50/ru/System.Net.Http.xml", - "ref/netcore50/zh-hans/System.Net.Http.xml", - "ref/netcore50/zh-hant/System.Net.Http.xml", - "ref/netstandard1.1/System.Net.Http.dll", - "ref/netstandard1.1/System.Net.Http.xml", - "ref/netstandard1.1/de/System.Net.Http.xml", - "ref/netstandard1.1/es/System.Net.Http.xml", - "ref/netstandard1.1/fr/System.Net.Http.xml", - "ref/netstandard1.1/it/System.Net.Http.xml", - "ref/netstandard1.1/ja/System.Net.Http.xml", - "ref/netstandard1.1/ko/System.Net.Http.xml", - "ref/netstandard1.1/ru/System.Net.Http.xml", - "ref/netstandard1.1/zh-hans/System.Net.Http.xml", - "ref/netstandard1.1/zh-hant/System.Net.Http.xml", - "ref/netstandard1.3/System.Net.Http.dll", - "ref/netstandard1.3/System.Net.Http.xml", - "ref/netstandard1.3/de/System.Net.Http.xml", - "ref/netstandard1.3/es/System.Net.Http.xml", - "ref/netstandard1.3/fr/System.Net.Http.xml", - "ref/netstandard1.3/it/System.Net.Http.xml", - "ref/netstandard1.3/ja/System.Net.Http.xml", - "ref/netstandard1.3/ko/System.Net.Http.xml", - "ref/netstandard1.3/ru/System.Net.Http.xml", - "ref/netstandard1.3/zh-hans/System.Net.Http.xml", - "ref/netstandard1.3/zh-hant/System.Net.Http.xml", - "ref/portable-net45+win8+wpa81/_._", - "ref/win8/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/unix/lib/netstandard1.6/System.Net.Http.dll", - "runtimes/win/lib/net46/System.Net.Http.dll", - "runtimes/win/lib/netcore50/System.Net.Http.dll", - "runtimes/win/lib/netstandard1.3/System.Net.Http.dll", - "system.net.http.4.3.0.nupkg.sha512", - "system.net.http.nuspec" - ] - }, - "System.Net.Primitives/4.3.0": { - "sha512": "qOu+hDwFwoZPbzPvwut2qATe3ygjeQBDQj91xlsaqGFQUI5i4ZnZb8yyQuLGpDGivEPIt8EJkd1BVzVoP31FXA==", - "type": "package", - "path": "system.net.primitives/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Net.Primitives.dll", - "ref/netcore50/System.Net.Primitives.xml", - "ref/netcore50/de/System.Net.Primitives.xml", - "ref/netcore50/es/System.Net.Primitives.xml", - "ref/netcore50/fr/System.Net.Primitives.xml", - "ref/netcore50/it/System.Net.Primitives.xml", - "ref/netcore50/ja/System.Net.Primitives.xml", - "ref/netcore50/ko/System.Net.Primitives.xml", - "ref/netcore50/ru/System.Net.Primitives.xml", - "ref/netcore50/zh-hans/System.Net.Primitives.xml", - "ref/netcore50/zh-hant/System.Net.Primitives.xml", - "ref/netstandard1.0/System.Net.Primitives.dll", - "ref/netstandard1.0/System.Net.Primitives.xml", - "ref/netstandard1.0/de/System.Net.Primitives.xml", - "ref/netstandard1.0/es/System.Net.Primitives.xml", - "ref/netstandard1.0/fr/System.Net.Primitives.xml", - "ref/netstandard1.0/it/System.Net.Primitives.xml", - "ref/netstandard1.0/ja/System.Net.Primitives.xml", - "ref/netstandard1.0/ko/System.Net.Primitives.xml", - "ref/netstandard1.0/ru/System.Net.Primitives.xml", - "ref/netstandard1.0/zh-hans/System.Net.Primitives.xml", - "ref/netstandard1.0/zh-hant/System.Net.Primitives.xml", - "ref/netstandard1.1/System.Net.Primitives.dll", - "ref/netstandard1.1/System.Net.Primitives.xml", - "ref/netstandard1.1/de/System.Net.Primitives.xml", - "ref/netstandard1.1/es/System.Net.Primitives.xml", - "ref/netstandard1.1/fr/System.Net.Primitives.xml", - "ref/netstandard1.1/it/System.Net.Primitives.xml", - "ref/netstandard1.1/ja/System.Net.Primitives.xml", - "ref/netstandard1.1/ko/System.Net.Primitives.xml", - "ref/netstandard1.1/ru/System.Net.Primitives.xml", - "ref/netstandard1.1/zh-hans/System.Net.Primitives.xml", - "ref/netstandard1.1/zh-hant/System.Net.Primitives.xml", - "ref/netstandard1.3/System.Net.Primitives.dll", - "ref/netstandard1.3/System.Net.Primitives.xml", - "ref/netstandard1.3/de/System.Net.Primitives.xml", - "ref/netstandard1.3/es/System.Net.Primitives.xml", - "ref/netstandard1.3/fr/System.Net.Primitives.xml", - "ref/netstandard1.3/it/System.Net.Primitives.xml", - "ref/netstandard1.3/ja/System.Net.Primitives.xml", - "ref/netstandard1.3/ko/System.Net.Primitives.xml", - "ref/netstandard1.3/ru/System.Net.Primitives.xml", - "ref/netstandard1.3/zh-hans/System.Net.Primitives.xml", - "ref/netstandard1.3/zh-hant/System.Net.Primitives.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.net.primitives.4.3.0.nupkg.sha512", - "system.net.primitives.nuspec" - ] - }, - "System.Net.Sockets/4.3.0": { - "sha512": "m6icV6TqQOAdgt5N/9I5KNpjom/5NFtkmGseEH+AK/hny8XrytLH3+b5M8zL/Ycg3fhIocFpUMyl/wpFnVRvdw==", - "type": "package", - "path": "system.net.sockets/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Net.Sockets.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Net.Sockets.dll", - "ref/netstandard1.3/System.Net.Sockets.dll", - "ref/netstandard1.3/System.Net.Sockets.xml", - "ref/netstandard1.3/de/System.Net.Sockets.xml", - "ref/netstandard1.3/es/System.Net.Sockets.xml", - "ref/netstandard1.3/fr/System.Net.Sockets.xml", - "ref/netstandard1.3/it/System.Net.Sockets.xml", - "ref/netstandard1.3/ja/System.Net.Sockets.xml", - "ref/netstandard1.3/ko/System.Net.Sockets.xml", - "ref/netstandard1.3/ru/System.Net.Sockets.xml", - "ref/netstandard1.3/zh-hans/System.Net.Sockets.xml", - "ref/netstandard1.3/zh-hant/System.Net.Sockets.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.net.sockets.4.3.0.nupkg.sha512", - "system.net.sockets.nuspec" - ] - }, - "System.Net.WebSockets.WebSocketProtocol/5.1.0": { - "sha512": "cVTT/Zw4JuUeX8H0tdWii0OMHsA5MY2PaFYOq/Hstw0jk479jZ+f8baCicWFNzJlCPWAe0uoNCELoB5eNmaMqA==", - "type": "package", - "path": "system.net.websockets.websocketprotocol/5.1.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "buildTransitive/net461/System.Net.WebSockets.WebSocketProtocol.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.Net.WebSockets.WebSocketProtocol.targets", - "lib/net462/System.Net.WebSockets.WebSocketProtocol.dll", - "lib/net462/System.Net.WebSockets.WebSocketProtocol.xml", - "lib/net6.0/System.Net.WebSockets.WebSocketProtocol.dll", - "lib/net6.0/System.Net.WebSockets.WebSocketProtocol.xml", - "lib/netstandard2.0/System.Net.WebSockets.WebSocketProtocol.dll", - "lib/netstandard2.0/System.Net.WebSockets.WebSocketProtocol.xml", - "system.net.websockets.websocketprotocol.5.1.0.nupkg.sha512", - "system.net.websockets.websocketprotocol.nuspec" - ] - }, - "System.ObjectModel/4.3.0": { - "sha512": "bdX+80eKv9bN6K4N+d77OankKHGn6CH711a6fcOpMQu2Fckp/Ft4L/kW9WznHpyR0NRAvJutzOMHNNlBGvxQzQ==", - "type": "package", - "path": "system.objectmodel/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.ObjectModel.dll", - "lib/netstandard1.3/System.ObjectModel.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.ObjectModel.dll", - "ref/netcore50/System.ObjectModel.xml", - "ref/netcore50/de/System.ObjectModel.xml", - "ref/netcore50/es/System.ObjectModel.xml", - "ref/netcore50/fr/System.ObjectModel.xml", - "ref/netcore50/it/System.ObjectModel.xml", - "ref/netcore50/ja/System.ObjectModel.xml", - "ref/netcore50/ko/System.ObjectModel.xml", - "ref/netcore50/ru/System.ObjectModel.xml", - "ref/netcore50/zh-hans/System.ObjectModel.xml", - "ref/netcore50/zh-hant/System.ObjectModel.xml", - "ref/netstandard1.0/System.ObjectModel.dll", - "ref/netstandard1.0/System.ObjectModel.xml", - "ref/netstandard1.0/de/System.ObjectModel.xml", - "ref/netstandard1.0/es/System.ObjectModel.xml", - "ref/netstandard1.0/fr/System.ObjectModel.xml", - "ref/netstandard1.0/it/System.ObjectModel.xml", - "ref/netstandard1.0/ja/System.ObjectModel.xml", - "ref/netstandard1.0/ko/System.ObjectModel.xml", - "ref/netstandard1.0/ru/System.ObjectModel.xml", - "ref/netstandard1.0/zh-hans/System.ObjectModel.xml", - "ref/netstandard1.0/zh-hant/System.ObjectModel.xml", - "ref/netstandard1.3/System.ObjectModel.dll", - "ref/netstandard1.3/System.ObjectModel.xml", - "ref/netstandard1.3/de/System.ObjectModel.xml", - "ref/netstandard1.3/es/System.ObjectModel.xml", - "ref/netstandard1.3/fr/System.ObjectModel.xml", - "ref/netstandard1.3/it/System.ObjectModel.xml", - "ref/netstandard1.3/ja/System.ObjectModel.xml", - "ref/netstandard1.3/ko/System.ObjectModel.xml", - "ref/netstandard1.3/ru/System.ObjectModel.xml", - "ref/netstandard1.3/zh-hans/System.ObjectModel.xml", - "ref/netstandard1.3/zh-hant/System.ObjectModel.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.objectmodel.4.3.0.nupkg.sha512", - "system.objectmodel.nuspec" - ] - }, - "System.Reflection/4.3.0": { - "sha512": "KMiAFoW7MfJGa9nDFNcfu+FpEdiHpWgTcS2HdMpDvt9saK3y/G4GwprPyzqjFH9NTaGPQeWNHU+iDlDILj96aQ==", - "type": "package", - "path": "system.reflection/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net462/System.Reflection.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net462/System.Reflection.dll", - "ref/netcore50/System.Reflection.dll", - "ref/netcore50/System.Reflection.xml", - "ref/netcore50/de/System.Reflection.xml", - "ref/netcore50/es/System.Reflection.xml", - "ref/netcore50/fr/System.Reflection.xml", - "ref/netcore50/it/System.Reflection.xml", - "ref/netcore50/ja/System.Reflection.xml", - "ref/netcore50/ko/System.Reflection.xml", - "ref/netcore50/ru/System.Reflection.xml", - "ref/netcore50/zh-hans/System.Reflection.xml", - "ref/netcore50/zh-hant/System.Reflection.xml", - "ref/netstandard1.0/System.Reflection.dll", - "ref/netstandard1.0/System.Reflection.xml", - "ref/netstandard1.0/de/System.Reflection.xml", - "ref/netstandard1.0/es/System.Reflection.xml", - "ref/netstandard1.0/fr/System.Reflection.xml", - "ref/netstandard1.0/it/System.Reflection.xml", - "ref/netstandard1.0/ja/System.Reflection.xml", - "ref/netstandard1.0/ko/System.Reflection.xml", - "ref/netstandard1.0/ru/System.Reflection.xml", - "ref/netstandard1.0/zh-hans/System.Reflection.xml", - "ref/netstandard1.0/zh-hant/System.Reflection.xml", - "ref/netstandard1.3/System.Reflection.dll", - "ref/netstandard1.3/System.Reflection.xml", - "ref/netstandard1.3/de/System.Reflection.xml", - "ref/netstandard1.3/es/System.Reflection.xml", - "ref/netstandard1.3/fr/System.Reflection.xml", - "ref/netstandard1.3/it/System.Reflection.xml", - "ref/netstandard1.3/ja/System.Reflection.xml", - "ref/netstandard1.3/ko/System.Reflection.xml", - "ref/netstandard1.3/ru/System.Reflection.xml", - "ref/netstandard1.3/zh-hans/System.Reflection.xml", - "ref/netstandard1.3/zh-hant/System.Reflection.xml", - "ref/netstandard1.5/System.Reflection.dll", - "ref/netstandard1.5/System.Reflection.xml", - "ref/netstandard1.5/de/System.Reflection.xml", - "ref/netstandard1.5/es/System.Reflection.xml", - "ref/netstandard1.5/fr/System.Reflection.xml", - "ref/netstandard1.5/it/System.Reflection.xml", - "ref/netstandard1.5/ja/System.Reflection.xml", - "ref/netstandard1.5/ko/System.Reflection.xml", - "ref/netstandard1.5/ru/System.Reflection.xml", - "ref/netstandard1.5/zh-hans/System.Reflection.xml", - "ref/netstandard1.5/zh-hant/System.Reflection.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.reflection.4.3.0.nupkg.sha512", - "system.reflection.nuspec" - ] - }, - "System.Reflection.Emit/4.7.0": { - "sha512": "VR4kk8XLKebQ4MZuKuIni/7oh+QGFmZW3qORd1GvBq/8026OpW501SzT/oypwiQl4TvT8ErnReh/NzY9u+C6wQ==", - "type": "package", - "path": "system.reflection.emit/4.7.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Reflection.Emit.dll", - "lib/netcoreapp2.0/_._", - "lib/netstandard1.1/System.Reflection.Emit.dll", - "lib/netstandard1.1/System.Reflection.Emit.xml", - "lib/netstandard1.3/System.Reflection.Emit.dll", - "lib/netstandard2.0/System.Reflection.Emit.dll", - "lib/netstandard2.0/System.Reflection.Emit.xml", - "lib/netstandard2.1/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcoreapp2.0/_._", - "ref/netstandard1.1/System.Reflection.Emit.dll", - "ref/netstandard1.1/System.Reflection.Emit.xml", - "ref/netstandard1.1/de/System.Reflection.Emit.xml", - "ref/netstandard1.1/es/System.Reflection.Emit.xml", - "ref/netstandard1.1/fr/System.Reflection.Emit.xml", - "ref/netstandard1.1/it/System.Reflection.Emit.xml", - "ref/netstandard1.1/ja/System.Reflection.Emit.xml", - "ref/netstandard1.1/ko/System.Reflection.Emit.xml", - "ref/netstandard1.1/ru/System.Reflection.Emit.xml", - "ref/netstandard1.1/zh-hans/System.Reflection.Emit.xml", - "ref/netstandard1.1/zh-hant/System.Reflection.Emit.xml", - "ref/netstandard2.0/System.Reflection.Emit.dll", - "ref/netstandard2.0/System.Reflection.Emit.xml", - "ref/netstandard2.1/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/System.Reflection.Emit.dll", - "runtimes/aot/lib/netcore50/System.Reflection.Emit.xml", - "system.reflection.emit.4.7.0.nupkg.sha512", - "system.reflection.emit.nuspec", - "useSharedDesignerContext.txt", - "version.txt" - ] - }, - "System.Reflection.Emit.ILGeneration/4.3.0": { - "sha512": "59tBslAk9733NXLrUJrwNZEzbMAcu8k344OYo+wfSVygcgZ9lgBdGIzH/nrg3LYhXceynyvTc8t5/GD4Ri0/ng==", - "type": "package", - "path": "system.reflection.emit.ilgeneration/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Reflection.Emit.ILGeneration.dll", - "lib/netstandard1.3/System.Reflection.Emit.ILGeneration.dll", - "lib/portable-net45+wp8/_._", - "lib/wp80/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netstandard1.0/System.Reflection.Emit.ILGeneration.dll", - "ref/netstandard1.0/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/de/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/es/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/fr/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/it/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/ja/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/ko/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/ru/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/zh-hans/System.Reflection.Emit.ILGeneration.xml", - "ref/netstandard1.0/zh-hant/System.Reflection.Emit.ILGeneration.xml", - "ref/portable-net45+wp8/_._", - "ref/wp80/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/_._", - "system.reflection.emit.ilgeneration.4.3.0.nupkg.sha512", - "system.reflection.emit.ilgeneration.nuspec" - ] - }, - "System.Reflection.Emit.Lightweight/4.3.0": { - "sha512": "oadVHGSMsTmZsAF864QYN1t1QzZjIcuKU3l2S9cZOwDdDueNTrqq1yRj7koFfIGEnKpt6NjpL3rOzRhs4ryOgA==", - "type": "package", - "path": "system.reflection.emit.lightweight/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Reflection.Emit.Lightweight.dll", - "lib/netstandard1.3/System.Reflection.Emit.Lightweight.dll", - "lib/portable-net45+wp8/_._", - "lib/wp80/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netstandard1.0/System.Reflection.Emit.Lightweight.dll", - "ref/netstandard1.0/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/de/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/es/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/fr/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/it/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/ja/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/ko/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/ru/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/zh-hans/System.Reflection.Emit.Lightweight.xml", - "ref/netstandard1.0/zh-hant/System.Reflection.Emit.Lightweight.xml", - "ref/portable-net45+wp8/_._", - "ref/wp80/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/_._", - "system.reflection.emit.lightweight.4.3.0.nupkg.sha512", - "system.reflection.emit.lightweight.nuspec" - ] - }, - "System.Reflection.Extensions/4.3.0": { - "sha512": "rJkrJD3kBI5B712aRu4DpSIiHRtr6QlfZSQsb0hYHrDCZORXCFjQfoipo2LaMUHoT9i1B7j7MnfaEKWDFmFQNQ==", - "type": "package", - "path": "system.reflection.extensions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Reflection.Extensions.dll", - "ref/netcore50/System.Reflection.Extensions.xml", - "ref/netcore50/de/System.Reflection.Extensions.xml", - "ref/netcore50/es/System.Reflection.Extensions.xml", - "ref/netcore50/fr/System.Reflection.Extensions.xml", - "ref/netcore50/it/System.Reflection.Extensions.xml", - "ref/netcore50/ja/System.Reflection.Extensions.xml", - "ref/netcore50/ko/System.Reflection.Extensions.xml", - "ref/netcore50/ru/System.Reflection.Extensions.xml", - "ref/netcore50/zh-hans/System.Reflection.Extensions.xml", - "ref/netcore50/zh-hant/System.Reflection.Extensions.xml", - "ref/netstandard1.0/System.Reflection.Extensions.dll", - "ref/netstandard1.0/System.Reflection.Extensions.xml", - "ref/netstandard1.0/de/System.Reflection.Extensions.xml", - "ref/netstandard1.0/es/System.Reflection.Extensions.xml", - "ref/netstandard1.0/fr/System.Reflection.Extensions.xml", - "ref/netstandard1.0/it/System.Reflection.Extensions.xml", - "ref/netstandard1.0/ja/System.Reflection.Extensions.xml", - "ref/netstandard1.0/ko/System.Reflection.Extensions.xml", - "ref/netstandard1.0/ru/System.Reflection.Extensions.xml", - "ref/netstandard1.0/zh-hans/System.Reflection.Extensions.xml", - "ref/netstandard1.0/zh-hant/System.Reflection.Extensions.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.reflection.extensions.4.3.0.nupkg.sha512", - "system.reflection.extensions.nuspec" - ] - }, - "System.Reflection.Metadata/1.6.0": { - "sha512": "COC1aiAJjCoA5GBF+QKL2uLqEBew4JsCkQmoHKbN3TlOZKa2fKLz5CpiRQKDz0RsAOEGsVKqOD5bomsXq/4STQ==", - "type": "package", - "path": "system.reflection.metadata/1.6.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "lib/netstandard1.1/System.Reflection.Metadata.dll", - "lib/netstandard1.1/System.Reflection.Metadata.xml", - "lib/netstandard2.0/System.Reflection.Metadata.dll", - "lib/netstandard2.0/System.Reflection.Metadata.xml", - "lib/portable-net45+win8/System.Reflection.Metadata.dll", - "lib/portable-net45+win8/System.Reflection.Metadata.xml", - "system.reflection.metadata.1.6.0.nupkg.sha512", - "system.reflection.metadata.nuspec", - "useSharedDesignerContext.txt", - "version.txt" - ] - }, - "System.Reflection.Primitives/4.3.0": { - "sha512": "5RXItQz5As4xN2/YUDxdpsEkMhvw3e6aNveFXUn4Hl/udNTCNhnKp8lT9fnc3MhvGKh1baak5CovpuQUXHAlIA==", - "type": "package", - "path": "system.reflection.primitives/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Reflection.Primitives.dll", - "ref/netcore50/System.Reflection.Primitives.xml", - "ref/netcore50/de/System.Reflection.Primitives.xml", - "ref/netcore50/es/System.Reflection.Primitives.xml", - "ref/netcore50/fr/System.Reflection.Primitives.xml", - "ref/netcore50/it/System.Reflection.Primitives.xml", - "ref/netcore50/ja/System.Reflection.Primitives.xml", - "ref/netcore50/ko/System.Reflection.Primitives.xml", - "ref/netcore50/ru/System.Reflection.Primitives.xml", - "ref/netcore50/zh-hans/System.Reflection.Primitives.xml", - "ref/netcore50/zh-hant/System.Reflection.Primitives.xml", - "ref/netstandard1.0/System.Reflection.Primitives.dll", - "ref/netstandard1.0/System.Reflection.Primitives.xml", - "ref/netstandard1.0/de/System.Reflection.Primitives.xml", - "ref/netstandard1.0/es/System.Reflection.Primitives.xml", - "ref/netstandard1.0/fr/System.Reflection.Primitives.xml", - "ref/netstandard1.0/it/System.Reflection.Primitives.xml", - "ref/netstandard1.0/ja/System.Reflection.Primitives.xml", - "ref/netstandard1.0/ko/System.Reflection.Primitives.xml", - "ref/netstandard1.0/ru/System.Reflection.Primitives.xml", - "ref/netstandard1.0/zh-hans/System.Reflection.Primitives.xml", - "ref/netstandard1.0/zh-hant/System.Reflection.Primitives.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.reflection.primitives.4.3.0.nupkg.sha512", - "system.reflection.primitives.nuspec" - ] - }, - "System.Reflection.TypeExtensions/4.3.0": { - "sha512": "7u6ulLcZbyxB5Gq0nMkQttcdBTx57ibzw+4IOXEfR+sXYQoHvjW5LTLyNr8O22UIMrqYbchJQJnos4eooYzYJA==", - "type": "package", - "path": "system.reflection.typeextensions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Reflection.TypeExtensions.dll", - "lib/net462/System.Reflection.TypeExtensions.dll", - "lib/netcore50/System.Reflection.TypeExtensions.dll", - "lib/netstandard1.5/System.Reflection.TypeExtensions.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Reflection.TypeExtensions.dll", - "ref/net462/System.Reflection.TypeExtensions.dll", - "ref/netstandard1.3/System.Reflection.TypeExtensions.dll", - "ref/netstandard1.3/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/de/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/es/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/fr/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/it/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/ja/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/ko/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/ru/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/zh-hans/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.3/zh-hant/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/System.Reflection.TypeExtensions.dll", - "ref/netstandard1.5/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/de/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/es/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/fr/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/it/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/ja/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/ko/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/ru/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/zh-hans/System.Reflection.TypeExtensions.xml", - "ref/netstandard1.5/zh-hant/System.Reflection.TypeExtensions.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/System.Reflection.TypeExtensions.dll", - "system.reflection.typeextensions.4.3.0.nupkg.sha512", - "system.reflection.typeextensions.nuspec" - ] - }, - "System.Resources.ResourceManager/4.3.0": { - "sha512": "/zrcPkkWdZmI4F92gL/TPumP98AVDu/Wxr3CSJGQQ+XN6wbRZcyfSKVoPo17ilb3iOr0cCRqJInGwNMolqhS8A==", - "type": "package", - "path": "system.resources.resourcemanager/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Resources.ResourceManager.dll", - "ref/netcore50/System.Resources.ResourceManager.xml", - "ref/netcore50/de/System.Resources.ResourceManager.xml", - "ref/netcore50/es/System.Resources.ResourceManager.xml", - "ref/netcore50/fr/System.Resources.ResourceManager.xml", - "ref/netcore50/it/System.Resources.ResourceManager.xml", - "ref/netcore50/ja/System.Resources.ResourceManager.xml", - "ref/netcore50/ko/System.Resources.ResourceManager.xml", - "ref/netcore50/ru/System.Resources.ResourceManager.xml", - "ref/netcore50/zh-hans/System.Resources.ResourceManager.xml", - "ref/netcore50/zh-hant/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/System.Resources.ResourceManager.dll", - "ref/netstandard1.0/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/de/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/es/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/fr/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/it/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/ja/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/ko/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/ru/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/zh-hans/System.Resources.ResourceManager.xml", - "ref/netstandard1.0/zh-hant/System.Resources.ResourceManager.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.resources.resourcemanager.4.3.0.nupkg.sha512", - "system.resources.resourcemanager.nuspec" - ] - }, - "System.Runtime/4.3.0": { - "sha512": "JufQi0vPQ0xGnAczR13AUFglDyVYt4Kqnz1AZaiKZ5+GICq0/1MH/mO/eAJHt/mHW1zjKBJd7kV26SrxddAhiw==", - "type": "package", - "path": "system.runtime/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net462/System.Runtime.dll", - "lib/portable-net45+win8+wp80+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net462/System.Runtime.dll", - "ref/netcore50/System.Runtime.dll", - "ref/netcore50/System.Runtime.xml", - "ref/netcore50/de/System.Runtime.xml", - "ref/netcore50/es/System.Runtime.xml", - "ref/netcore50/fr/System.Runtime.xml", - "ref/netcore50/it/System.Runtime.xml", - "ref/netcore50/ja/System.Runtime.xml", - "ref/netcore50/ko/System.Runtime.xml", - "ref/netcore50/ru/System.Runtime.xml", - "ref/netcore50/zh-hans/System.Runtime.xml", - "ref/netcore50/zh-hant/System.Runtime.xml", - "ref/netstandard1.0/System.Runtime.dll", - "ref/netstandard1.0/System.Runtime.xml", - "ref/netstandard1.0/de/System.Runtime.xml", - "ref/netstandard1.0/es/System.Runtime.xml", - "ref/netstandard1.0/fr/System.Runtime.xml", - "ref/netstandard1.0/it/System.Runtime.xml", - "ref/netstandard1.0/ja/System.Runtime.xml", - "ref/netstandard1.0/ko/System.Runtime.xml", - "ref/netstandard1.0/ru/System.Runtime.xml", - "ref/netstandard1.0/zh-hans/System.Runtime.xml", - "ref/netstandard1.0/zh-hant/System.Runtime.xml", - "ref/netstandard1.2/System.Runtime.dll", - "ref/netstandard1.2/System.Runtime.xml", - "ref/netstandard1.2/de/System.Runtime.xml", - "ref/netstandard1.2/es/System.Runtime.xml", - "ref/netstandard1.2/fr/System.Runtime.xml", - "ref/netstandard1.2/it/System.Runtime.xml", - "ref/netstandard1.2/ja/System.Runtime.xml", - "ref/netstandard1.2/ko/System.Runtime.xml", - "ref/netstandard1.2/ru/System.Runtime.xml", - "ref/netstandard1.2/zh-hans/System.Runtime.xml", - "ref/netstandard1.2/zh-hant/System.Runtime.xml", - "ref/netstandard1.3/System.Runtime.dll", - "ref/netstandard1.3/System.Runtime.xml", - "ref/netstandard1.3/de/System.Runtime.xml", - "ref/netstandard1.3/es/System.Runtime.xml", - "ref/netstandard1.3/fr/System.Runtime.xml", - "ref/netstandard1.3/it/System.Runtime.xml", - "ref/netstandard1.3/ja/System.Runtime.xml", - "ref/netstandard1.3/ko/System.Runtime.xml", - "ref/netstandard1.3/ru/System.Runtime.xml", - "ref/netstandard1.3/zh-hans/System.Runtime.xml", - "ref/netstandard1.3/zh-hant/System.Runtime.xml", - "ref/netstandard1.5/System.Runtime.dll", - "ref/netstandard1.5/System.Runtime.xml", - "ref/netstandard1.5/de/System.Runtime.xml", - "ref/netstandard1.5/es/System.Runtime.xml", - "ref/netstandard1.5/fr/System.Runtime.xml", - "ref/netstandard1.5/it/System.Runtime.xml", - "ref/netstandard1.5/ja/System.Runtime.xml", - "ref/netstandard1.5/ko/System.Runtime.xml", - "ref/netstandard1.5/ru/System.Runtime.xml", - "ref/netstandard1.5/zh-hans/System.Runtime.xml", - "ref/netstandard1.5/zh-hant/System.Runtime.xml", - "ref/portable-net45+win8+wp80+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.runtime.4.3.0.nupkg.sha512", - "system.runtime.nuspec" - ] - }, - "System.Runtime.Extensions/4.3.0": { - "sha512": "guW0uK0fn5fcJJ1tJVXYd7/1h5F+pea1r7FLSOz/f8vPEqbR2ZAknuRDvTQ8PzAilDveOxNjSfr0CHfIQfFk8g==", - "type": "package", - "path": "system.runtime.extensions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net462/System.Runtime.Extensions.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net462/System.Runtime.Extensions.dll", - "ref/netcore50/System.Runtime.Extensions.dll", - "ref/netcore50/System.Runtime.Extensions.xml", - "ref/netcore50/de/System.Runtime.Extensions.xml", - "ref/netcore50/es/System.Runtime.Extensions.xml", - "ref/netcore50/fr/System.Runtime.Extensions.xml", - "ref/netcore50/it/System.Runtime.Extensions.xml", - "ref/netcore50/ja/System.Runtime.Extensions.xml", - "ref/netcore50/ko/System.Runtime.Extensions.xml", - "ref/netcore50/ru/System.Runtime.Extensions.xml", - "ref/netcore50/zh-hans/System.Runtime.Extensions.xml", - "ref/netcore50/zh-hant/System.Runtime.Extensions.xml", - "ref/netstandard1.0/System.Runtime.Extensions.dll", - "ref/netstandard1.0/System.Runtime.Extensions.xml", - "ref/netstandard1.0/de/System.Runtime.Extensions.xml", - "ref/netstandard1.0/es/System.Runtime.Extensions.xml", - "ref/netstandard1.0/fr/System.Runtime.Extensions.xml", - "ref/netstandard1.0/it/System.Runtime.Extensions.xml", - "ref/netstandard1.0/ja/System.Runtime.Extensions.xml", - "ref/netstandard1.0/ko/System.Runtime.Extensions.xml", - "ref/netstandard1.0/ru/System.Runtime.Extensions.xml", - "ref/netstandard1.0/zh-hans/System.Runtime.Extensions.xml", - "ref/netstandard1.0/zh-hant/System.Runtime.Extensions.xml", - "ref/netstandard1.3/System.Runtime.Extensions.dll", - "ref/netstandard1.3/System.Runtime.Extensions.xml", - "ref/netstandard1.3/de/System.Runtime.Extensions.xml", - "ref/netstandard1.3/es/System.Runtime.Extensions.xml", - "ref/netstandard1.3/fr/System.Runtime.Extensions.xml", - "ref/netstandard1.3/it/System.Runtime.Extensions.xml", - "ref/netstandard1.3/ja/System.Runtime.Extensions.xml", - "ref/netstandard1.3/ko/System.Runtime.Extensions.xml", - "ref/netstandard1.3/ru/System.Runtime.Extensions.xml", - "ref/netstandard1.3/zh-hans/System.Runtime.Extensions.xml", - "ref/netstandard1.3/zh-hant/System.Runtime.Extensions.xml", - "ref/netstandard1.5/System.Runtime.Extensions.dll", - "ref/netstandard1.5/System.Runtime.Extensions.xml", - "ref/netstandard1.5/de/System.Runtime.Extensions.xml", - "ref/netstandard1.5/es/System.Runtime.Extensions.xml", - "ref/netstandard1.5/fr/System.Runtime.Extensions.xml", - "ref/netstandard1.5/it/System.Runtime.Extensions.xml", - "ref/netstandard1.5/ja/System.Runtime.Extensions.xml", - "ref/netstandard1.5/ko/System.Runtime.Extensions.xml", - "ref/netstandard1.5/ru/System.Runtime.Extensions.xml", - "ref/netstandard1.5/zh-hans/System.Runtime.Extensions.xml", - "ref/netstandard1.5/zh-hant/System.Runtime.Extensions.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.runtime.extensions.4.3.0.nupkg.sha512", - "system.runtime.extensions.nuspec" - ] - }, - "System.Runtime.Handles/4.3.0": { - "sha512": "OKiSUN7DmTWeYb3l51A7EYaeNMnvxwE249YtZz7yooT4gOZhmTjIn48KgSsw2k2lYdLgTKNJw/ZIfSElwDRVgg==", - "type": "package", - "path": "system.runtime.handles/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/_._", - "ref/netstandard1.3/System.Runtime.Handles.dll", - "ref/netstandard1.3/System.Runtime.Handles.xml", - "ref/netstandard1.3/de/System.Runtime.Handles.xml", - "ref/netstandard1.3/es/System.Runtime.Handles.xml", - "ref/netstandard1.3/fr/System.Runtime.Handles.xml", - "ref/netstandard1.3/it/System.Runtime.Handles.xml", - "ref/netstandard1.3/ja/System.Runtime.Handles.xml", - "ref/netstandard1.3/ko/System.Runtime.Handles.xml", - "ref/netstandard1.3/ru/System.Runtime.Handles.xml", - "ref/netstandard1.3/zh-hans/System.Runtime.Handles.xml", - "ref/netstandard1.3/zh-hant/System.Runtime.Handles.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.runtime.handles.4.3.0.nupkg.sha512", - "system.runtime.handles.nuspec" - ] - }, - "System.Runtime.InteropServices/4.3.0": { - "sha512": "uv1ynXqiMK8mp1GM3jDqPCFN66eJ5w5XNomaK2XD+TuCroNTLFGeZ+WCmBMcBDyTFKou3P6cR6J/QsaqDp7fGQ==", - "type": "package", - "path": "system.runtime.interopservices/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net462/System.Runtime.InteropServices.dll", - "lib/net463/System.Runtime.InteropServices.dll", - "lib/portable-net45+win8+wpa81/_._", - "lib/win8/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net462/System.Runtime.InteropServices.dll", - "ref/net463/System.Runtime.InteropServices.dll", - "ref/netcore50/System.Runtime.InteropServices.dll", - "ref/netcore50/System.Runtime.InteropServices.xml", - "ref/netcore50/de/System.Runtime.InteropServices.xml", - "ref/netcore50/es/System.Runtime.InteropServices.xml", - "ref/netcore50/fr/System.Runtime.InteropServices.xml", - "ref/netcore50/it/System.Runtime.InteropServices.xml", - "ref/netcore50/ja/System.Runtime.InteropServices.xml", - "ref/netcore50/ko/System.Runtime.InteropServices.xml", - "ref/netcore50/ru/System.Runtime.InteropServices.xml", - "ref/netcore50/zh-hans/System.Runtime.InteropServices.xml", - "ref/netcore50/zh-hant/System.Runtime.InteropServices.xml", - "ref/netcoreapp1.1/System.Runtime.InteropServices.dll", - "ref/netstandard1.1/System.Runtime.InteropServices.dll", - "ref/netstandard1.1/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/de/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/es/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/fr/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/it/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/ja/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/ko/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/ru/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/zh-hans/System.Runtime.InteropServices.xml", - "ref/netstandard1.1/zh-hant/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/System.Runtime.InteropServices.dll", - "ref/netstandard1.2/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/de/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/es/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/fr/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/it/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/ja/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/ko/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/ru/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/zh-hans/System.Runtime.InteropServices.xml", - "ref/netstandard1.2/zh-hant/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/System.Runtime.InteropServices.dll", - "ref/netstandard1.3/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/de/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/es/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/fr/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/it/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/ja/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/ko/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/ru/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/zh-hans/System.Runtime.InteropServices.xml", - "ref/netstandard1.3/zh-hant/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/System.Runtime.InteropServices.dll", - "ref/netstandard1.5/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/de/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/es/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/fr/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/it/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/ja/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/ko/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/ru/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/zh-hans/System.Runtime.InteropServices.xml", - "ref/netstandard1.5/zh-hant/System.Runtime.InteropServices.xml", - "ref/portable-net45+win8+wpa81/_._", - "ref/win8/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.runtime.interopservices.4.3.0.nupkg.sha512", - "system.runtime.interopservices.nuspec" - ] - }, - "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { - "sha512": "cbz4YJMqRDR7oLeMRbdYv7mYzc++17lNhScCX0goO2XpGWdvAt60CGN+FHdePUEHCe/Jy9jUlvNAiNdM+7jsOw==", - "type": "package", - "path": "system.runtime.interopservices.runtimeinformation/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/System.Runtime.InteropServices.RuntimeInformation.dll", - "lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", - "lib/win8/System.Runtime.InteropServices.RuntimeInformation.dll", - "lib/wpa81/System.Runtime.InteropServices.RuntimeInformation.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/System.Runtime.InteropServices.RuntimeInformation.dll", - "runtimes/unix/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", - "runtimes/win/lib/net45/System.Runtime.InteropServices.RuntimeInformation.dll", - "runtimes/win/lib/netcore50/System.Runtime.InteropServices.RuntimeInformation.dll", - "runtimes/win/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", - "system.runtime.interopservices.runtimeinformation.4.3.0.nupkg.sha512", - "system.runtime.interopservices.runtimeinformation.nuspec" - ] - }, - "System.Runtime.Numerics/4.3.0": { - "sha512": "yMH+MfdzHjy17l2KESnPiF2dwq7T+xLnSJar7slyimAkUh/gTrS9/UQOtv7xarskJ2/XDSNvfLGOBQPjL7PaHQ==", - "type": "package", - "path": "system.runtime.numerics/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Runtime.Numerics.dll", - "lib/netstandard1.3/System.Runtime.Numerics.dll", - "lib/portable-net45+win8+wpa81/_._", - "lib/win8/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Runtime.Numerics.dll", - "ref/netcore50/System.Runtime.Numerics.xml", - "ref/netcore50/de/System.Runtime.Numerics.xml", - "ref/netcore50/es/System.Runtime.Numerics.xml", - "ref/netcore50/fr/System.Runtime.Numerics.xml", - "ref/netcore50/it/System.Runtime.Numerics.xml", - "ref/netcore50/ja/System.Runtime.Numerics.xml", - "ref/netcore50/ko/System.Runtime.Numerics.xml", - "ref/netcore50/ru/System.Runtime.Numerics.xml", - "ref/netcore50/zh-hans/System.Runtime.Numerics.xml", - "ref/netcore50/zh-hant/System.Runtime.Numerics.xml", - "ref/netstandard1.1/System.Runtime.Numerics.dll", - "ref/netstandard1.1/System.Runtime.Numerics.xml", - "ref/netstandard1.1/de/System.Runtime.Numerics.xml", - "ref/netstandard1.1/es/System.Runtime.Numerics.xml", - "ref/netstandard1.1/fr/System.Runtime.Numerics.xml", - "ref/netstandard1.1/it/System.Runtime.Numerics.xml", - "ref/netstandard1.1/ja/System.Runtime.Numerics.xml", - "ref/netstandard1.1/ko/System.Runtime.Numerics.xml", - "ref/netstandard1.1/ru/System.Runtime.Numerics.xml", - "ref/netstandard1.1/zh-hans/System.Runtime.Numerics.xml", - "ref/netstandard1.1/zh-hant/System.Runtime.Numerics.xml", - "ref/portable-net45+win8+wpa81/_._", - "ref/win8/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.runtime.numerics.4.3.0.nupkg.sha512", - "system.runtime.numerics.nuspec" - ] - }, - "System.Security.Cryptography.Algorithms/4.3.0": { - "sha512": "W1kd2Y8mYSCgc3ULTAZ0hOP2dSdG5YauTb1089T0/kRcN2MpSAW1izOFROrJgxSlMn3ArsgHXagigyi+ibhevg==", - "type": "package", - "path": "system.security.cryptography.algorithms/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Security.Cryptography.Algorithms.dll", - "lib/net461/System.Security.Cryptography.Algorithms.dll", - "lib/net463/System.Security.Cryptography.Algorithms.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Security.Cryptography.Algorithms.dll", - "ref/net461/System.Security.Cryptography.Algorithms.dll", - "ref/net463/System.Security.Cryptography.Algorithms.dll", - "ref/netstandard1.3/System.Security.Cryptography.Algorithms.dll", - "ref/netstandard1.4/System.Security.Cryptography.Algorithms.dll", - "ref/netstandard1.6/System.Security.Cryptography.Algorithms.dll", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/osx/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", - "runtimes/win/lib/net46/System.Security.Cryptography.Algorithms.dll", - "runtimes/win/lib/net461/System.Security.Cryptography.Algorithms.dll", - "runtimes/win/lib/net463/System.Security.Cryptography.Algorithms.dll", - "runtimes/win/lib/netcore50/System.Security.Cryptography.Algorithms.dll", - "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", - "system.security.cryptography.algorithms.4.3.0.nupkg.sha512", - "system.security.cryptography.algorithms.nuspec" - ] - }, - "System.Security.Cryptography.Cng/4.3.0": { - "sha512": "03idZOqFlsKRL4W+LuCpJ6dBYDUWReug6lZjBa3uJWnk5sPCUXckocevTaUA8iT/MFSrY/2HXkOt753xQ/cf8g==", - "type": "package", - "path": "system.security.cryptography.cng/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/net46/System.Security.Cryptography.Cng.dll", - "lib/net461/System.Security.Cryptography.Cng.dll", - "lib/net463/System.Security.Cryptography.Cng.dll", - "ref/net46/System.Security.Cryptography.Cng.dll", - "ref/net461/System.Security.Cryptography.Cng.dll", - "ref/net463/System.Security.Cryptography.Cng.dll", - "ref/netstandard1.3/System.Security.Cryptography.Cng.dll", - "ref/netstandard1.4/System.Security.Cryptography.Cng.dll", - "ref/netstandard1.6/System.Security.Cryptography.Cng.dll", - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Cng.dll", - "runtimes/win/lib/net46/System.Security.Cryptography.Cng.dll", - "runtimes/win/lib/net461/System.Security.Cryptography.Cng.dll", - "runtimes/win/lib/net463/System.Security.Cryptography.Cng.dll", - "runtimes/win/lib/netstandard1.4/System.Security.Cryptography.Cng.dll", - "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Cng.dll", - "system.security.cryptography.cng.4.3.0.nupkg.sha512", - "system.security.cryptography.cng.nuspec" - ] - }, - "System.Security.Cryptography.Csp/4.3.0": { - "sha512": "X4s/FCkEUnRGnwR3aSfVIkldBmtURMhmexALNTwpjklzxWU7yjMk7GHLKOZTNkgnWnE0q7+BCf9N2LVRWxewaA==", - "type": "package", - "path": "system.security.cryptography.csp/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Security.Cryptography.Csp.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Security.Cryptography.Csp.dll", - "ref/netstandard1.3/System.Security.Cryptography.Csp.dll", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Csp.dll", - "runtimes/win/lib/net46/System.Security.Cryptography.Csp.dll", - "runtimes/win/lib/netcore50/_._", - "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Csp.dll", - "system.security.cryptography.csp.4.3.0.nupkg.sha512", - "system.security.cryptography.csp.nuspec" - ] - }, - "System.Security.Cryptography.Encoding/4.3.0": { - "sha512": "1DEWjZZly9ae9C79vFwqaO5kaOlI5q+3/55ohmq/7dpDyDfc8lYe7YVxJUZ5MF/NtbkRjwFRo14yM4OEo9EmDw==", - "type": "package", - "path": "system.security.cryptography.encoding/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Security.Cryptography.Encoding.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Security.Cryptography.Encoding.dll", - "ref/netstandard1.3/System.Security.Cryptography.Encoding.dll", - "ref/netstandard1.3/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/de/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/es/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/fr/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/it/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/ja/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/ko/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/ru/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/zh-hans/System.Security.Cryptography.Encoding.xml", - "ref/netstandard1.3/zh-hant/System.Security.Cryptography.Encoding.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll", - "runtimes/win/lib/net46/System.Security.Cryptography.Encoding.dll", - "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll", - "system.security.cryptography.encoding.4.3.0.nupkg.sha512", - "system.security.cryptography.encoding.nuspec" - ] - }, - "System.Security.Cryptography.OpenSsl/4.3.0": { - "sha512": "h4CEgOgv5PKVF/HwaHzJRiVboL2THYCou97zpmhjghx5frc7fIvlkY1jL+lnIQyChrJDMNEXS6r7byGif8Cy4w==", - "type": "package", - "path": "system.security.cryptography.openssl/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", - "ref/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", - "system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "system.security.cryptography.openssl.nuspec" - ] - }, - "System.Security.Cryptography.Primitives/4.3.0": { - "sha512": "7bDIyVFNL/xKeFHjhobUAQqSpJq9YTOpbEs6mR233Et01STBMXNAc/V+BM6dwYGc95gVh/Zf+iVXWzj3mE8DWg==", - "type": "package", - "path": "system.security.cryptography.primitives/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Security.Cryptography.Primitives.dll", - "lib/netstandard1.3/System.Security.Cryptography.Primitives.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Security.Cryptography.Primitives.dll", - "ref/netstandard1.3/System.Security.Cryptography.Primitives.dll", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.security.cryptography.primitives.4.3.0.nupkg.sha512", - "system.security.cryptography.primitives.nuspec" - ] - }, - "System.Security.Cryptography.X509Certificates/4.3.0": { - "sha512": "t2Tmu6Y2NtJ2um0RtcuhP7ZdNNxXEgUm2JeoA/0NvlMjAhKCnM1NX07TDl3244mVp3QU6LPEhT3HTtH1uF7IYw==", - "type": "package", - "path": "system.security.cryptography.x509certificates/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net46/System.Security.Cryptography.X509Certificates.dll", - "lib/net461/System.Security.Cryptography.X509Certificates.dll", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net46/System.Security.Cryptography.X509Certificates.dll", - "ref/net461/System.Security.Cryptography.X509Certificates.dll", - "ref/netstandard1.3/System.Security.Cryptography.X509Certificates.dll", - "ref/netstandard1.3/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/de/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/es/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/fr/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/it/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/ja/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/ko/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/ru/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/zh-hans/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.3/zh-hant/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.dll", - "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/de/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/es/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/fr/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/it/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/ja/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/ko/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/ru/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/zh-hans/System.Security.Cryptography.X509Certificates.xml", - "ref/netstandard1.4/zh-hant/System.Security.Cryptography.X509Certificates.xml", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll", - "runtimes/win/lib/net46/System.Security.Cryptography.X509Certificates.dll", - "runtimes/win/lib/net461/System.Security.Cryptography.X509Certificates.dll", - "runtimes/win/lib/netcore50/System.Security.Cryptography.X509Certificates.dll", - "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll", - "system.security.cryptography.x509certificates.4.3.0.nupkg.sha512", - "system.security.cryptography.x509certificates.nuspec" - ] - }, - "System.Text.Encoding/4.3.0": { - "sha512": "BiIg+KWaSDOITze6jGQynxg64naAPtqGHBwDrLaCtixsa5bKiR8dpPOHA7ge3C0JJQizJE+sfkz1wV+BAKAYZw==", - "type": "package", - "path": "system.text.encoding/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Text.Encoding.dll", - "ref/netcore50/System.Text.Encoding.xml", - "ref/netcore50/de/System.Text.Encoding.xml", - "ref/netcore50/es/System.Text.Encoding.xml", - "ref/netcore50/fr/System.Text.Encoding.xml", - "ref/netcore50/it/System.Text.Encoding.xml", - "ref/netcore50/ja/System.Text.Encoding.xml", - "ref/netcore50/ko/System.Text.Encoding.xml", - "ref/netcore50/ru/System.Text.Encoding.xml", - "ref/netcore50/zh-hans/System.Text.Encoding.xml", - "ref/netcore50/zh-hant/System.Text.Encoding.xml", - "ref/netstandard1.0/System.Text.Encoding.dll", - "ref/netstandard1.0/System.Text.Encoding.xml", - "ref/netstandard1.0/de/System.Text.Encoding.xml", - "ref/netstandard1.0/es/System.Text.Encoding.xml", - "ref/netstandard1.0/fr/System.Text.Encoding.xml", - "ref/netstandard1.0/it/System.Text.Encoding.xml", - "ref/netstandard1.0/ja/System.Text.Encoding.xml", - "ref/netstandard1.0/ko/System.Text.Encoding.xml", - "ref/netstandard1.0/ru/System.Text.Encoding.xml", - "ref/netstandard1.0/zh-hans/System.Text.Encoding.xml", - "ref/netstandard1.0/zh-hant/System.Text.Encoding.xml", - "ref/netstandard1.3/System.Text.Encoding.dll", - "ref/netstandard1.3/System.Text.Encoding.xml", - "ref/netstandard1.3/de/System.Text.Encoding.xml", - "ref/netstandard1.3/es/System.Text.Encoding.xml", - "ref/netstandard1.3/fr/System.Text.Encoding.xml", - "ref/netstandard1.3/it/System.Text.Encoding.xml", - "ref/netstandard1.3/ja/System.Text.Encoding.xml", - "ref/netstandard1.3/ko/System.Text.Encoding.xml", - "ref/netstandard1.3/ru/System.Text.Encoding.xml", - "ref/netstandard1.3/zh-hans/System.Text.Encoding.xml", - "ref/netstandard1.3/zh-hant/System.Text.Encoding.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.text.encoding.4.3.0.nupkg.sha512", - "system.text.encoding.nuspec" - ] - }, - "System.Text.Encoding.Extensions/4.3.0": { - "sha512": "YVMK0Bt/A43RmwizJoZ22ei2nmrhobgeiYwFzC4YAN+nue8RF6djXDMog0UCn+brerQoYVyaS+ghy9P/MUVcmw==", - "type": "package", - "path": "system.text.encoding.extensions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Text.Encoding.Extensions.dll", - "ref/netcore50/System.Text.Encoding.Extensions.xml", - "ref/netcore50/de/System.Text.Encoding.Extensions.xml", - "ref/netcore50/es/System.Text.Encoding.Extensions.xml", - "ref/netcore50/fr/System.Text.Encoding.Extensions.xml", - "ref/netcore50/it/System.Text.Encoding.Extensions.xml", - "ref/netcore50/ja/System.Text.Encoding.Extensions.xml", - "ref/netcore50/ko/System.Text.Encoding.Extensions.xml", - "ref/netcore50/ru/System.Text.Encoding.Extensions.xml", - "ref/netcore50/zh-hans/System.Text.Encoding.Extensions.xml", - "ref/netcore50/zh-hant/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/System.Text.Encoding.Extensions.dll", - "ref/netstandard1.0/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/de/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/es/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/fr/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/it/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/ja/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/ko/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/ru/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/zh-hans/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.0/zh-hant/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/System.Text.Encoding.Extensions.dll", - "ref/netstandard1.3/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/de/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/es/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/fr/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/it/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/ja/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/ko/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/ru/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/zh-hans/System.Text.Encoding.Extensions.xml", - "ref/netstandard1.3/zh-hant/System.Text.Encoding.Extensions.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.text.encoding.extensions.4.3.0.nupkg.sha512", - "system.text.encoding.extensions.nuspec" - ] - }, - "System.Text.Encodings.Web/8.0.0": { - "sha512": "yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ==", - "type": "package", - "path": "system.text.encodings.web/8.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Text.Encodings.Web.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.Text.Encodings.Web.targets", - "lib/net462/System.Text.Encodings.Web.dll", - "lib/net462/System.Text.Encodings.Web.xml", - "lib/net6.0/System.Text.Encodings.Web.dll", - "lib/net6.0/System.Text.Encodings.Web.xml", - "lib/net7.0/System.Text.Encodings.Web.dll", - "lib/net7.0/System.Text.Encodings.Web.xml", - "lib/net8.0/System.Text.Encodings.Web.dll", - "lib/net8.0/System.Text.Encodings.Web.xml", - "lib/netstandard2.0/System.Text.Encodings.Web.dll", - "lib/netstandard2.0/System.Text.Encodings.Web.xml", - "runtimes/browser/lib/net6.0/System.Text.Encodings.Web.dll", - "runtimes/browser/lib/net6.0/System.Text.Encodings.Web.xml", - "runtimes/browser/lib/net7.0/System.Text.Encodings.Web.dll", - "runtimes/browser/lib/net7.0/System.Text.Encodings.Web.xml", - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll", - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.xml", - "system.text.encodings.web.8.0.0.nupkg.sha512", - "system.text.encodings.web.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Text.RegularExpressions/4.3.0": { - "sha512": "RpT2DA+L660cBt1FssIE9CAGpLFdFPuheB7pLpKpn6ZXNby7jDERe8Ua/Ne2xGiwLVG2JOqziiaVCGDon5sKFA==", - "type": "package", - "path": "system.text.regularexpressions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net463/System.Text.RegularExpressions.dll", - "lib/netcore50/System.Text.RegularExpressions.dll", - "lib/netstandard1.6/System.Text.RegularExpressions.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net463/System.Text.RegularExpressions.dll", - "ref/netcore50/System.Text.RegularExpressions.dll", - "ref/netcore50/System.Text.RegularExpressions.xml", - "ref/netcore50/de/System.Text.RegularExpressions.xml", - "ref/netcore50/es/System.Text.RegularExpressions.xml", - "ref/netcore50/fr/System.Text.RegularExpressions.xml", - "ref/netcore50/it/System.Text.RegularExpressions.xml", - "ref/netcore50/ja/System.Text.RegularExpressions.xml", - "ref/netcore50/ko/System.Text.RegularExpressions.xml", - "ref/netcore50/ru/System.Text.RegularExpressions.xml", - "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", - "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", - "ref/netcoreapp1.1/System.Text.RegularExpressions.dll", - "ref/netstandard1.0/System.Text.RegularExpressions.dll", - "ref/netstandard1.0/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/de/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/es/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/fr/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/it/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/ja/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/ko/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/ru/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/zh-hans/System.Text.RegularExpressions.xml", - "ref/netstandard1.0/zh-hant/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/System.Text.RegularExpressions.dll", - "ref/netstandard1.3/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/de/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/es/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/fr/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/it/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/ja/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/ko/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/ru/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/zh-hans/System.Text.RegularExpressions.xml", - "ref/netstandard1.3/zh-hant/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/System.Text.RegularExpressions.dll", - "ref/netstandard1.6/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/de/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/es/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/fr/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/it/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/ja/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/ko/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/ru/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/zh-hans/System.Text.RegularExpressions.xml", - "ref/netstandard1.6/zh-hant/System.Text.RegularExpressions.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.text.regularexpressions.4.3.0.nupkg.sha512", - "system.text.regularexpressions.nuspec" - ] - }, - "System.Threading/4.3.0": { - "sha512": "VkUS0kOBcUf3Wwm0TSbrevDDZ6BlM+b/HRiapRFWjM5O0NS0LviG0glKmFK+hhPDd1XFeSdU1GmlLhb2CoVpIw==", - "type": "package", - "path": "system.threading/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Threading.dll", - "lib/netstandard1.3/System.Threading.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Threading.dll", - "ref/netcore50/System.Threading.xml", - "ref/netcore50/de/System.Threading.xml", - "ref/netcore50/es/System.Threading.xml", - "ref/netcore50/fr/System.Threading.xml", - "ref/netcore50/it/System.Threading.xml", - "ref/netcore50/ja/System.Threading.xml", - "ref/netcore50/ko/System.Threading.xml", - "ref/netcore50/ru/System.Threading.xml", - "ref/netcore50/zh-hans/System.Threading.xml", - "ref/netcore50/zh-hant/System.Threading.xml", - "ref/netstandard1.0/System.Threading.dll", - "ref/netstandard1.0/System.Threading.xml", - "ref/netstandard1.0/de/System.Threading.xml", - "ref/netstandard1.0/es/System.Threading.xml", - "ref/netstandard1.0/fr/System.Threading.xml", - "ref/netstandard1.0/it/System.Threading.xml", - "ref/netstandard1.0/ja/System.Threading.xml", - "ref/netstandard1.0/ko/System.Threading.xml", - "ref/netstandard1.0/ru/System.Threading.xml", - "ref/netstandard1.0/zh-hans/System.Threading.xml", - "ref/netstandard1.0/zh-hant/System.Threading.xml", - "ref/netstandard1.3/System.Threading.dll", - "ref/netstandard1.3/System.Threading.xml", - "ref/netstandard1.3/de/System.Threading.xml", - "ref/netstandard1.3/es/System.Threading.xml", - "ref/netstandard1.3/fr/System.Threading.xml", - "ref/netstandard1.3/it/System.Threading.xml", - "ref/netstandard1.3/ja/System.Threading.xml", - "ref/netstandard1.3/ko/System.Threading.xml", - "ref/netstandard1.3/ru/System.Threading.xml", - "ref/netstandard1.3/zh-hans/System.Threading.xml", - "ref/netstandard1.3/zh-hant/System.Threading.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "runtimes/aot/lib/netcore50/System.Threading.dll", - "system.threading.4.3.0.nupkg.sha512", - "system.threading.nuspec" - ] - }, - "System.Threading.Channels/8.0.0": { - "sha512": "CMaFr7v+57RW7uZfZkPExsPB6ljwzhjACWW1gfU35Y56rk72B/Wu+sTqxVmGSk4SFUlPc3cjeKND0zktziyjBA==", - "type": "package", - "path": "system.threading.channels/8.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Threading.Channels.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.Threading.Channels.targets", - "lib/net462/System.Threading.Channels.dll", - "lib/net462/System.Threading.Channels.xml", - "lib/net6.0/System.Threading.Channels.dll", - "lib/net6.0/System.Threading.Channels.xml", - "lib/net7.0/System.Threading.Channels.dll", - "lib/net7.0/System.Threading.Channels.xml", - "lib/net8.0/System.Threading.Channels.dll", - "lib/net8.0/System.Threading.Channels.xml", - "lib/netstandard2.0/System.Threading.Channels.dll", - "lib/netstandard2.0/System.Threading.Channels.xml", - "lib/netstandard2.1/System.Threading.Channels.dll", - "lib/netstandard2.1/System.Threading.Channels.xml", - "system.threading.channels.8.0.0.nupkg.sha512", - "system.threading.channels.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Threading.RateLimiting/8.0.0": { - "sha512": "7mu9v0QDv66ar3DpGSZHg9NuNcxDaaAcnMULuZlaTpP9+hwXhrxNGsF5GmLkSHxFdb5bBc1TzeujsRgTrPWi+Q==", - "type": "package", - "path": "system.threading.ratelimiting/8.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Threading.RateLimiting.targets", - "buildTransitive/net462/_._", - "buildTransitive/net6.0/_._", - "buildTransitive/netcoreapp2.0/System.Threading.RateLimiting.targets", - "lib/net462/System.Threading.RateLimiting.dll", - "lib/net462/System.Threading.RateLimiting.xml", - "lib/net6.0/System.Threading.RateLimiting.dll", - "lib/net6.0/System.Threading.RateLimiting.xml", - "lib/net7.0/System.Threading.RateLimiting.dll", - "lib/net7.0/System.Threading.RateLimiting.xml", - "lib/net8.0/System.Threading.RateLimiting.dll", - "lib/net8.0/System.Threading.RateLimiting.xml", - "lib/netstandard2.0/System.Threading.RateLimiting.dll", - "lib/netstandard2.0/System.Threading.RateLimiting.xml", - "system.threading.ratelimiting.8.0.0.nupkg.sha512", - "system.threading.ratelimiting.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Threading.Tasks/4.3.0": { - "sha512": "LbSxKEdOUhVe8BezB/9uOGGppt+nZf6e1VFyw6v3DN6lqitm0OSn2uXMOdtP0M3W4iMcqcivm2J6UgqiwwnXiA==", - "type": "package", - "path": "system.threading.tasks/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Threading.Tasks.dll", - "ref/netcore50/System.Threading.Tasks.xml", - "ref/netcore50/de/System.Threading.Tasks.xml", - "ref/netcore50/es/System.Threading.Tasks.xml", - "ref/netcore50/fr/System.Threading.Tasks.xml", - "ref/netcore50/it/System.Threading.Tasks.xml", - "ref/netcore50/ja/System.Threading.Tasks.xml", - "ref/netcore50/ko/System.Threading.Tasks.xml", - "ref/netcore50/ru/System.Threading.Tasks.xml", - "ref/netcore50/zh-hans/System.Threading.Tasks.xml", - "ref/netcore50/zh-hant/System.Threading.Tasks.xml", - "ref/netstandard1.0/System.Threading.Tasks.dll", - "ref/netstandard1.0/System.Threading.Tasks.xml", - "ref/netstandard1.0/de/System.Threading.Tasks.xml", - "ref/netstandard1.0/es/System.Threading.Tasks.xml", - "ref/netstandard1.0/fr/System.Threading.Tasks.xml", - "ref/netstandard1.0/it/System.Threading.Tasks.xml", - "ref/netstandard1.0/ja/System.Threading.Tasks.xml", - "ref/netstandard1.0/ko/System.Threading.Tasks.xml", - "ref/netstandard1.0/ru/System.Threading.Tasks.xml", - "ref/netstandard1.0/zh-hans/System.Threading.Tasks.xml", - "ref/netstandard1.0/zh-hant/System.Threading.Tasks.xml", - "ref/netstandard1.3/System.Threading.Tasks.dll", - "ref/netstandard1.3/System.Threading.Tasks.xml", - "ref/netstandard1.3/de/System.Threading.Tasks.xml", - "ref/netstandard1.3/es/System.Threading.Tasks.xml", - "ref/netstandard1.3/fr/System.Threading.Tasks.xml", - "ref/netstandard1.3/it/System.Threading.Tasks.xml", - "ref/netstandard1.3/ja/System.Threading.Tasks.xml", - "ref/netstandard1.3/ko/System.Threading.Tasks.xml", - "ref/netstandard1.3/ru/System.Threading.Tasks.xml", - "ref/netstandard1.3/zh-hans/System.Threading.Tasks.xml", - "ref/netstandard1.3/zh-hant/System.Threading.Tasks.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.threading.tasks.4.3.0.nupkg.sha512", - "system.threading.tasks.nuspec" - ] - }, - "System.Threading.Tasks.Extensions/4.3.0": { - "sha512": "npvJkVKl5rKXrtl1Kkm6OhOUaYGEiF9wFbppFRWSMoApKzt2PiPHT2Bb8a5sAWxprvdOAtvaARS9QYMznEUtug==", - "type": "package", - "path": "system.threading.tasks.extensions/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/netstandard1.0/System.Threading.Tasks.Extensions.dll", - "lib/netstandard1.0/System.Threading.Tasks.Extensions.xml", - "lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.dll", - "lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.xml", - "system.threading.tasks.extensions.4.3.0.nupkg.sha512", - "system.threading.tasks.extensions.nuspec" - ] - }, - "System.Threading.Timer/4.3.0": { - "sha512": "Z6YfyYTCg7lOZjJzBjONJTFKGN9/NIYKSxhU5GRd+DTwHSZyvWp1xuI5aR+dLg+ayyC5Xv57KiY4oJ0tMO89fQ==", - "type": "package", - "path": "system.threading.timer/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net451/_._", - "lib/portable-net451+win81+wpa81/_._", - "lib/win81/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net451/_._", - "ref/netcore50/System.Threading.Timer.dll", - "ref/netcore50/System.Threading.Timer.xml", - "ref/netcore50/de/System.Threading.Timer.xml", - "ref/netcore50/es/System.Threading.Timer.xml", - "ref/netcore50/fr/System.Threading.Timer.xml", - "ref/netcore50/it/System.Threading.Timer.xml", - "ref/netcore50/ja/System.Threading.Timer.xml", - "ref/netcore50/ko/System.Threading.Timer.xml", - "ref/netcore50/ru/System.Threading.Timer.xml", - "ref/netcore50/zh-hans/System.Threading.Timer.xml", - "ref/netcore50/zh-hant/System.Threading.Timer.xml", - "ref/netstandard1.2/System.Threading.Timer.dll", - "ref/netstandard1.2/System.Threading.Timer.xml", - "ref/netstandard1.2/de/System.Threading.Timer.xml", - "ref/netstandard1.2/es/System.Threading.Timer.xml", - "ref/netstandard1.2/fr/System.Threading.Timer.xml", - "ref/netstandard1.2/it/System.Threading.Timer.xml", - "ref/netstandard1.2/ja/System.Threading.Timer.xml", - "ref/netstandard1.2/ko/System.Threading.Timer.xml", - "ref/netstandard1.2/ru/System.Threading.Timer.xml", - "ref/netstandard1.2/zh-hans/System.Threading.Timer.xml", - "ref/netstandard1.2/zh-hant/System.Threading.Timer.xml", - "ref/portable-net451+win81+wpa81/_._", - "ref/win81/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.threading.timer.4.3.0.nupkg.sha512", - "system.threading.timer.nuspec" - ] - }, - "System.Xml.ReaderWriter/4.3.0": { - "sha512": "GrprA+Z0RUXaR4N7/eW71j1rgMnEnEVlgii49GZyAjTH7uliMnrOU3HNFBr6fEDBCJCIdlVNq9hHbaDR621XBA==", - "type": "package", - "path": "system.xml.readerwriter/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/net46/System.Xml.ReaderWriter.dll", - "lib/netcore50/System.Xml.ReaderWriter.dll", - "lib/netstandard1.3/System.Xml.ReaderWriter.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/net46/System.Xml.ReaderWriter.dll", - "ref/netcore50/System.Xml.ReaderWriter.dll", - "ref/netcore50/System.Xml.ReaderWriter.xml", - "ref/netcore50/de/System.Xml.ReaderWriter.xml", - "ref/netcore50/es/System.Xml.ReaderWriter.xml", - "ref/netcore50/fr/System.Xml.ReaderWriter.xml", - "ref/netcore50/it/System.Xml.ReaderWriter.xml", - "ref/netcore50/ja/System.Xml.ReaderWriter.xml", - "ref/netcore50/ko/System.Xml.ReaderWriter.xml", - "ref/netcore50/ru/System.Xml.ReaderWriter.xml", - "ref/netcore50/zh-hans/System.Xml.ReaderWriter.xml", - "ref/netcore50/zh-hant/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/System.Xml.ReaderWriter.dll", - "ref/netstandard1.0/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/de/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/es/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/fr/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/it/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/ja/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/ko/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/ru/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/zh-hans/System.Xml.ReaderWriter.xml", - "ref/netstandard1.0/zh-hant/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/System.Xml.ReaderWriter.dll", - "ref/netstandard1.3/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/de/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/es/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/fr/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/it/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/ja/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/ko/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/ru/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/zh-hans/System.Xml.ReaderWriter.xml", - "ref/netstandard1.3/zh-hant/System.Xml.ReaderWriter.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.xml.readerwriter.4.3.0.nupkg.sha512", - "system.xml.readerwriter.nuspec" - ] - }, - "System.Xml.XDocument/4.3.0": { - "sha512": "5zJ0XDxAIg8iy+t4aMnQAu0MqVbqyvfoUVl1yDV61xdo3Vth45oA2FoY4pPkxYAH5f8ixpmTqXeEIya95x0aCQ==", - "type": "package", - "path": "system.xml.xdocument/4.3.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "ThirdPartyNotices.txt", - "dotnet_library_license.txt", - "lib/MonoAndroid10/_._", - "lib/MonoTouch10/_._", - "lib/net45/_._", - "lib/netcore50/System.Xml.XDocument.dll", - "lib/netstandard1.3/System.Xml.XDocument.dll", - "lib/portable-net45+win8+wp8+wpa81/_._", - "lib/win8/_._", - "lib/wp80/_._", - "lib/wpa81/_._", - "lib/xamarinios10/_._", - "lib/xamarinmac20/_._", - "lib/xamarintvos10/_._", - "lib/xamarinwatchos10/_._", - "ref/MonoAndroid10/_._", - "ref/MonoTouch10/_._", - "ref/net45/_._", - "ref/netcore50/System.Xml.XDocument.dll", - "ref/netcore50/System.Xml.XDocument.xml", - "ref/netcore50/de/System.Xml.XDocument.xml", - "ref/netcore50/es/System.Xml.XDocument.xml", - "ref/netcore50/fr/System.Xml.XDocument.xml", - "ref/netcore50/it/System.Xml.XDocument.xml", - "ref/netcore50/ja/System.Xml.XDocument.xml", - "ref/netcore50/ko/System.Xml.XDocument.xml", - "ref/netcore50/ru/System.Xml.XDocument.xml", - "ref/netcore50/zh-hans/System.Xml.XDocument.xml", - "ref/netcore50/zh-hant/System.Xml.XDocument.xml", - "ref/netstandard1.0/System.Xml.XDocument.dll", - "ref/netstandard1.0/System.Xml.XDocument.xml", - "ref/netstandard1.0/de/System.Xml.XDocument.xml", - "ref/netstandard1.0/es/System.Xml.XDocument.xml", - "ref/netstandard1.0/fr/System.Xml.XDocument.xml", - "ref/netstandard1.0/it/System.Xml.XDocument.xml", - "ref/netstandard1.0/ja/System.Xml.XDocument.xml", - "ref/netstandard1.0/ko/System.Xml.XDocument.xml", - "ref/netstandard1.0/ru/System.Xml.XDocument.xml", - "ref/netstandard1.0/zh-hans/System.Xml.XDocument.xml", - "ref/netstandard1.0/zh-hant/System.Xml.XDocument.xml", - "ref/netstandard1.3/System.Xml.XDocument.dll", - "ref/netstandard1.3/System.Xml.XDocument.xml", - "ref/netstandard1.3/de/System.Xml.XDocument.xml", - "ref/netstandard1.3/es/System.Xml.XDocument.xml", - "ref/netstandard1.3/fr/System.Xml.XDocument.xml", - "ref/netstandard1.3/it/System.Xml.XDocument.xml", - "ref/netstandard1.3/ja/System.Xml.XDocument.xml", - "ref/netstandard1.3/ko/System.Xml.XDocument.xml", - "ref/netstandard1.3/ru/System.Xml.XDocument.xml", - "ref/netstandard1.3/zh-hans/System.Xml.XDocument.xml", - "ref/netstandard1.3/zh-hant/System.Xml.XDocument.xml", - "ref/portable-net45+win8+wp8+wpa81/_._", - "ref/win8/_._", - "ref/wp80/_._", - "ref/wpa81/_._", - "ref/xamarinios10/_._", - "ref/xamarinmac20/_._", - "ref/xamarintvos10/_._", - "ref/xamarinwatchos10/_._", - "system.xml.xdocument.4.3.0.nupkg.sha512", - "system.xml.xdocument.nuspec" - ] - }, - "xunit/2.5.3": { - "sha512": "VxYDiWSwrLxOJ3UEN+ZPrBybB0SFShQ1E6PjT65VdoKCJhorgerFznThjSwawRH/WAip73YnucDVsE8WRj/8KQ==", - "type": "package", - "path": "xunit/2.5.3", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "_content/README.md", - "_content/logo-128-transparent.png", - "xunit.2.5.3.nupkg.sha512", - "xunit.nuspec" - ] - }, - "xunit.abstractions/2.0.3": { - "sha512": "pot1I4YOxlWjIb5jmwvvQNbTrZ3lJQ+jUGkGjWE3hEFM0l5gOnBWS+H3qsex68s5cO52g+44vpGzhAt+42vwKg==", - "type": "package", - "path": "xunit.abstractions/2.0.3", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "lib/net35/xunit.abstractions.dll", - "lib/net35/xunit.abstractions.xml", - "lib/netstandard1.0/xunit.abstractions.dll", - "lib/netstandard1.0/xunit.abstractions.xml", - "lib/netstandard2.0/xunit.abstractions.dll", - "lib/netstandard2.0/xunit.abstractions.xml", - "xunit.abstractions.2.0.3.nupkg.sha512", - "xunit.abstractions.nuspec" - ] - }, - "xunit.analyzers/1.4.0": { - "sha512": "7ljnTJfFjz5zK+Jf0h2dd2QOSO6UmFizXsojv/x4QX7TU5vEgtKZPk9RvpkiuUqg2bddtNZufBoKQalsi7djfA==", - "type": "package", - "path": "xunit.analyzers/1.4.0", - "hasTools": true, - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "_content/README.md", - "_content/logo-128-transparent.png", - "analyzers/dotnet/cs/xunit.analyzers.dll", - "analyzers/dotnet/cs/xunit.analyzers.fixes.dll", - "tools/install.ps1", - "tools/uninstall.ps1", - "xunit.analyzers.1.4.0.nupkg.sha512", - "xunit.analyzers.nuspec" - ] - }, - "xunit.assert/2.5.3": { - "sha512": "MK3HiBckO3vdxEdUxXZyyRPsBNPsC/nz6y1gj/UZIZkjMnsVQyZPU8yxS/3cjTchYcqskt/nqUOS5wmD8JezdQ==", - "type": "package", - "path": "xunit.assert/2.5.3", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "_content/README.md", - "_content/logo-128-transparent.png", - "lib/netstandard1.1/xunit.assert.dll", - "lib/netstandard1.1/xunit.assert.xml", - "xunit.assert.2.5.3.nupkg.sha512", - "xunit.assert.nuspec" - ] - }, - "xunit.core/2.5.3": { - "sha512": "FE8yEEUkoMLd6kOHDXm/QYfX/dYzwc0c+Q4MQon6VGRwFuy6UVGwK/CFA5LEea+ZBEmcco7AEl2q78VjsA0j/w==", - "type": "package", - "path": "xunit.core/2.5.3", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "_content/README.md", - "_content/logo-128-transparent.png", - "build/xunit.core.props", - "build/xunit.core.targets", - "buildMultiTargeting/xunit.core.props", - "buildMultiTargeting/xunit.core.targets", - "xunit.core.2.5.3.nupkg.sha512", - "xunit.core.nuspec" - ] - }, - "xunit.extensibility.core/2.5.3": { - "sha512": "IjAQlPeZWXP89pl1EuOG9991GH1qgAL0rQfkmX2UV+PDenbYb7oBnQopL9ujE6YaXxgaQazp7lFjsDyyxD6Mtw==", - "type": "package", - "path": "xunit.extensibility.core/2.5.3", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "_content/README.md", - "_content/logo-128-transparent.png", - "lib/net452/xunit.core.dll", - "lib/net452/xunit.core.dll.tdnet", - "lib/net452/xunit.core.xml", - "lib/net452/xunit.runner.tdnet.dll", - "lib/net452/xunit.runner.utility.net452.dll", - "lib/netstandard1.1/xunit.core.dll", - "lib/netstandard1.1/xunit.core.xml", - "xunit.extensibility.core.2.5.3.nupkg.sha512", - "xunit.extensibility.core.nuspec" - ] - }, - "xunit.extensibility.execution/2.5.3": { - "sha512": "w9eGCHl+gJj1GzZSf0VTzYPp/gv4fiUDkr+yR7/Wv9/ucO2CHltGg2TnyySLFjzekkjuxVJZUE+tZyDNzryJFw==", - "type": "package", - "path": "xunit.extensibility.execution/2.5.3", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "_content/README.md", - "_content/logo-128-transparent.png", - "lib/net452/xunit.execution.desktop.dll", - "lib/net452/xunit.execution.desktop.xml", - "lib/netstandard1.1/xunit.execution.dotnet.dll", - "lib/netstandard1.1/xunit.execution.dotnet.xml", - "xunit.extensibility.execution.2.5.3.nupkg.sha512", - "xunit.extensibility.execution.nuspec" - ] - }, - "xunit.runner.visualstudio/2.5.3": { - "sha512": "HFFL6O+QLEOfs555SqHii48ovVa4CqGYanY+B32BjLpPptdE+wEJmCFNXlLHdEOD5LYeayb9EroaUpydGpcybg==", - "type": "package", - "path": "xunit.runner.visualstudio/2.5.3", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "_content/README.md", - "_content/logo-128-transparent.png", - "build/net462/xunit.abstractions.dll", - "build/net462/xunit.runner.reporters.net452.dll", - "build/net462/xunit.runner.utility.net452.dll", - "build/net462/xunit.runner.visualstudio.props", - "build/net462/xunit.runner.visualstudio.testadapter.dll", - "build/net6.0/xunit.abstractions.dll", - "build/net6.0/xunit.runner.reporters.netcoreapp10.dll", - "build/net6.0/xunit.runner.utility.netcoreapp10.dll", - "build/net6.0/xunit.runner.visualstudio.dotnetcore.testadapter.dll", - "build/net6.0/xunit.runner.visualstudio.props", - "lib/net462/_._", - "lib/net6.0/_._", - "xunit.runner.visualstudio.2.5.3.nupkg.sha512", - "xunit.runner.visualstudio.nuspec" - ] - }, - "IM_API/1.0.0": { - "type": "project", - "path": "../IM_API/IM_API.csproj", - "msbuildProject": "../IM_API/IM_API.csproj" - } - }, - "projectFileDependencyGroups": { - "net8.0": [ - "IM_API >= 1.0.0", - "Microsoft.EntityFrameworkCore.InMemory >= 8.0.22", - "Microsoft.NET.Test.Sdk >= 17.8.0", - "Moq >= 4.20.72", - "coverlet.collector >= 6.0.0", - "xunit >= 2.5.3", - "xunit.runner.visualstudio >= 2.5.3" - ] - }, - "packageFolders": { - "C:\\Users\\nanxun\\.nuget\\packages\\": {}, - "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {} - }, - "project": { - "version": "1.0.0", - "restore": { - "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj", - "projectName": "IMTest", - "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj", - "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", - "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\obj\\", - "projectStyle": "PackageReference", - "fallbackFolders": [ - "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" - ], - "configFilePaths": [ - "C:\\Users\\nanxun\\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" - ], - "originalTargetFrameworks": [ - "net8.0" - ], - "sources": { - "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, - "C:\\Program Files\\dotnet\\library-packs": {}, - "https://api.nuget.org/v3/index.json": {} - }, - "frameworks": { - "net8.0": { - "targetAlias": "net8.0", - "projectReferences": { - "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj": { - "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj" - } - } - } - }, - "warningProperties": { - "warnAsError": [ - "NU1605" - ] - }, - "restoreAuditProperties": { - "enableAudit": "true", - "auditLevel": "low", - "auditMode": "direct" - }, - "SdkAnalysisLevel": "9.0.300" - }, - "frameworks": { - "net8.0": { - "targetAlias": "net8.0", - "dependencies": { - "Microsoft.EntityFrameworkCore.InMemory": { - "target": "Package", - "version": "[8.0.22, )" - }, - "Microsoft.NET.Test.Sdk": { - "target": "Package", - "version": "[17.8.0, )" - }, - "Moq": { - "target": "Package", - "version": "[4.20.72, )" - }, - "coverlet.collector": { - "target": "Package", - "version": "[6.0.0, )" - }, - "xunit": { - "target": "Package", - "version": "[2.5.3, )" - }, - "xunit.runner.visualstudio": { - "target": "Package", - "version": "[2.5.3, )" - } - }, - "imports": [ - "net461", - "net462", - "net47", - "net471", - "net472", - "net48", - "net481" - ], - "assetTargetFallback": true, - "warn": true, - "frameworkReferences": { - "Microsoft.NETCore.App": { - "privateAssets": "all" - } - }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" - } - } - } +{ + "version": 3, + "targets": { + "net8.0": { + "AutoMapper/12.0.1": { + "type": "package", + "dependencies": { + "Microsoft.CSharp": "4.7.0" + }, + "compile": { + "lib/netstandard2.1/AutoMapper.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/AutoMapper.dll": { + "related": ".xml" + } + } + }, + "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.0": { + "type": "package", + "dependencies": { + "AutoMapper": "12.0.0", + "Microsoft.Extensions.Options": "6.0.0" + }, + "compile": { + "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll": {} + }, + "runtime": { + "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll": {} + } + }, + "Castle.Core/5.1.1": { + "type": "package", + "dependencies": { + "System.Diagnostics.EventLog": "6.0.0" + }, + "compile": { + "lib/net6.0/Castle.Core.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Castle.Core.dll": { + "related": ".xml" + } + } + }, + "coverlet.collector/6.0.0": { + "type": "package", + "build": { + "build/netstandard1.0/coverlet.collector.targets": {} + } + }, + "MassTransit/8.5.5": { + "type": "package", + "dependencies": { + "MassTransit.Abstractions": "8.5.5", + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0", + "Microsoft.Extensions.Diagnostics.HealthChecks": "8.0.0", + "Microsoft.Extensions.Hosting.Abstractions": "8.0.0", + "Microsoft.Extensions.Logging.Abstractions": "8.0.0", + "Microsoft.Extensions.Options": "8.0.0" + }, + "compile": { + "lib/net8.0/MassTransit.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/MassTransit.dll": { + "related": ".xml" + } + } + }, + "MassTransit.Abstractions/8.5.5": { + "type": "package", + "compile": { + "lib/net8.0/MassTransit.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/MassTransit.Abstractions.dll": { + "related": ".xml" + } + } + }, + "MassTransit.RabbitMQ/8.5.5": { + "type": "package", + "dependencies": { + "MassTransit": "8.5.5", + "RabbitMQ.Client": "7.1.2" + }, + "compile": { + "lib/net8.0/MassTransit.RabbitMqTransport.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/MassTransit.RabbitMqTransport.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Authentication.Abstractions/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "Microsoft.Extensions.Options": "8.0.2" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.21": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Protocols.OpenIdConnect": "7.1.2" + }, + "compile": { + "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": { + "related": ".xml" + } + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ] + }, + "Microsoft.AspNetCore.Authorization/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "Microsoft.Extensions.Options": "8.0.2" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Authorization.Policy/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication.Abstractions": "2.3.0", + "Microsoft.AspNetCore.Authorization": "2.3.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.Policy.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.Policy.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Connections.Abstractions/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Features": "2.3.0", + "System.IO.Pipelines": "8.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Hosting.Abstractions/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Hosting.Server.Abstractions": "2.3.0", + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", + "Microsoft.Extensions.Hosting.Abstractions": "8.0.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Features": "2.3.0", + "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Server.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Server.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Http/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", + "Microsoft.AspNetCore.WebUtilities": "2.3.0", + "Microsoft.Extensions.ObjectPool": "8.0.11", + "Microsoft.Extensions.Options": "8.0.2", + "Microsoft.Net.Http.Headers": "2.3.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Http.Abstractions/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Features": "2.3.0", + "System.Text.Encodings.Web": "8.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Http.Connections/1.2.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authorization.Policy": "2.3.0", + "Microsoft.AspNetCore.Hosting.Abstractions": "2.3.0", + "Microsoft.AspNetCore.Http": "2.3.0", + "Microsoft.AspNetCore.Http.Connections.Common": "1.2.0", + "Microsoft.AspNetCore.Routing": "2.3.0", + "Microsoft.AspNetCore.WebSockets": "2.3.0", + "Newtonsoft.Json": "11.0.2", + "System.Net.WebSockets.WebSocketProtocol": "5.1.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Common/1.2.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "2.3.0", + "Newtonsoft.Json": "11.0.2", + "System.Buffers": "4.6.0", + "System.IO.Pipelines": "8.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Http.Extensions/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0", + "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0", + "Microsoft.Net.Http.Headers": "2.3.0", + "System.Buffers": "4.6.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Extensions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Extensions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Http.Features/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Routing/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Extensions": "2.3.0", + "Microsoft.AspNetCore.Routing.Abstractions": "2.3.0", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "Microsoft.Extensions.ObjectPool": "8.0.11", + "Microsoft.Extensions.Options": "8.0.2" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Routing.Abstractions/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.3.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR/1.2.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Connections": "1.2.0", + "Microsoft.AspNetCore.SignalR.Core": "1.2.0", + "Microsoft.AspNetCore.WebSockets": "2.3.0", + "System.IO.Pipelines": "8.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Common/1.2.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "2.3.0", + "Microsoft.Extensions.Options": "8.0.2", + "Newtonsoft.Json": "11.0.2", + "System.Buffers": "4.6.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Core/1.2.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authorization": "2.3.0", + "Microsoft.AspNetCore.SignalR.Common": "1.2.0", + "Microsoft.AspNetCore.SignalR.Protocols.Json": "1.2.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "System.IO.Pipelines": "8.0.0", + "System.Reflection.Emit": "4.7.0", + "System.Threading.Channels": "8.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Core.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Core.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/1.2.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "1.2.0", + "Newtonsoft.Json": "11.0.2", + "System.IO.Pipelines": "8.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.WebSockets/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Extensions": "2.3.0", + "Microsoft.Extensions.Options": "8.0.2", + "System.Net.WebSockets.WebSocketProtocol": "5.1.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.WebSockets.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.WebSockets.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.WebUtilities/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.Net.Http.Headers": "2.3.0", + "System.Text.Encodings.Web": "8.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.WebUtilities.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.WebUtilities.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Bcl.AsyncInterfaces/1.1.0": { + "type": "package", + "compile": { + "ref/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": {} + }, + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "related": ".xml" + } + } + }, + "Microsoft.CodeCoverage/17.8.0": { + "type": "package", + "compile": { + "lib/netcoreapp3.1/Microsoft.VisualStudio.CodeCoverage.Shim.dll": {} + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.VisualStudio.CodeCoverage.Shim.dll": {} + }, + "build": { + "build/netstandard2.0/Microsoft.CodeCoverage.props": {}, + "build/netstandard2.0/Microsoft.CodeCoverage.targets": {} + } + }, + "Microsoft.CSharp/4.7.0": { + "type": "package", + "compile": { + "ref/netcoreapp2.0/_._": {} + }, + "runtime": { + "lib/netcoreapp2.0/_._": {} + } + }, + "Microsoft.EntityFrameworkCore/8.0.22": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore.Abstractions": "8.0.22", + "Microsoft.EntityFrameworkCore.Analyzers": "8.0.22", + "Microsoft.Extensions.Caching.Memory": "8.0.1", + "Microsoft.Extensions.Logging": "8.0.1" + }, + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props": {} + } + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.22": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.22": { + "type": "package", + "compile": { + "lib/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/_._": {} + } + }, + "Microsoft.EntityFrameworkCore.InMemory/8.0.22": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.22" + }, + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.InMemory.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.InMemory.dll": { + "related": ".xml" + } + } + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.13": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "8.0.13", + "Microsoft.Extensions.Configuration.Abstractions": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.ApiDescription.Server/6.0.5": { + "type": "package", + "build": { + "build/_._": {} + }, + "buildMultiTargeting": { + "buildMultiTargeting/_._": {} + } + }, + "Microsoft.Extensions.Caching.Abstractions/10.0.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "10.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "8.0.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "Microsoft.Extensions.Options": "8.0.2", + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Caching.StackExchangeRedis/10.0.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "10.0.2", + "Microsoft.Extensions.Logging.Abstractions": "10.0.2", + "Microsoft.Extensions.Options": "10.0.2", + "StackExchange.Redis": "2.7.27" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Caching.StackExchangeRedis.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Caching.StackExchangeRedis.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.Diagnostics.Abstractions/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2", + "Microsoft.Extensions.Options": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Diagnostics.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Diagnostics.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Diagnostics.HealthChecks/8.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions": "8.0.0", + "Microsoft.Extensions.Hosting.Abstractions": "8.0.0", + "Microsoft.Extensions.Logging.Abstractions": "8.0.0", + "Microsoft.Extensions.Options": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/8.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.FileProviders.Abstractions/8.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "8.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.FileProviders.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.FileProviders.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Hosting.Abstractions/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "8.0.0", + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2", + "Microsoft.Extensions.Diagnostics.Abstractions": "8.0.1", + "Microsoft.Extensions.FileProviders.Abstractions": "8.0.0", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Hosting.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Hosting.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Logging/8.0.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "8.0.1", + "Microsoft.Extensions.Logging.Abstractions": "8.0.2", + "Microsoft.Extensions.Options": "8.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "System.Diagnostics.DiagnosticSource": "10.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {} + } + }, + "Microsoft.Extensions.ObjectPool/8.0.11": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.ObjectPool.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.ObjectPool.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.Options/10.0.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2", + "Microsoft.Extensions.Primitives": "10.0.2" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.Extensions.Options.targets": {} + } + }, + "Microsoft.Extensions.Primitives/10.0.2": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.IdentityModel.Abstractions/8.14.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.JsonWebTokens/8.14.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Tokens": "8.14.0" + }, + "compile": { + "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Logging/8.14.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Abstractions": "8.14.0" + }, + "compile": { + "lib/net8.0/Microsoft.IdentityModel.Logging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Logging.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Protocols/7.1.2": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Logging": "7.1.2", + "Microsoft.IdentityModel.Tokens": "7.1.2" + }, + "compile": { + "lib/net8.0/Microsoft.IdentityModel.Protocols.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Protocols.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.1.2": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Protocols": "7.1.2", + "System.IdentityModel.Tokens.Jwt": "7.1.2" + }, + "compile": { + "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": { + "related": ".xml" + } + } + }, + "Microsoft.IdentityModel.Tokens/8.14.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "8.0.0", + "Microsoft.IdentityModel.Logging": "8.14.0" + }, + "compile": { + "lib/net8.0/Microsoft.IdentityModel.Tokens.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.IdentityModel.Tokens.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Net.Http.Headers/2.3.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "8.0.0", + "System.Buffers": "4.6.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Net.Http.Headers.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Net.Http.Headers.dll": { + "related": ".xml" + } + } + }, + "Microsoft.NET.Test.Sdk/17.8.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeCoverage": "17.8.0", + "Microsoft.TestPlatform.TestHost": "17.8.0" + }, + "compile": { + "lib/netcoreapp3.1/_._": {} + }, + "runtime": { + "lib/netcoreapp3.1/_._": {} + }, + "build": { + "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.props": {}, + "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.targets": {} + }, + "buildMultiTargeting": { + "buildMultiTargeting/Microsoft.NET.Test.Sdk.props": {} + } + }, + "Microsoft.NETCore.Platforms/1.1.0": { + "type": "package", + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "Microsoft.NETCore.Targets/1.1.0": { + "type": "package", + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "Microsoft.OpenApi/1.6.14": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.OpenApi.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.OpenApi.dll": { + "related": ".pdb;.xml" + } + } + }, + "Microsoft.TestPlatform.ObjectModel/17.8.0": { + "type": "package", + "dependencies": { + "NuGet.Frameworks": "6.5.0", + "System.Reflection.Metadata": "1.6.0" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll": {}, + "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll": {}, + "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll": {} + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll": {}, + "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll": {}, + "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll": {} + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll": { + "locale": "zh-Hant" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": { + "locale": "zh-Hant" + } + } + }, + "Microsoft.TestPlatform.TestHost/17.8.0": { + "type": "package", + "dependencies": { + "Microsoft.TestPlatform.ObjectModel": "17.8.0", + "Newtonsoft.Json": "13.0.1" + }, + "compile": { + "lib/netcoreapp3.1/Microsoft.TestPlatform.CommunicationUtilities.dll": {}, + "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll": {}, + "lib/netcoreapp3.1/Microsoft.TestPlatform.CrossPlatEngine.dll": {}, + "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll": {}, + "lib/netcoreapp3.1/Microsoft.TestPlatform.Utilities.dll": {}, + "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.Common.dll": {}, + "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll": {}, + "lib/netcoreapp3.1/testhost.dll": { + "related": ".deps.json" + } + }, + "runtime": { + "lib/netcoreapp3.1/Microsoft.TestPlatform.CommunicationUtilities.dll": {}, + "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll": {}, + "lib/netcoreapp3.1/Microsoft.TestPlatform.CrossPlatEngine.dll": {}, + "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll": {}, + "lib/netcoreapp3.1/Microsoft.TestPlatform.Utilities.dll": {}, + "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.Common.dll": {}, + "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll": {}, + "lib/netcoreapp3.1/testhost.dll": { + "related": ".deps.json" + } + }, + "resource": { + "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "cs" + }, + "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "de" + }, + "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "es" + }, + "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "fr" + }, + "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "it" + }, + "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "ja" + }, + "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "ko" + }, + "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "pl" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "pt-BR" + }, + "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "ru" + }, + "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "tr" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "zh-Hans" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": { + "locale": "zh-Hant" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": { + "locale": "zh-Hant" + }, + "lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": { + "locale": "zh-Hant" + } + }, + "build": { + "build/netcoreapp3.1/Microsoft.TestPlatform.TestHost.props": {} + } + }, + "Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.22.1": { + "type": "package", + "build": { + "build/_._": {} + } + }, + "Microsoft.Win32.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/Microsoft.Win32.Primitives.dll": { + "related": ".xml" + } + } + }, + "Moq/4.20.72": { + "type": "package", + "dependencies": { + "Castle.Core": "5.1.1" + }, + "compile": { + "lib/net6.0/Moq.dll": {} + }, + "runtime": { + "lib/net6.0/Moq.dll": {} + } + }, + "MySqlConnector/2.3.5": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "7.0.1" + }, + "compile": { + "lib/net8.0/MySqlConnector.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/MySqlConnector.dll": { + "related": ".xml" + } + } + }, + "NETStandard.Library/1.6.1": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.Win32.Primitives": "4.3.0", + "System.AppContext": "4.3.0", + "System.Collections": "4.3.0", + "System.Collections.Concurrent": "4.3.0", + "System.Console": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tools": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Calendars": "4.3.0", + "System.IO": "4.3.0", + "System.IO.Compression": "4.3.0", + "System.IO.Compression.ZipFile": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Linq": "4.3.0", + "System.Linq.Expressions": "4.3.0", + "System.Net.Http": "4.3.0", + "System.Net.Primitives": "4.3.0", + "System.Net.Sockets": "4.3.0", + "System.ObjectModel": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.InteropServices.RuntimeInformation": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Security.Cryptography.X509Certificates": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Text.Encoding.Extensions": "4.3.0", + "System.Text.RegularExpressions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "System.Threading.Timer": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0", + "System.Xml.XDocument": "4.3.0" + } + }, + "Newtonsoft.Json/13.0.4": { + "type": "package", + "compile": { + "lib/net6.0/Newtonsoft.Json.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/Newtonsoft.Json.dll": { + "related": ".xml" + } + } + }, + "NuGet.Frameworks/6.5.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/NuGet.Frameworks.dll": {} + }, + "runtime": { + "lib/netstandard2.0/NuGet.Frameworks.dll": {} + } + }, + "Pipelines.Sockets.Unofficial/2.2.8": { + "type": "package", + "dependencies": { + "System.IO.Pipelines": "5.0.1" + }, + "compile": { + "lib/net5.0/Pipelines.Sockets.Unofficial.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net5.0/Pipelines.Sockets.Unofficial.dll": { + "related": ".xml" + } + } + }, + "Pomelo.EntityFrameworkCore.MySql/8.0.3": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore.Relational": "[8.0.13, 8.0.999]", + "MySqlConnector": "2.3.5" + }, + "compile": { + "lib/net8.0/Pomelo.EntityFrameworkCore.MySql.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Pomelo.EntityFrameworkCore.MySql.dll": { + "related": ".xml" + } + } + }, + "RabbitMQ.Client/7.1.2": { + "type": "package", + "dependencies": { + "System.IO.Pipelines": "8.0.0", + "System.Threading.RateLimiting": "8.0.0" + }, + "compile": { + "lib/net8.0/RabbitMQ.Client.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/RabbitMQ.Client.dll": { + "related": ".xml" + } + } + }, + "RedLock.net/2.3.2": { + "type": "package", + "dependencies": { + "Microsoft.Bcl.AsyncInterfaces": "1.1.0", + "Microsoft.Extensions.Logging": "2.0.0", + "Microsoft.Extensions.Logging.Abstractions": "2.0.0", + "StackExchange.Redis": "2.0.513" + }, + "compile": { + "lib/netstandard2.0/RedLockNet.Abstractions.dll": {}, + "lib/netstandard2.0/RedLockNet.SERedis.dll": {} + }, + "runtime": { + "lib/netstandard2.0/RedLockNet.Abstractions.dll": {}, + "lib/netstandard2.0/RedLockNet.SERedis.dll": {} + } + }, + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/debian.8-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "debian.8-x64" + } + } + }, + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/fedora.23-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "fedora.23-x64" + } + } + }, + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/fedora.24-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "fedora.24-x64" + } + } + }, + "runtime.native.System/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.native.System.IO.Compression/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.native.System.Net.Http/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "type": "package", + "dependencies": { + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "dependencies": { + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/opensuse.13.2-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "opensuse.13.2-x64" + } + } + }, + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/opensuse.42.1-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "opensuse.42.1-x64" + } + } + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.Apple.dylib": { + "assetType": "native", + "rid": "osx.10.10-x64" + } + } + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.OpenSsl.dylib": { + "assetType": "native", + "rid": "osx.10.10-x64" + } + } + }, + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/rhel.7-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "rhel.7-x64" + } + } + }, + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/ubuntu.14.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "ubuntu.14.04-x64" + } + } + }, + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/ubuntu.16.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "ubuntu.16.04-x64" + } + } + }, + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/ubuntu.16.10-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "ubuntu.16.10-x64" + } + } + }, + "StackExchange.Redis/2.9.32": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "8.0.0", + "Pipelines.Sockets.Unofficial": "2.2.8" + }, + "compile": { + "lib/net8.0/StackExchange.Redis.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/StackExchange.Redis.dll": { + "related": ".xml" + } + } + }, + "Swashbuckle.AspNetCore/6.6.2": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.ApiDescription.Server": "6.0.5", + "Swashbuckle.AspNetCore.Swagger": "6.6.2", + "Swashbuckle.AspNetCore.SwaggerGen": "6.6.2", + "Swashbuckle.AspNetCore.SwaggerUI": "6.6.2" + }, + "build": { + "build/_._": {} + } + }, + "Swashbuckle.AspNetCore.Swagger/6.6.2": { + "type": "package", + "dependencies": { + "Microsoft.OpenApi": "1.6.14" + }, + "compile": { + "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": { + "related": ".pdb;.xml" + } + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ] + }, + "Swashbuckle.AspNetCore.SwaggerGen/6.6.2": { + "type": "package", + "dependencies": { + "Swashbuckle.AspNetCore.Swagger": "6.6.2" + }, + "compile": { + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { + "related": ".pdb;.xml" + } + } + }, + "Swashbuckle.AspNetCore.SwaggerUI/6.6.2": { + "type": "package", + "compile": { + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { + "related": ".pdb;.xml" + } + }, + "runtime": { + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { + "related": ".pdb;.xml" + } + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ] + }, + "System.AppContext/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/System.AppContext.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.6/System.AppContext.dll": {} + } + }, + "System.Buffers/4.6.0": { + "type": "package", + "compile": { + "lib/netcoreapp2.1/_._": {} + }, + "runtime": { + "lib/netcoreapp2.1/_._": {} + } + }, + "System.Collections/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Collections.dll": { + "related": ".xml" + } + } + }, + "System.Collections.Concurrent/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Collections.Concurrent.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Collections.Concurrent.dll": {} + } + }, + "System.Console/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Console.dll": { + "related": ".xml" + } + } + }, + "System.Diagnostics.Debug/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Diagnostics.Debug.dll": { + "related": ".xml" + } + } + }, + "System.Diagnostics.DiagnosticSource/10.0.2": { + "type": "package", + "compile": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.Diagnostics.EventLog/6.0.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Diagnostics.EventLog.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Diagnostics.EventLog.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/netcoreapp3.1/_._": {} + }, + "runtimeTargets": { + "runtimes/win/lib/net6.0/System.Diagnostics.EventLog.Messages.dll": { + "assetType": "runtime", + "rid": "win" + }, + "runtimes/win/lib/net6.0/System.Diagnostics.EventLog.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Diagnostics.Tools/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Diagnostics.Tools.dll": { + "related": ".xml" + } + } + }, + "System.Diagnostics.Tracing/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.Diagnostics.Tracing.dll": { + "related": ".xml" + } + } + }, + "System.Globalization/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Globalization.dll": { + "related": ".xml" + } + } + }, + "System.Globalization.Calendars/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Globalization": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Globalization.Calendars.dll": { + "related": ".xml" + } + } + }, + "System.Globalization.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.InteropServices": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": { + "related": ".xml" + } + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.3/System.Globalization.Extensions.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.Globalization.Extensions.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.IdentityModel.Tokens.Jwt/8.14.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.JsonWebTokens": "8.14.0", + "Microsoft.IdentityModel.Tokens": "8.14.0" + }, + "compile": { + "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll": { + "related": ".xml" + } + } + }, + "System.IO/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.IO.dll": { + "related": ".xml" + } + } + }, + "System.IO.Compression/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Buffers": "4.3.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.IO.Compression": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.IO.Compression.dll": { + "related": ".xml" + } + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.3/System.IO.Compression.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.IO.Compression.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.IO.Compression.ZipFile/4.3.0": { + "type": "package", + "dependencies": { + "System.Buffers": "4.3.0", + "System.IO": "4.3.0", + "System.IO.Compression": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Text.Encoding": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.IO.Compression.ZipFile.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.IO.Compression.ZipFile.dll": {} + } + }, + "System.IO.FileSystem/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.IO.FileSystem.dll": { + "related": ".xml" + } + } + }, + "System.IO.FileSystem.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.IO.FileSystem.Primitives.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.IO.FileSystem.Primitives.dll": {} + } + }, + "System.IO.Pipelines/8.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.Linq/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/System.Linq.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.6/System.Linq.dll": {} + } + }, + "System.Linq.Expressions/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Linq": "4.3.0", + "System.ObjectModel": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Emit": "4.3.0", + "System.Reflection.Emit.ILGeneration": "4.3.0", + "System.Reflection.Emit.Lightweight": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Reflection.TypeExtensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/System.Linq.Expressions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.6/System.Linq.Expressions.dll": {} + } + }, + "System.Net.Http/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.DiagnosticSource": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Extensions": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.Net.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.OpenSsl": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Security.Cryptography.X509Certificates": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.Net.Http": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Net.Http.dll": { + "related": ".xml" + } + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.6/System.Net.Http.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.Net.Http.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Net.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Net.Primitives.dll": { + "related": ".xml" + } + } + }, + "System.Net.Sockets/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.Net.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Net.Sockets.dll": { + "related": ".xml" + } + } + }, + "System.Net.WebSockets.WebSocketProtocol/5.1.0": { + "type": "package", + "compile": { + "lib/net6.0/System.Net.WebSockets.WebSocketProtocol.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net6.0/System.Net.WebSockets.WebSocketProtocol.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.ObjectModel/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.ObjectModel.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.ObjectModel.dll": {} + } + }, + "System.Reflection/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.Reflection.dll": { + "related": ".xml" + } + } + }, + "System.Reflection.Emit/4.7.0": { + "type": "package", + "compile": { + "ref/netcoreapp2.0/_._": {} + }, + "runtime": { + "lib/netcoreapp2.0/_._": {} + } + }, + "System.Reflection.Emit.ILGeneration/4.3.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Reflection.Emit.ILGeneration.dll": {} + } + }, + "System.Reflection.Emit.Lightweight/4.3.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.3.0", + "System.Reflection.Emit.ILGeneration": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Reflection.Emit.Lightweight.dll": {} + } + }, + "System.Reflection.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Reflection.Extensions.dll": { + "related": ".xml" + } + } + }, + "System.Reflection.Metadata/1.6.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/System.Reflection.Metadata.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/System.Reflection.Metadata.dll": { + "related": ".xml" + } + } + }, + "System.Reflection.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Reflection.Primitives.dll": { + "related": ".xml" + } + } + }, + "System.Reflection.TypeExtensions/4.3.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.5/System.Reflection.TypeExtensions.dll": {} + } + }, + "System.Resources.ResourceManager/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Globalization": "4.3.0", + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Resources.ResourceManager.dll": { + "related": ".xml" + } + } + }, + "System.Runtime/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + }, + "compile": { + "ref/netstandard1.5/System.Runtime.dll": { + "related": ".xml" + } + } + }, + "System.Runtime.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.Runtime.Extensions.dll": { + "related": ".xml" + } + } + }, + "System.Runtime.Handles/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Runtime.Handles.dll": { + "related": ".xml" + } + } + }, + "System.Runtime.InteropServices/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Reflection": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0" + }, + "compile": { + "ref/netcoreapp1.1/System.Runtime.InteropServices.dll": {} + } + }, + "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Threading": "4.3.0", + "runtime.native.System": "4.3.0" + }, + "compile": { + "ref/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {} + }, + "runtime": { + "lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Runtime.Numerics/4.3.0": { + "type": "package", + "dependencies": { + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0" + }, + "compile": { + "ref/netstandard1.1/System.Runtime.Numerics.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Runtime.Numerics.dll": {} + } + }, + "System.Security.Cryptography.Algorithms/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.Apple": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/System.Security.Cryptography.Algorithms.dll": {} + }, + "runtimeTargets": { + "runtimes/osx/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { + "assetType": "runtime", + "rid": "osx" + }, + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.Cng/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/_._": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Cng.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Cng.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.Csp/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.IO": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Csp.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Csp.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.Encoding/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.Collections.Concurrent": "4.3.0", + "System.Linq": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Security.Cryptography.Encoding.dll": { + "related": ".xml" + } + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/_._": {} + }, + "runtime": { + "lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll": { + "assetType": "runtime", + "rid": "unix" + } + } + }, + "System.Security.Cryptography.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Security.Cryptography.Primitives.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Security.Cryptography.Primitives.dll": {} + } + }, + "System.Security.Cryptography.X509Certificates/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Calendars": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Cng": "4.3.0", + "System.Security.Cryptography.Csp": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.OpenSsl": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.Net.Http": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.dll": { + "related": ".xml" + } + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Text.Encoding/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Text.Encoding.dll": { + "related": ".xml" + } + } + }, + "System.Text.Encoding.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Text.Encoding.Extensions.dll": { + "related": ".xml" + } + } + }, + "System.Text.Encodings.Web/8.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + }, + "runtimeTargets": { + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { + "assetType": "runtime", + "rid": "browser" + } + } + }, + "System.Text.RegularExpressions/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netcoreapp1.1/System.Text.RegularExpressions.dll": {} + }, + "runtime": { + "lib/netstandard1.6/System.Text.RegularExpressions.dll": {} + } + }, + "System.Threading/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Threading.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Threading.dll": {} + } + }, + "System.Threading.Channels/8.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Threading.Channels.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Threading.Channels.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.Threading.RateLimiting/8.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Threading.RateLimiting.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Threading.RateLimiting.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net6.0/_._": {} + } + }, + "System.Threading.Tasks/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Threading.Tasks.dll": { + "related": ".xml" + } + } + }, + "System.Threading.Tasks.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/_._": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.0/System.Threading.Tasks.Extensions.dll": { + "related": ".xml" + } + } + }, + "System.Threading.Timer/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.2/System.Threading.Timer.dll": { + "related": ".xml" + } + } + }, + "System.Xml.ReaderWriter/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Text.Encoding.Extensions": "4.3.0", + "System.Text.RegularExpressions": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "System.Threading.Tasks.Extensions": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Xml.ReaderWriter.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Xml.ReaderWriter.dll": {} + } + }, + "System.Xml.XDocument/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tools": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Xml.XDocument.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.3/System.Xml.XDocument.dll": {} + } + }, + "xunit/2.5.3": { + "type": "package", + "dependencies": { + "xunit.analyzers": "1.4.0", + "xunit.assert": "2.5.3", + "xunit.core": "[2.5.3]" + } + }, + "xunit.abstractions/2.0.3": { + "type": "package", + "compile": { + "lib/netstandard2.0/xunit.abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/xunit.abstractions.dll": { + "related": ".xml" + } + } + }, + "xunit.analyzers/1.4.0": { + "type": "package" + }, + "xunit.assert/2.5.3": { + "type": "package", + "dependencies": { + "NETStandard.Library": "1.6.1" + }, + "compile": { + "lib/netstandard1.1/xunit.assert.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.1/xunit.assert.dll": { + "related": ".xml" + } + } + }, + "xunit.core/2.5.3": { + "type": "package", + "dependencies": { + "xunit.extensibility.core": "[2.5.3]", + "xunit.extensibility.execution": "[2.5.3]" + }, + "build": { + "build/xunit.core.props": {}, + "build/xunit.core.targets": {} + }, + "buildMultiTargeting": { + "buildMultiTargeting/xunit.core.props": {}, + "buildMultiTargeting/xunit.core.targets": {} + } + }, + "xunit.extensibility.core/2.5.3": { + "type": "package", + "dependencies": { + "NETStandard.Library": "1.6.1", + "xunit.abstractions": "2.0.3" + }, + "compile": { + "lib/netstandard1.1/xunit.core.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.1/xunit.core.dll": { + "related": ".xml" + } + } + }, + "xunit.extensibility.execution/2.5.3": { + "type": "package", + "dependencies": { + "NETStandard.Library": "1.6.1", + "xunit.extensibility.core": "[2.5.3]" + }, + "compile": { + "lib/netstandard1.1/xunit.execution.dotnet.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard1.1/xunit.execution.dotnet.dll": { + "related": ".xml" + } + } + }, + "xunit.runner.visualstudio/2.5.3": { + "type": "package", + "compile": { + "lib/net6.0/_._": {} + }, + "runtime": { + "lib/net6.0/_._": {} + }, + "build": { + "build/net6.0/xunit.runner.visualstudio.props": {} + } + }, + "IM_API/1.0.0": { + "type": "project", + "framework": ".NETCoreApp,Version=v8.0", + "dependencies": { + "AutoMapper": "12.0.1", + "AutoMapper.Extensions.Microsoft.DependencyInjection": "12.0.0", + "MassTransit.RabbitMQ": "8.5.5", + "Microsoft.AspNetCore.Authentication.JwtBearer": "8.0.21", + "Microsoft.AspNetCore.SignalR": "1.2.0", + "Microsoft.Extensions.Caching.StackExchangeRedis": "10.0.2", + "Microsoft.VisualStudio.Azure.Containers.Tools.Targets": "1.22.1", + "Newtonsoft.Json": "13.0.4", + "Pomelo.EntityFrameworkCore.MySql": "8.0.3", + "RedLock.net": "2.3.2", + "StackExchange.Redis": "2.9.32", + "Swashbuckle.AspNetCore": "6.6.2", + "System.IdentityModel.Tokens.Jwt": "8.14.0" + }, + "compile": { + "bin/placeholder/IM_API.dll": {} + }, + "runtime": { + "bin/placeholder/IM_API.dll": {} + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ] + } + } + }, + "libraries": { + "AutoMapper/12.0.1": { + "sha512": "hvV62vl6Hp/WfQ24yzo3Co9+OPl8wH8hApwVtgWpiAynVJkUcs7xvehnSftawL8Pe8FrPffBRM3hwzLQqWDNjA==", + "type": "package", + "path": "automapper/12.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "automapper.12.0.1.nupkg.sha512", + "automapper.nuspec", + "icon.png", + "lib/netstandard2.1/AutoMapper.dll", + "lib/netstandard2.1/AutoMapper.xml" + ] + }, + "AutoMapper.Extensions.Microsoft.DependencyInjection/12.0.0": { + "sha512": "XCJ4E3oKrbRl1qY9Mr+7uyC0xZj1+bqQjmQRWTiTKiVuuXTny+7YFWHi20tPjwkMukLbicN6yGlDy5PZ4wyi1w==", + "type": "package", + "path": "automapper.extensions.microsoft.dependencyinjection/12.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "automapper.extensions.microsoft.dependencyinjection.12.0.0.nupkg.sha512", + "automapper.extensions.microsoft.dependencyinjection.nuspec", + "icon.png", + "lib/netstandard2.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll" + ] + }, + "Castle.Core/5.1.1": { + "sha512": "rpYtIczkzGpf+EkZgDr9CClTdemhsrwA/W5hMoPjLkRFnXzH44zDLoovXeKtmxb1ykXK9aJVODSpiJml8CTw2g==", + "type": "package", + "path": "castle.core/5.1.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ASL - Apache Software Foundation License.txt", + "CHANGELOG.md", + "LICENSE", + "castle-logo.png", + "castle.core.5.1.1.nupkg.sha512", + "castle.core.nuspec", + "lib/net462/Castle.Core.dll", + "lib/net462/Castle.Core.xml", + "lib/net6.0/Castle.Core.dll", + "lib/net6.0/Castle.Core.xml", + "lib/netstandard2.0/Castle.Core.dll", + "lib/netstandard2.0/Castle.Core.xml", + "lib/netstandard2.1/Castle.Core.dll", + "lib/netstandard2.1/Castle.Core.xml", + "readme.txt" + ] + }, + "coverlet.collector/6.0.0": { + "sha512": "tW3lsNS+dAEII6YGUX/VMoJjBS1QvsxqJeqLaJXub08y1FSjasFPtQ4UBUsudE9PNrzLjooClMsPtY2cZLdXpQ==", + "type": "package", + "path": "coverlet.collector/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "build/netstandard1.0/Microsoft.Bcl.AsyncInterfaces.dll", + "build/netstandard1.0/Microsoft.CSharp.dll", + "build/netstandard1.0/Microsoft.DotNet.PlatformAbstractions.dll", + "build/netstandard1.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "build/netstandard1.0/Microsoft.Extensions.DependencyInjection.dll", + "build/netstandard1.0/Microsoft.Extensions.DependencyModel.dll", + "build/netstandard1.0/Microsoft.Extensions.FileSystemGlobbing.dll", + "build/netstandard1.0/Microsoft.TestPlatform.CoreUtilities.dll", + "build/netstandard1.0/Microsoft.TestPlatform.PlatformAbstractions.dll", + "build/netstandard1.0/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll", + "build/netstandard1.0/Mono.Cecil.Mdb.dll", + "build/netstandard1.0/Mono.Cecil.Pdb.dll", + "build/netstandard1.0/Mono.Cecil.Rocks.dll", + "build/netstandard1.0/Mono.Cecil.dll", + "build/netstandard1.0/Newtonsoft.Json.dll", + "build/netstandard1.0/NuGet.Frameworks.dll", + "build/netstandard1.0/System.AppContext.dll", + "build/netstandard1.0/System.Collections.Immutable.dll", + "build/netstandard1.0/System.Dynamic.Runtime.dll", + "build/netstandard1.0/System.IO.FileSystem.Primitives.dll", + "build/netstandard1.0/System.Linq.Expressions.dll", + "build/netstandard1.0/System.Linq.dll", + "build/netstandard1.0/System.ObjectModel.dll", + "build/netstandard1.0/System.Reflection.Emit.ILGeneration.dll", + "build/netstandard1.0/System.Reflection.Emit.Lightweight.dll", + "build/netstandard1.0/System.Reflection.Emit.dll", + "build/netstandard1.0/System.Reflection.Metadata.dll", + "build/netstandard1.0/System.Reflection.TypeExtensions.dll", + "build/netstandard1.0/System.Runtime.CompilerServices.Unsafe.dll", + "build/netstandard1.0/System.Runtime.Serialization.Primitives.dll", + "build/netstandard1.0/System.Text.RegularExpressions.dll", + "build/netstandard1.0/System.Threading.Tasks.Extensions.dll", + "build/netstandard1.0/System.Threading.dll", + "build/netstandard1.0/System.Xml.ReaderWriter.dll", + "build/netstandard1.0/System.Xml.XDocument.dll", + "build/netstandard1.0/coverlet.collector.deps.json", + "build/netstandard1.0/coverlet.collector.dll", + "build/netstandard1.0/coverlet.collector.pdb", + "build/netstandard1.0/coverlet.collector.targets", + "build/netstandard1.0/coverlet.core.dll", + "build/netstandard1.0/coverlet.core.pdb", + "coverlet-icon.png", + "coverlet.collector.6.0.0.nupkg.sha512", + "coverlet.collector.nuspec" + ] + }, + "MassTransit/8.5.5": { + "sha512": "bSg8k5q+rP1s+dIGXLLbctqDGdIkfDjdxwNWtCUH7xNCN9ZuM7mqSPQPIFgaYIi34e81m4FqAqo4CAHuWPkhRA==", + "type": "package", + "path": "masstransit/8.5.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "NuGet.README.md", + "lib/net472/MassTransit.dll", + "lib/net472/MassTransit.xml", + "lib/net8.0/MassTransit.dll", + "lib/net8.0/MassTransit.xml", + "lib/net9.0/MassTransit.dll", + "lib/net9.0/MassTransit.xml", + "lib/netstandard2.0/MassTransit.dll", + "lib/netstandard2.0/MassTransit.xml", + "masstransit.8.5.5.nupkg.sha512", + "masstransit.nuspec", + "mt-logo-small.png" + ] + }, + "MassTransit.Abstractions/8.5.5": { + "sha512": "0mn2Ay17dD6z5tgSLjbVRlldSbL9iowzFEfVgVfBXVG5ttz9dSWeR4TrdD6pqH93GWXp4CvSmF8i1HqxLX7DZw==", + "type": "package", + "path": "masstransit.abstractions/8.5.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "NuGet.README.md", + "lib/net472/MassTransit.Abstractions.dll", + "lib/net472/MassTransit.Abstractions.xml", + "lib/net8.0/MassTransit.Abstractions.dll", + "lib/net8.0/MassTransit.Abstractions.xml", + "lib/net9.0/MassTransit.Abstractions.dll", + "lib/net9.0/MassTransit.Abstractions.xml", + "lib/netstandard2.0/MassTransit.Abstractions.dll", + "lib/netstandard2.0/MassTransit.Abstractions.xml", + "masstransit.abstractions.8.5.5.nupkg.sha512", + "masstransit.abstractions.nuspec", + "mt-logo-small.png" + ] + }, + "MassTransit.RabbitMQ/8.5.5": { + "sha512": "UxWn4o90YVMF9PBkJeoskOFPneh6YtnI1fLJHtvZiSAG0eoiRrWPGa+6FQCvjkQ/ljCKfjzok2eGZc/vmNZ01A==", + "type": "package", + "path": "masstransit.rabbitmq/8.5.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "NuGet.README.md", + "lib/net472/MassTransit.RabbitMqTransport.dll", + "lib/net472/MassTransit.RabbitMqTransport.xml", + "lib/net8.0/MassTransit.RabbitMqTransport.dll", + "lib/net8.0/MassTransit.RabbitMqTransport.xml", + "lib/net9.0/MassTransit.RabbitMqTransport.dll", + "lib/net9.0/MassTransit.RabbitMqTransport.xml", + "lib/netstandard2.0/MassTransit.RabbitMqTransport.dll", + "lib/netstandard2.0/MassTransit.RabbitMqTransport.xml", + "masstransit.rabbitmq.8.5.5.nupkg.sha512", + "masstransit.rabbitmq.nuspec", + "mt-logo-small.png" + ] + }, + "Microsoft.AspNetCore.Authentication.Abstractions/2.3.0": { + "sha512": "ve6uvLwKNRkfnO/QeN9M8eUJ49lCnWv/6/9p6iTEuiI6Rtsz+myaBAjdMzLuTViQY032xbTF5AdZF5BJzJJyXQ==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.abstractions/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.xml", + "microsoft.aspnetcore.authentication.abstractions.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.authentication.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Authentication.JwtBearer/8.0.21": { + "sha512": "ZuUpJ4DvmVArmTlyGGg+b9IdKgd8Kw0SmEzhjy4dQw8R6rxfNqCXfGvGm3ld7xlrgthJFou/le9tadsSyjFLuw==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.jwtbearer/8.0.21", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll", + "lib/net8.0/Microsoft.AspNetCore.Authentication.JwtBearer.xml", + "microsoft.aspnetcore.authentication.jwtbearer.8.0.21.nupkg.sha512", + "microsoft.aspnetcore.authentication.jwtbearer.nuspec" + ] + }, + "Microsoft.AspNetCore.Authorization/2.3.0": { + "sha512": "2/aBgLqBXva/+w8pzRNY8ET43Gi+dr1gv/7ySfbsh23lTK6IAgID5MGUEa1hreNIF+0XpW4tX7QwVe70+YvaPg==", + "type": "package", + "path": "microsoft.aspnetcore.authorization/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.xml", + "microsoft.aspnetcore.authorization.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.authorization.nuspec" + ] + }, + "Microsoft.AspNetCore.Authorization.Policy/2.3.0": { + "sha512": "vn31uQ1dA1MIV2WNNDOOOm88V5KgR9esfi0LyQ6eVaGq2h0Yw+R29f5A6qUNJt+RccS3qkYayylAy9tP1wV+7Q==", + "type": "package", + "path": "microsoft.aspnetcore.authorization.policy/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.Policy.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.Policy.xml", + "microsoft.aspnetcore.authorization.policy.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.authorization.policy.nuspec" + ] + }, + "Microsoft.AspNetCore.Connections.Abstractions/2.3.0": { + "sha512": "ULFSa+/L+WiAHVlIFHyg0OmHChU9Hx+K+xnt0hbIU5XmT1EGy0pNDx23QAzDtAy9jxQrTG6MX0MdvMeU4D4c7w==", + "type": "package", + "path": "microsoft.aspnetcore.connections.abstractions/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.xml", + "microsoft.aspnetcore.connections.abstractions.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.connections.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Hosting.Abstractions/2.3.0": { + "sha512": "4ivq53W2k6Nj4eez9wc81ytfGj6HR1NaZJCpOrvghJo9zHuQF57PLhPoQH5ItyCpHXnrN/y7yJDUm+TGYzrx0w==", + "type": "package", + "path": "microsoft.aspnetcore.hosting.abstractions/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Abstractions.xml", + "microsoft.aspnetcore.hosting.abstractions.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.hosting.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.3.0": { + "sha512": "F5iHx7odAbFKBV1DNPDkFFcVmD5Tk7rk+tYm3LMQxHEFFdjlg5QcYb5XhHAefl5YaaPeG6ad+/ck8kSG3/D6kw==", + "type": "package", + "path": "microsoft.aspnetcore.hosting.server.abstractions/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Server.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Server.Abstractions.xml", + "microsoft.aspnetcore.hosting.server.abstractions.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.hosting.server.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Http/2.3.0": { + "sha512": "I9azEG2tZ4DDHAFgv+N38e6Yhttvf+QjE2j2UYyCACE7Swm5/0uoihCMWZ87oOZYeqiEFSxbsfpT71OYHe2tpw==", + "type": "package", + "path": "microsoft.aspnetcore.http/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.xml", + "microsoft.aspnetcore.http.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.http.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Abstractions/2.3.0": { + "sha512": "39r9PPrjA6s0blyFv5qarckjNkaHRA5B+3b53ybuGGNTXEj1/DStQJ4NWjFL6QTRQpL9zt7nDyKxZdJOlcnq+Q==", + "type": "package", + "path": "microsoft.aspnetcore.http.abstractions/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.xml", + "microsoft.aspnetcore.http.abstractions.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.http.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Connections/1.2.0": { + "sha512": "VYMCOLvdT0y3O9lk4jUuIs8+re7u5+i+ka6ZZ6fIzSJ94c/JeMnAOOg39EB2i4crPXvLoiSdzKWlNPJgTbCZ2g==", + "type": "package", + "path": "microsoft.aspnetcore.http.connections/1.2.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.xml", + "microsoft.aspnetcore.http.connections.1.2.0.nupkg.sha512", + "microsoft.aspnetcore.http.connections.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Connections.Common/1.2.0": { + "sha512": "yUA7eg6kv7Wbz5TCW4PqS5/kYE5VxUIEDvoxjw4p1RwS2LGm84F9fBtM0mD6wrRfiv1NUyJ7WBjn3PWd/ccO+w==", + "type": "package", + "path": "microsoft.aspnetcore.http.connections.common/1.2.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.xml", + "microsoft.aspnetcore.http.connections.common.1.2.0.nupkg.sha512", + "microsoft.aspnetcore.http.connections.common.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Extensions/2.3.0": { + "sha512": "EY2u/wFF5jsYwGXXswfQWrSsFPmiXsniAlUWo3rv/MGYf99ZFsENDnZcQP6W3c/+xQmQXq0NauzQ7jyy+o1LDQ==", + "type": "package", + "path": "microsoft.aspnetcore.http.extensions/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Extensions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Extensions.xml", + "microsoft.aspnetcore.http.extensions.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.http.extensions.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Features/2.3.0": { + "sha512": "f10WUgcsKqrkmnz6gt8HeZ7kyKjYN30PO7cSic1lPtH7paPtnQqXPOveul/SIPI43PhRD4trttg4ywnrEmmJpA==", + "type": "package", + "path": "microsoft.aspnetcore.http.features/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.xml", + "microsoft.aspnetcore.http.features.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.http.features.nuspec" + ] + }, + "Microsoft.AspNetCore.Routing/2.3.0": { + "sha512": "no5/VC0CAQuT4PK4rp2K5fqwuSfzr2mdB6m1XNfWVhHnwzpRQzKAu9flChiT/JTLKwVI0Vq2MSmSW2OFMDCNXg==", + "type": "package", + "path": "microsoft.aspnetcore.routing/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.xml", + "microsoft.aspnetcore.routing.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.routing.nuspec" + ] + }, + "Microsoft.AspNetCore.Routing.Abstractions/2.3.0": { + "sha512": "ZkFpUrSmp6TocxZLBEX3IBv5dPMbQuMs6L/BPl0WRfn32UVOtNYJQ0bLdh3cL9LMV0rmTW/5R0w8CBYxr0AOUw==", + "type": "package", + "path": "microsoft.aspnetcore.routing.abstractions/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.xml", + "microsoft.aspnetcore.routing.abstractions.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.routing.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR/1.2.0": { + "sha512": "XoCcsOTdtBiXyOzUtpbCl0IaqMOYjnr+6dbDxvUCFn7NR6bu7CwrlQ3oQzkltTwDZH0b6VEUN9wZPOYvPHi+Lg==", + "type": "package", + "path": "microsoft.aspnetcore.signalr/1.2.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.xml", + "microsoft.aspnetcore.signalr.1.2.0.nupkg.sha512", + "microsoft.aspnetcore.signalr.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Common/1.2.0": { + "sha512": "FZeXIaoWqe145ZPdfiptwkw/sP1BX1UD0706GNBwwoaFiKsNbLEl/Trhj2+idlp3qbX1BEwkQesKNxkopVY5Xg==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.common/1.2.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.xml", + "microsoft.aspnetcore.signalr.common.1.2.0.nupkg.sha512", + "microsoft.aspnetcore.signalr.common.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Core/1.2.0": { + "sha512": "eZTuMkSDw1uwjhLhJbMxgW2Cuyxfn0Kfqm8OBmqvuzE9Qc/VVzh8dGrAp2F9Pk7XKTDHmlhc5RTLcPPAZ5PSZw==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.core/1.2.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Core.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Core.xml", + "microsoft.aspnetcore.signalr.core.1.2.0.nupkg.sha512", + "microsoft.aspnetcore.signalr.core.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/1.2.0": { + "sha512": "hNvZ7kQxp5Udqd/IFWViU35bUJvi4xnNzjkF28HRvrdrS7JNsIASTvMqArP6HLQUc3j6nlUOeShNhVmgI1wzHg==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.protocols.json/1.2.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", + "microsoft.aspnetcore.signalr.protocols.json.1.2.0.nupkg.sha512", + "microsoft.aspnetcore.signalr.protocols.json.nuspec" + ] + }, + "Microsoft.AspNetCore.WebSockets/2.3.0": { + "sha512": "+T4zpnVPkIjvvkyhTH3WBJlTfqmTBRozvnMudAUDvcb4e+NrWf52q8BXh52rkCrBgX6Cudf6F/UhZwTowyBtKg==", + "type": "package", + "path": "microsoft.aspnetcore.websockets/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.WebSockets.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.WebSockets.xml", + "microsoft.aspnetcore.websockets.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.websockets.nuspec" + ] + }, + "Microsoft.AspNetCore.WebUtilities/2.3.0": { + "sha512": "trbXdWzoAEUVd0PE2yTopkz4kjZaAIA7xUWekd5uBw+7xE8Do/YOVTeb9d9koPTlbtZT539aESJjSLSqD8eYrQ==", + "type": "package", + "path": "microsoft.aspnetcore.webutilities/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.WebUtilities.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.WebUtilities.xml", + "microsoft.aspnetcore.webutilities.2.3.0.nupkg.sha512", + "microsoft.aspnetcore.webutilities.nuspec" + ] + }, + "Microsoft.Bcl.AsyncInterfaces/1.1.0": { + "sha512": "1Am6l4Vpn3/K32daEqZI+FFr96OlZkgwK2LcT3pZ2zWubR5zTPW3/FkO1Rat9kb7oQOa4rxgl9LJHc5tspCWfg==", + "type": "package", + "path": "microsoft.bcl.asyncinterfaces/1.1.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/net461/Microsoft.Bcl.AsyncInterfaces.xml", + "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml", + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml", + "microsoft.bcl.asyncinterfaces.1.1.0.nupkg.sha512", + "microsoft.bcl.asyncinterfaces.nuspec", + "ref/net461/Microsoft.Bcl.AsyncInterfaces.dll", + "ref/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll", + "ref/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "Microsoft.CodeCoverage/17.8.0": { + "sha512": "KC8SXWbGIdoFVdlxKk9WHccm0llm9HypcHMLUUFabRiTS3SO2fQXNZfdiF3qkEdTJhbRrxhdRxjL4jbtwPq4Ew==", + "type": "package", + "path": "microsoft.codecoverage/17.8.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE_MIT.txt", + "ThirdPartyNotices.txt", + "build/netstandard2.0/CodeCoverage/CodeCoverage.config", + "build/netstandard2.0/CodeCoverage/CodeCoverage.exe", + "build/netstandard2.0/CodeCoverage/VanguardInstrumentationProfiler_x86.config", + "build/netstandard2.0/CodeCoverage/amd64/CodeCoverage.exe", + "build/netstandard2.0/CodeCoverage/amd64/VanguardInstrumentationProfiler_x64.config", + "build/netstandard2.0/CodeCoverage/amd64/covrun64.dll", + "build/netstandard2.0/CodeCoverage/amd64/msdia140.dll", + "build/netstandard2.0/CodeCoverage/arm64/VanguardInstrumentationProfiler_arm64.config", + "build/netstandard2.0/CodeCoverage/arm64/covrunarm64.dll", + "build/netstandard2.0/CodeCoverage/arm64/msdia140.dll", + "build/netstandard2.0/CodeCoverage/codecoveragemessages.dll", + "build/netstandard2.0/CodeCoverage/coreclr/Microsoft.VisualStudio.CodeCoverage.Shim.dll", + "build/netstandard2.0/CodeCoverage/covrun32.dll", + "build/netstandard2.0/CodeCoverage/msdia140.dll", + "build/netstandard2.0/InstrumentationEngine/alpine/x64/VanguardInstrumentationProfiler_x64.config", + "build/netstandard2.0/InstrumentationEngine/alpine/x64/libCoverageInstrumentationMethod.so", + "build/netstandard2.0/InstrumentationEngine/alpine/x64/libInstrumentationEngine.so", + "build/netstandard2.0/InstrumentationEngine/arm64/MicrosoftInstrumentationEngine_arm64.dll", + "build/netstandard2.0/InstrumentationEngine/macos/x64/VanguardInstrumentationProfiler_x64.config", + "build/netstandard2.0/InstrumentationEngine/macos/x64/libCoverageInstrumentationMethod.dylib", + "build/netstandard2.0/InstrumentationEngine/macos/x64/libInstrumentationEngine.dylib", + "build/netstandard2.0/InstrumentationEngine/ubuntu/x64/VanguardInstrumentationProfiler_x64.config", + "build/netstandard2.0/InstrumentationEngine/ubuntu/x64/libCoverageInstrumentationMethod.so", + "build/netstandard2.0/InstrumentationEngine/ubuntu/x64/libInstrumentationEngine.so", + "build/netstandard2.0/InstrumentationEngine/x64/MicrosoftInstrumentationEngine_x64.dll", + "build/netstandard2.0/InstrumentationEngine/x86/MicrosoftInstrumentationEngine_x86.dll", + "build/netstandard2.0/Microsoft.CodeCoverage.Core.dll", + "build/netstandard2.0/Microsoft.CodeCoverage.Instrumentation.dll", + "build/netstandard2.0/Microsoft.CodeCoverage.Interprocess.dll", + "build/netstandard2.0/Microsoft.CodeCoverage.props", + "build/netstandard2.0/Microsoft.CodeCoverage.targets", + "build/netstandard2.0/Microsoft.DiaSymReader.dll", + "build/netstandard2.0/Microsoft.VisualStudio.TraceDataCollector.dll", + "build/netstandard2.0/Mono.Cecil.Pdb.dll", + "build/netstandard2.0/Mono.Cecil.Rocks.dll", + "build/netstandard2.0/Mono.Cecil.dll", + "build/netstandard2.0/ThirdPartyNotices.txt", + "build/netstandard2.0/cs/Microsoft.VisualStudio.TraceDataCollector.resources.dll", + "build/netstandard2.0/de/Microsoft.VisualStudio.TraceDataCollector.resources.dll", + "build/netstandard2.0/es/Microsoft.VisualStudio.TraceDataCollector.resources.dll", + "build/netstandard2.0/fr/Microsoft.VisualStudio.TraceDataCollector.resources.dll", + "build/netstandard2.0/it/Microsoft.VisualStudio.TraceDataCollector.resources.dll", + "build/netstandard2.0/ja/Microsoft.VisualStudio.TraceDataCollector.resources.dll", + "build/netstandard2.0/ko/Microsoft.VisualStudio.TraceDataCollector.resources.dll", + "build/netstandard2.0/pl/Microsoft.VisualStudio.TraceDataCollector.resources.dll", + "build/netstandard2.0/pt-BR/Microsoft.VisualStudio.TraceDataCollector.resources.dll", + "build/netstandard2.0/ru/Microsoft.VisualStudio.TraceDataCollector.resources.dll", + "build/netstandard2.0/tr/Microsoft.VisualStudio.TraceDataCollector.resources.dll", + "build/netstandard2.0/zh-Hans/Microsoft.VisualStudio.TraceDataCollector.resources.dll", + "build/netstandard2.0/zh-Hant/Microsoft.VisualStudio.TraceDataCollector.resources.dll", + "lib/net462/Microsoft.VisualStudio.CodeCoverage.Shim.dll", + "lib/netcoreapp3.1/Microsoft.VisualStudio.CodeCoverage.Shim.dll", + "microsoft.codecoverage.17.8.0.nupkg.sha512", + "microsoft.codecoverage.nuspec" + ] + }, + "Microsoft.CSharp/4.7.0": { + "sha512": "pTj+D3uJWyN3My70i2Hqo+OXixq3Os2D1nJ2x92FFo6sk8fYS1m1WLNTs0Dc1uPaViH0YvEEwvzddQ7y4rhXmA==", + "type": "package", + "path": "microsoft.csharp/4.7.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/Microsoft.CSharp.dll", + "lib/netcoreapp2.0/_._", + "lib/netstandard1.3/Microsoft.CSharp.dll", + "lib/netstandard2.0/Microsoft.CSharp.dll", + "lib/netstandard2.0/Microsoft.CSharp.xml", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/uap10.0.16299/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "microsoft.csharp.4.7.0.nupkg.sha512", + "microsoft.csharp.nuspec", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/Microsoft.CSharp.dll", + "ref/netcore50/Microsoft.CSharp.xml", + "ref/netcore50/de/Microsoft.CSharp.xml", + "ref/netcore50/es/Microsoft.CSharp.xml", + "ref/netcore50/fr/Microsoft.CSharp.xml", + "ref/netcore50/it/Microsoft.CSharp.xml", + "ref/netcore50/ja/Microsoft.CSharp.xml", + "ref/netcore50/ko/Microsoft.CSharp.xml", + "ref/netcore50/ru/Microsoft.CSharp.xml", + "ref/netcore50/zh-hans/Microsoft.CSharp.xml", + "ref/netcore50/zh-hant/Microsoft.CSharp.xml", + "ref/netcoreapp2.0/_._", + "ref/netstandard1.0/Microsoft.CSharp.dll", + "ref/netstandard1.0/Microsoft.CSharp.xml", + "ref/netstandard1.0/de/Microsoft.CSharp.xml", + "ref/netstandard1.0/es/Microsoft.CSharp.xml", + "ref/netstandard1.0/fr/Microsoft.CSharp.xml", + "ref/netstandard1.0/it/Microsoft.CSharp.xml", + "ref/netstandard1.0/ja/Microsoft.CSharp.xml", + "ref/netstandard1.0/ko/Microsoft.CSharp.xml", + "ref/netstandard1.0/ru/Microsoft.CSharp.xml", + "ref/netstandard1.0/zh-hans/Microsoft.CSharp.xml", + "ref/netstandard1.0/zh-hant/Microsoft.CSharp.xml", + "ref/netstandard2.0/Microsoft.CSharp.dll", + "ref/netstandard2.0/Microsoft.CSharp.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/uap10.0.16299/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "Microsoft.EntityFrameworkCore/8.0.22": { + "sha512": "nKGrD/WOO1d7qtXvghFAHre5Fk3ubw41pDFM0hbFxVIkMFxl4B0ug2LylMHOq+dgAceUeo3bx0qMh6/Jl9NbrA==", + "type": "package", + "path": "microsoft.entityframeworkcore/8.0.22", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props", + "lib/net8.0/Microsoft.EntityFrameworkCore.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.xml", + "microsoft.entityframeworkcore.8.0.22.nupkg.sha512", + "microsoft.entityframeworkcore.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Abstractions/8.0.22": { + "sha512": "p4Fw9mpJnZHmkdOGCbBqbvuyj1LnnFxNon8snMKIQ0MGSB+j9f6ffWDfvGRaOS/9ikqQG9RMOTzZk52q1G23ng==", + "type": "package", + "path": "microsoft.entityframeworkcore.abstractions/8.0.22", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.xml", + "microsoft.entityframeworkcore.abstractions.8.0.22.nupkg.sha512", + "microsoft.entityframeworkcore.abstractions.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Analyzers/8.0.22": { + "sha512": "lrSWwr+X+Fn5XGOwOYFQJWx+u+eameqhMjQ1mohXUE2N7LauucZAtcH/j+yXwQntosKoXU1TOoggTL/zmYqbHQ==", + "type": "package", + "path": "microsoft.entityframeworkcore.analyzers/8.0.22", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll", + "docs/PACKAGE.md", + "lib/netstandard2.0/_._", + "microsoft.entityframeworkcore.analyzers.8.0.22.nupkg.sha512", + "microsoft.entityframeworkcore.analyzers.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.InMemory/8.0.22": { + "sha512": "dPbM/KLIh/AdHRjh/OhrzhAiHRLT0JBC5KSvAZ71eg42+QwF9aEuBfTzqr+GJE6DK9CLhqh9jXAqRKFojPki5g==", + "type": "package", + "path": "microsoft.entityframeworkcore.inmemory/8.0.22", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "lib/net8.0/Microsoft.EntityFrameworkCore.InMemory.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.InMemory.xml", + "microsoft.entityframeworkcore.inmemory.8.0.22.nupkg.sha512", + "microsoft.entityframeworkcore.inmemory.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Relational/8.0.13": { + "sha512": "uQR2iTar+6ZEjEHTwgH0/7ySSRme4R9sDiupfG3w/eBub3365fPw/MjhsuOMQkdq9YzLM7veH4Qt/K9OqL26Qg==", + "type": "package", + "path": "microsoft.entityframeworkcore.relational/8.0.13", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll", + "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.xml", + "microsoft.entityframeworkcore.relational.8.0.13.nupkg.sha512", + "microsoft.entityframeworkcore.relational.nuspec" + ] + }, + "Microsoft.Extensions.ApiDescription.Server/6.0.5": { + "sha512": "Ckb5EDBUNJdFWyajfXzUIMRkhf52fHZOQuuZg/oiu8y7zDCVwD0iHhew6MnThjHmevanpxL3f5ci2TtHQEN6bw==", + "type": "package", + "path": "microsoft.extensions.apidescription.server/6.0.5", + "hasTools": true, + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "build/Microsoft.Extensions.ApiDescription.Server.props", + "build/Microsoft.Extensions.ApiDescription.Server.targets", + "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props", + "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets", + "microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512", + "microsoft.extensions.apidescription.server.nuspec", + "tools/Newtonsoft.Json.dll", + "tools/dotnet-getdocument.deps.json", + "tools/dotnet-getdocument.dll", + "tools/dotnet-getdocument.runtimeconfig.json", + "tools/net461-x86/GetDocument.Insider.exe", + "tools/net461-x86/GetDocument.Insider.exe.config", + "tools/net461-x86/Microsoft.Win32.Primitives.dll", + "tools/net461-x86/System.AppContext.dll", + "tools/net461-x86/System.Buffers.dll", + "tools/net461-x86/System.Collections.Concurrent.dll", + "tools/net461-x86/System.Collections.NonGeneric.dll", + "tools/net461-x86/System.Collections.Specialized.dll", + "tools/net461-x86/System.Collections.dll", + "tools/net461-x86/System.ComponentModel.EventBasedAsync.dll", + "tools/net461-x86/System.ComponentModel.Primitives.dll", + "tools/net461-x86/System.ComponentModel.TypeConverter.dll", + "tools/net461-x86/System.ComponentModel.dll", + "tools/net461-x86/System.Console.dll", + "tools/net461-x86/System.Data.Common.dll", + "tools/net461-x86/System.Diagnostics.Contracts.dll", + "tools/net461-x86/System.Diagnostics.Debug.dll", + "tools/net461-x86/System.Diagnostics.DiagnosticSource.dll", + "tools/net461-x86/System.Diagnostics.FileVersionInfo.dll", + "tools/net461-x86/System.Diagnostics.Process.dll", + "tools/net461-x86/System.Diagnostics.StackTrace.dll", + "tools/net461-x86/System.Diagnostics.TextWriterTraceListener.dll", + "tools/net461-x86/System.Diagnostics.Tools.dll", + "tools/net461-x86/System.Diagnostics.TraceSource.dll", + "tools/net461-x86/System.Diagnostics.Tracing.dll", + "tools/net461-x86/System.Drawing.Primitives.dll", + "tools/net461-x86/System.Dynamic.Runtime.dll", + "tools/net461-x86/System.Globalization.Calendars.dll", + "tools/net461-x86/System.Globalization.Extensions.dll", + "tools/net461-x86/System.Globalization.dll", + "tools/net461-x86/System.IO.Compression.ZipFile.dll", + "tools/net461-x86/System.IO.Compression.dll", + "tools/net461-x86/System.IO.FileSystem.DriveInfo.dll", + "tools/net461-x86/System.IO.FileSystem.Primitives.dll", + "tools/net461-x86/System.IO.FileSystem.Watcher.dll", + "tools/net461-x86/System.IO.FileSystem.dll", + "tools/net461-x86/System.IO.IsolatedStorage.dll", + "tools/net461-x86/System.IO.MemoryMappedFiles.dll", + "tools/net461-x86/System.IO.Pipes.dll", + "tools/net461-x86/System.IO.UnmanagedMemoryStream.dll", + "tools/net461-x86/System.IO.dll", + "tools/net461-x86/System.Linq.Expressions.dll", + "tools/net461-x86/System.Linq.Parallel.dll", + "tools/net461-x86/System.Linq.Queryable.dll", + "tools/net461-x86/System.Linq.dll", + "tools/net461-x86/System.Memory.dll", + "tools/net461-x86/System.Net.Http.dll", + "tools/net461-x86/System.Net.NameResolution.dll", + "tools/net461-x86/System.Net.NetworkInformation.dll", + "tools/net461-x86/System.Net.Ping.dll", + "tools/net461-x86/System.Net.Primitives.dll", + "tools/net461-x86/System.Net.Requests.dll", + "tools/net461-x86/System.Net.Security.dll", + "tools/net461-x86/System.Net.Sockets.dll", + "tools/net461-x86/System.Net.WebHeaderCollection.dll", + "tools/net461-x86/System.Net.WebSockets.Client.dll", + "tools/net461-x86/System.Net.WebSockets.dll", + "tools/net461-x86/System.Numerics.Vectors.dll", + "tools/net461-x86/System.ObjectModel.dll", + "tools/net461-x86/System.Reflection.Extensions.dll", + "tools/net461-x86/System.Reflection.Primitives.dll", + "tools/net461-x86/System.Reflection.dll", + "tools/net461-x86/System.Resources.Reader.dll", + "tools/net461-x86/System.Resources.ResourceManager.dll", + "tools/net461-x86/System.Resources.Writer.dll", + "tools/net461-x86/System.Runtime.CompilerServices.Unsafe.dll", + "tools/net461-x86/System.Runtime.CompilerServices.VisualC.dll", + "tools/net461-x86/System.Runtime.Extensions.dll", + "tools/net461-x86/System.Runtime.Handles.dll", + "tools/net461-x86/System.Runtime.InteropServices.RuntimeInformation.dll", + "tools/net461-x86/System.Runtime.InteropServices.dll", + "tools/net461-x86/System.Runtime.Numerics.dll", + "tools/net461-x86/System.Runtime.Serialization.Formatters.dll", + "tools/net461-x86/System.Runtime.Serialization.Json.dll", + "tools/net461-x86/System.Runtime.Serialization.Primitives.dll", + "tools/net461-x86/System.Runtime.Serialization.Xml.dll", + "tools/net461-x86/System.Runtime.dll", + "tools/net461-x86/System.Security.Claims.dll", + "tools/net461-x86/System.Security.Cryptography.Algorithms.dll", + "tools/net461-x86/System.Security.Cryptography.Csp.dll", + "tools/net461-x86/System.Security.Cryptography.Encoding.dll", + "tools/net461-x86/System.Security.Cryptography.Primitives.dll", + "tools/net461-x86/System.Security.Cryptography.X509Certificates.dll", + "tools/net461-x86/System.Security.Principal.dll", + "tools/net461-x86/System.Security.SecureString.dll", + "tools/net461-x86/System.Text.Encoding.Extensions.dll", + "tools/net461-x86/System.Text.Encoding.dll", + "tools/net461-x86/System.Text.RegularExpressions.dll", + "tools/net461-x86/System.Threading.Overlapped.dll", + "tools/net461-x86/System.Threading.Tasks.Parallel.dll", + "tools/net461-x86/System.Threading.Tasks.dll", + "tools/net461-x86/System.Threading.Thread.dll", + "tools/net461-x86/System.Threading.ThreadPool.dll", + "tools/net461-x86/System.Threading.Timer.dll", + "tools/net461-x86/System.Threading.dll", + "tools/net461-x86/System.ValueTuple.dll", + "tools/net461-x86/System.Xml.ReaderWriter.dll", + "tools/net461-x86/System.Xml.XDocument.dll", + "tools/net461-x86/System.Xml.XPath.XDocument.dll", + "tools/net461-x86/System.Xml.XPath.dll", + "tools/net461-x86/System.Xml.XmlDocument.dll", + "tools/net461-x86/System.Xml.XmlSerializer.dll", + "tools/net461-x86/netstandard.dll", + "tools/net461/GetDocument.Insider.exe", + "tools/net461/GetDocument.Insider.exe.config", + "tools/net461/Microsoft.Win32.Primitives.dll", + "tools/net461/System.AppContext.dll", + "tools/net461/System.Buffers.dll", + "tools/net461/System.Collections.Concurrent.dll", + "tools/net461/System.Collections.NonGeneric.dll", + "tools/net461/System.Collections.Specialized.dll", + "tools/net461/System.Collections.dll", + "tools/net461/System.ComponentModel.EventBasedAsync.dll", + "tools/net461/System.ComponentModel.Primitives.dll", + "tools/net461/System.ComponentModel.TypeConverter.dll", + "tools/net461/System.ComponentModel.dll", + "tools/net461/System.Console.dll", + "tools/net461/System.Data.Common.dll", + "tools/net461/System.Diagnostics.Contracts.dll", + "tools/net461/System.Diagnostics.Debug.dll", + "tools/net461/System.Diagnostics.DiagnosticSource.dll", + "tools/net461/System.Diagnostics.FileVersionInfo.dll", + "tools/net461/System.Diagnostics.Process.dll", + "tools/net461/System.Diagnostics.StackTrace.dll", + "tools/net461/System.Diagnostics.TextWriterTraceListener.dll", + "tools/net461/System.Diagnostics.Tools.dll", + "tools/net461/System.Diagnostics.TraceSource.dll", + "tools/net461/System.Diagnostics.Tracing.dll", + "tools/net461/System.Drawing.Primitives.dll", + "tools/net461/System.Dynamic.Runtime.dll", + "tools/net461/System.Globalization.Calendars.dll", + "tools/net461/System.Globalization.Extensions.dll", + "tools/net461/System.Globalization.dll", + "tools/net461/System.IO.Compression.ZipFile.dll", + "tools/net461/System.IO.Compression.dll", + "tools/net461/System.IO.FileSystem.DriveInfo.dll", + "tools/net461/System.IO.FileSystem.Primitives.dll", + "tools/net461/System.IO.FileSystem.Watcher.dll", + "tools/net461/System.IO.FileSystem.dll", + "tools/net461/System.IO.IsolatedStorage.dll", + "tools/net461/System.IO.MemoryMappedFiles.dll", + "tools/net461/System.IO.Pipes.dll", + "tools/net461/System.IO.UnmanagedMemoryStream.dll", + "tools/net461/System.IO.dll", + "tools/net461/System.Linq.Expressions.dll", + "tools/net461/System.Linq.Parallel.dll", + "tools/net461/System.Linq.Queryable.dll", + "tools/net461/System.Linq.dll", + "tools/net461/System.Memory.dll", + "tools/net461/System.Net.Http.dll", + "tools/net461/System.Net.NameResolution.dll", + "tools/net461/System.Net.NetworkInformation.dll", + "tools/net461/System.Net.Ping.dll", + "tools/net461/System.Net.Primitives.dll", + "tools/net461/System.Net.Requests.dll", + "tools/net461/System.Net.Security.dll", + "tools/net461/System.Net.Sockets.dll", + "tools/net461/System.Net.WebHeaderCollection.dll", + "tools/net461/System.Net.WebSockets.Client.dll", + "tools/net461/System.Net.WebSockets.dll", + "tools/net461/System.Numerics.Vectors.dll", + "tools/net461/System.ObjectModel.dll", + "tools/net461/System.Reflection.Extensions.dll", + "tools/net461/System.Reflection.Primitives.dll", + "tools/net461/System.Reflection.dll", + "tools/net461/System.Resources.Reader.dll", + "tools/net461/System.Resources.ResourceManager.dll", + "tools/net461/System.Resources.Writer.dll", + "tools/net461/System.Runtime.CompilerServices.Unsafe.dll", + "tools/net461/System.Runtime.CompilerServices.VisualC.dll", + "tools/net461/System.Runtime.Extensions.dll", + "tools/net461/System.Runtime.Handles.dll", + "tools/net461/System.Runtime.InteropServices.RuntimeInformation.dll", + "tools/net461/System.Runtime.InteropServices.dll", + "tools/net461/System.Runtime.Numerics.dll", + "tools/net461/System.Runtime.Serialization.Formatters.dll", + "tools/net461/System.Runtime.Serialization.Json.dll", + "tools/net461/System.Runtime.Serialization.Primitives.dll", + "tools/net461/System.Runtime.Serialization.Xml.dll", + "tools/net461/System.Runtime.dll", + "tools/net461/System.Security.Claims.dll", + "tools/net461/System.Security.Cryptography.Algorithms.dll", + "tools/net461/System.Security.Cryptography.Csp.dll", + "tools/net461/System.Security.Cryptography.Encoding.dll", + "tools/net461/System.Security.Cryptography.Primitives.dll", + "tools/net461/System.Security.Cryptography.X509Certificates.dll", + "tools/net461/System.Security.Principal.dll", + "tools/net461/System.Security.SecureString.dll", + "tools/net461/System.Text.Encoding.Extensions.dll", + "tools/net461/System.Text.Encoding.dll", + "tools/net461/System.Text.RegularExpressions.dll", + "tools/net461/System.Threading.Overlapped.dll", + "tools/net461/System.Threading.Tasks.Parallel.dll", + "tools/net461/System.Threading.Tasks.dll", + "tools/net461/System.Threading.Thread.dll", + "tools/net461/System.Threading.ThreadPool.dll", + "tools/net461/System.Threading.Timer.dll", + "tools/net461/System.Threading.dll", + "tools/net461/System.ValueTuple.dll", + "tools/net461/System.Xml.ReaderWriter.dll", + "tools/net461/System.Xml.XDocument.dll", + "tools/net461/System.Xml.XPath.XDocument.dll", + "tools/net461/System.Xml.XPath.dll", + "tools/net461/System.Xml.XmlDocument.dll", + "tools/net461/System.Xml.XmlSerializer.dll", + "tools/net461/netstandard.dll", + "tools/netcoreapp2.1/GetDocument.Insider.deps.json", + "tools/netcoreapp2.1/GetDocument.Insider.dll", + "tools/netcoreapp2.1/GetDocument.Insider.runtimeconfig.json", + "tools/netcoreapp2.1/System.Diagnostics.DiagnosticSource.dll" + ] + }, + "Microsoft.Extensions.Caching.Abstractions/10.0.2": { + "sha512": "WIRPDa/qoKHmJhTAPCO/zLu9kRLQ2Fd6HD5tzgdXJ3xGEVXDHP6FvakKJjynwKrVDld8H4G4tcbW53wuC/wxMQ==", + "type": "package", + "path": "microsoft.extensions.caching.abstractions/10.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Caching.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Abstractions.targets", + "lib/net10.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net10.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net462/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.xml", + "lib/net9.0/Microsoft.Extensions.Caching.Abstractions.dll", + "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.10.0.2.nupkg.sha512", + "microsoft.extensions.caching.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Caching.Memory/8.0.1": { + "sha512": "HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==", + "type": "package", + "path": "microsoft.extensions.caching.memory/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Caching.Memory.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Memory.targets", + "lib/net462/Microsoft.Extensions.Caching.Memory.dll", + "lib/net462/Microsoft.Extensions.Caching.Memory.xml", + "lib/net6.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net6.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/net7.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net7.0/Microsoft.Extensions.Caching.Memory.xml", + "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/net8.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.8.0.1.nupkg.sha512", + "microsoft.extensions.caching.memory.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Caching.StackExchangeRedis/10.0.2": { + "sha512": "WEx0VM6KVv4Bf6lwe4WQTd4EixIfw38ZU3u/7zMe+uC5fOyiANu8Os/qyiqv2iEsIJb296tbd2E2BTaWIha3Vg==", + "type": "package", + "path": "microsoft.extensions.caching.stackexchangeredis/10.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.Extensions.Caching.StackExchangeRedis.dll", + "lib/net10.0/Microsoft.Extensions.Caching.StackExchangeRedis.xml", + "lib/net462/Microsoft.Extensions.Caching.StackExchangeRedis.dll", + "lib/net462/Microsoft.Extensions.Caching.StackExchangeRedis.xml", + "lib/netstandard2.0/Microsoft.Extensions.Caching.StackExchangeRedis.dll", + "lib/netstandard2.0/Microsoft.Extensions.Caching.StackExchangeRedis.xml", + "microsoft.extensions.caching.stackexchangeredis.10.0.2.nupkg.sha512", + "microsoft.extensions.caching.stackexchangeredis.nuspec" + ] + }, + "Microsoft.Extensions.Configuration.Abstractions/8.0.0": { + "sha512": "3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==", + "type": "package", + "path": "microsoft.extensions.configuration.abstractions/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Configuration.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Configuration.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/net8.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.8.0.0.nupkg.sha512", + "microsoft.extensions.configuration.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection/8.0.1": { + "sha512": "BmANAnR5Xd4Oqw7yQ75xOAYODybZQRzdeNucg7kS5wWKd2PNnMdYtJ2Vciy0QLylRmv42DGl5+AFL9izA6F1Rw==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets", + "lib/net462/Microsoft.Extensions.DependencyInjection.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.xml", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net6.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net7.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml", + "microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512", + "microsoft.extensions.dependencyinjection.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": { + "sha512": "zOIurr59+kUf9vNcsUkCvKWZv+fPosUZXURZesYkJCvl0EzTc9F7maAO4Cd2WEV7ZJJ0AZrFQvuH6Npph9wdBw==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "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.10.0.2.nupkg.sha512", + "microsoft.extensions.dependencyinjection.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Diagnostics.Abstractions/8.0.1": { + "sha512": "elH2vmwNmsXuKmUeMQ4YW9ldXiF+gSGDgg1vORksob5POnpaI6caj1Hu8zaYbEuibhqCoWg0YRWDazBY3zjBfg==", + "type": "package", + "path": "microsoft.extensions.diagnostics.abstractions/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Diagnostics.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Diagnostics.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Diagnostics.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Diagnostics.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Diagnostics.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Diagnostics.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Diagnostics.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Diagnostics.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Diagnostics.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Diagnostics.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Diagnostics.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Diagnostics.Abstractions.xml", + "microsoft.extensions.diagnostics.abstractions.8.0.1.nupkg.sha512", + "microsoft.extensions.diagnostics.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Diagnostics.HealthChecks/8.0.0": { + "sha512": "P9SoBuVZhJPpALZmSq72aQEb9ryP67EdquaCZGXGrrcASTNHYdrUhnpgSwIipgM5oVC+dKpRXg5zxobmF9xr5g==", + "type": "package", + "path": "microsoft.extensions.diagnostics.healthchecks/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net462/Microsoft.Extensions.Diagnostics.HealthChecks.dll", + "lib/net462/Microsoft.Extensions.Diagnostics.HealthChecks.xml", + "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.dll", + "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.xml", + "lib/netstandard2.0/Microsoft.Extensions.Diagnostics.HealthChecks.dll", + "lib/netstandard2.0/Microsoft.Extensions.Diagnostics.HealthChecks.xml", + "microsoft.extensions.diagnostics.healthchecks.8.0.0.nupkg.sha512", + "microsoft.extensions.diagnostics.healthchecks.nuspec" + ] + }, + "Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions/8.0.0": { + "sha512": "AT2qqos3IgI09ok36Qag9T8bb6kHJ3uT9Q5ki6CySybFsK6/9JbvQAgAHf1pVEjST0/N4JaFaCbm40R5edffwg==", + "type": "package", + "path": "microsoft.extensions.diagnostics.healthchecks.abstractions/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net462/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions.xml", + "microsoft.extensions.diagnostics.healthchecks.abstractions.8.0.0.nupkg.sha512", + "microsoft.extensions.diagnostics.healthchecks.abstractions.nuspec" + ] + }, + "Microsoft.Extensions.FileProviders.Abstractions/8.0.0": { + "sha512": "ZbaMlhJlpisjuWbvXr4LdAst/1XxH3vZ6A0BsgTphZ2L4PGuxRLz7Jr/S7mkAAnOn78Vu0fKhEgNF5JO3zfjqQ==", + "type": "package", + "path": "microsoft.extensions.fileproviders.abstractions/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.FileProviders.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.FileProviders.Abstractions.targets", + "lib/net462/Microsoft.Extensions.FileProviders.Abstractions.dll", + "lib/net462/Microsoft.Extensions.FileProviders.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.FileProviders.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.FileProviders.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.FileProviders.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.FileProviders.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Abstractions.xml", + "microsoft.extensions.fileproviders.abstractions.8.0.0.nupkg.sha512", + "microsoft.extensions.fileproviders.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Hosting.Abstractions/8.0.1": { + "sha512": "nHwq9aPBdBPYXPti6wYEEfgXddfBrYC+CQLn+qISiwQq5tpfaqDZSKOJNxoe9rfQxGf1c+2wC/qWFe1QYJPYqw==", + "type": "package", + "path": "microsoft.extensions.hosting.abstractions/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Hosting.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Hosting.Abstractions.targets", + "lib/net462/Microsoft.Extensions.Hosting.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Hosting.Abstractions.xml", + "lib/net6.0/Microsoft.Extensions.Hosting.Abstractions.dll", + "lib/net6.0/Microsoft.Extensions.Hosting.Abstractions.xml", + "lib/net7.0/Microsoft.Extensions.Hosting.Abstractions.dll", + "lib/net7.0/Microsoft.Extensions.Hosting.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Hosting.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Hosting.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.Hosting.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Hosting.Abstractions.xml", + "lib/netstandard2.1/Microsoft.Extensions.Hosting.Abstractions.dll", + "lib/netstandard2.1/Microsoft.Extensions.Hosting.Abstractions.xml", + "microsoft.extensions.hosting.abstractions.8.0.1.nupkg.sha512", + "microsoft.extensions.hosting.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging/8.0.1": { + "sha512": "4x+pzsQEbqxhNf1QYRr5TDkLP9UsLT3A6MdRKDDEgrW7h1ljiEPgTNhKYUhNCCAaVpQECVQ+onA91PTPnIp6Lw==", + "type": "package", + "path": "microsoft.extensions.logging/8.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Logging.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets", + "lib/net462/Microsoft.Extensions.Logging.dll", + "lib/net462/Microsoft.Extensions.Logging.xml", + "lib/net6.0/Microsoft.Extensions.Logging.dll", + "lib/net6.0/Microsoft.Extensions.Logging.xml", + "lib/net7.0/Microsoft.Extensions.Logging.dll", + "lib/net7.0/Microsoft.Extensions.Logging.xml", + "lib/net8.0/Microsoft.Extensions.Logging.dll", + "lib/net8.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.0/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.1/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.1/Microsoft.Extensions.Logging.xml", + "microsoft.extensions.logging.8.0.1.nupkg.sha512", + "microsoft.extensions.logging.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.2": { + "sha512": "RZkez/JjpnO+MZ6efKkSynN6ZztLpw3WbxNzjLCPBd97wWj1S9ZYPWi0nmT4kWBRa6atHsdM1ydGkUr8GudyDQ==", + "type": "package", + "path": "microsoft.extensions.logging.abstractions/10.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll", + "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.10.0.2.nupkg.sha512", + "microsoft.extensions.logging.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.ObjectPool/8.0.11": { + "sha512": "6ApKcHNJigXBfZa6XlDQ8feJpq7SG1ogZXg6M4FiNzgd6irs3LUAzo0Pfn4F2ZI9liGnH1XIBR/OtSbZmJAV5w==", + "type": "package", + "path": "microsoft.extensions.objectpool/8.0.11", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net462/Microsoft.Extensions.ObjectPool.dll", + "lib/net462/Microsoft.Extensions.ObjectPool.xml", + "lib/net8.0/Microsoft.Extensions.ObjectPool.dll", + "lib/net8.0/Microsoft.Extensions.ObjectPool.xml", + "lib/netstandard2.0/Microsoft.Extensions.ObjectPool.dll", + "lib/netstandard2.0/Microsoft.Extensions.ObjectPool.xml", + "microsoft.extensions.objectpool.8.0.11.nupkg.sha512", + "microsoft.extensions.objectpool.nuspec" + ] + }, + "Microsoft.Extensions.Options/10.0.2": { + "sha512": "1De2LJjmxdqopI5AYC5dIhoZQ79AR5ayywxNF1rXrXFtKQfbQOV9+n/IsZBa7qWlr0MqoGpW8+OY2v/57udZOA==", + "type": "package", + "path": "microsoft.extensions.options/10.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Options.SourceGeneration.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Options.targets", + "buildTransitive/net462/Microsoft.Extensions.Options.targets", + "buildTransitive/net8.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Options.targets", + "lib/net10.0/Microsoft.Extensions.Options.dll", + "lib/net10.0/Microsoft.Extensions.Options.xml", + "lib/net462/Microsoft.Extensions.Options.dll", + "lib/net462/Microsoft.Extensions.Options.xml", + "lib/net8.0/Microsoft.Extensions.Options.dll", + "lib/net8.0/Microsoft.Extensions.Options.xml", + "lib/net9.0/Microsoft.Extensions.Options.dll", + "lib/net9.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.0/Microsoft.Extensions.Options.dll", + "lib/netstandard2.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.1/Microsoft.Extensions.Options.dll", + "lib/netstandard2.1/Microsoft.Extensions.Options.xml", + "microsoft.extensions.options.10.0.2.nupkg.sha512", + "microsoft.extensions.options.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Primitives/10.0.2": { + "sha512": "QmSiO+oLBEooGgB3i0GRXyeYRDHjllqt3k365jwfZlYWhvSHA3UL2NEVV5m8aZa041eIlblo6KMI5txvTMpTwA==", + "type": "package", + "path": "microsoft.extensions.primitives/10.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Primitives.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets", + "lib/net10.0/Microsoft.Extensions.Primitives.dll", + "lib/net10.0/Microsoft.Extensions.Primitives.xml", + "lib/net462/Microsoft.Extensions.Primitives.dll", + "lib/net462/Microsoft.Extensions.Primitives.xml", + "lib/net8.0/Microsoft.Extensions.Primitives.dll", + "lib/net8.0/Microsoft.Extensions.Primitives.xml", + "lib/net9.0/Microsoft.Extensions.Primitives.dll", + "lib/net9.0/Microsoft.Extensions.Primitives.xml", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml", + "microsoft.extensions.primitives.10.0.2.nupkg.sha512", + "microsoft.extensions.primitives.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.IdentityModel.Abstractions/8.14.0": { + "sha512": "iwbCpSjD3ehfTwBhtSNEtKPK0ICun6ov7Ibx6ISNA9bfwIyzI2Siwyi9eJFCJBwxowK9xcA1mj+jBWiigeqgcQ==", + "type": "package", + "path": "microsoft.identitymodel.abstractions/8.14.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net462/Microsoft.IdentityModel.Abstractions.dll", + "lib/net462/Microsoft.IdentityModel.Abstractions.xml", + "lib/net472/Microsoft.IdentityModel.Abstractions.dll", + "lib/net472/Microsoft.IdentityModel.Abstractions.xml", + "lib/net6.0/Microsoft.IdentityModel.Abstractions.dll", + "lib/net6.0/Microsoft.IdentityModel.Abstractions.xml", + "lib/net8.0/Microsoft.IdentityModel.Abstractions.dll", + "lib/net8.0/Microsoft.IdentityModel.Abstractions.xml", + "lib/net9.0/Microsoft.IdentityModel.Abstractions.dll", + "lib/net9.0/Microsoft.IdentityModel.Abstractions.xml", + "lib/netstandard2.0/Microsoft.IdentityModel.Abstractions.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.Abstractions.xml", + "microsoft.identitymodel.abstractions.8.14.0.nupkg.sha512", + "microsoft.identitymodel.abstractions.nuspec" + ] + }, + "Microsoft.IdentityModel.JsonWebTokens/8.14.0": { + "sha512": "4jOpiA4THdtpLyMdAb24dtj7+6GmvhOhxf5XHLYWmPKF8ApEnApal1UnJsKO4HxUWRXDA6C4WQVfYyqsRhpNpQ==", + "type": "package", + "path": "microsoft.identitymodel.jsonwebtokens/8.14.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net462/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/net462/Microsoft.IdentityModel.JsonWebTokens.xml", + "lib/net472/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/net472/Microsoft.IdentityModel.JsonWebTokens.xml", + "lib/net6.0/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/net6.0/Microsoft.IdentityModel.JsonWebTokens.xml", + "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/net8.0/Microsoft.IdentityModel.JsonWebTokens.xml", + "lib/net9.0/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/net9.0/Microsoft.IdentityModel.JsonWebTokens.xml", + "lib/netstandard2.0/Microsoft.IdentityModel.JsonWebTokens.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.JsonWebTokens.xml", + "microsoft.identitymodel.jsonwebtokens.8.14.0.nupkg.sha512", + "microsoft.identitymodel.jsonwebtokens.nuspec" + ] + }, + "Microsoft.IdentityModel.Logging/8.14.0": { + "sha512": "eqqnemdW38CKZEHS6diA50BV94QICozDZEvSrsvN3SJXUFwVB9gy+/oz76gldP7nZliA16IglXjXTCTdmU/Ejg==", + "type": "package", + "path": "microsoft.identitymodel.logging/8.14.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net462/Microsoft.IdentityModel.Logging.dll", + "lib/net462/Microsoft.IdentityModel.Logging.xml", + "lib/net472/Microsoft.IdentityModel.Logging.dll", + "lib/net472/Microsoft.IdentityModel.Logging.xml", + "lib/net6.0/Microsoft.IdentityModel.Logging.dll", + "lib/net6.0/Microsoft.IdentityModel.Logging.xml", + "lib/net8.0/Microsoft.IdentityModel.Logging.dll", + "lib/net8.0/Microsoft.IdentityModel.Logging.xml", + "lib/net9.0/Microsoft.IdentityModel.Logging.dll", + "lib/net9.0/Microsoft.IdentityModel.Logging.xml", + "lib/netstandard2.0/Microsoft.IdentityModel.Logging.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.Logging.xml", + "microsoft.identitymodel.logging.8.14.0.nupkg.sha512", + "microsoft.identitymodel.logging.nuspec" + ] + }, + "Microsoft.IdentityModel.Protocols/7.1.2": { + "sha512": "SydLwMRFx6EHPWJ+N6+MVaoArN1Htt92b935O3RUWPY1yUF63zEjvd3lBu79eWdZUwedP8TN2I5V9T3nackvIQ==", + "type": "package", + "path": "microsoft.identitymodel.protocols/7.1.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net461/Microsoft.IdentityModel.Protocols.dll", + "lib/net461/Microsoft.IdentityModel.Protocols.xml", + "lib/net462/Microsoft.IdentityModel.Protocols.dll", + "lib/net462/Microsoft.IdentityModel.Protocols.xml", + "lib/net472/Microsoft.IdentityModel.Protocols.dll", + "lib/net472/Microsoft.IdentityModel.Protocols.xml", + "lib/net6.0/Microsoft.IdentityModel.Protocols.dll", + "lib/net6.0/Microsoft.IdentityModel.Protocols.xml", + "lib/net8.0/Microsoft.IdentityModel.Protocols.dll", + "lib/net8.0/Microsoft.IdentityModel.Protocols.xml", + "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.xml", + "microsoft.identitymodel.protocols.7.1.2.nupkg.sha512", + "microsoft.identitymodel.protocols.nuspec" + ] + }, + "Microsoft.IdentityModel.Protocols.OpenIdConnect/7.1.2": { + "sha512": "6lHQoLXhnMQ42mGrfDkzbIOR3rzKM1W1tgTeMPLgLCqwwGw0d96xFi/UiX/fYsu7d6cD5MJiL3+4HuI8VU+sVQ==", + "type": "package", + "path": "microsoft.identitymodel.protocols.openidconnect/7.1.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net461/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/net461/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "lib/net462/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/net462/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "lib/net472/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/net472/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "lib/net6.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/net6.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/net8.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "microsoft.identitymodel.protocols.openidconnect.7.1.2.nupkg.sha512", + "microsoft.identitymodel.protocols.openidconnect.nuspec" + ] + }, + "Microsoft.IdentityModel.Tokens/8.14.0": { + "sha512": "lKIZiBiGd36k02TCdMHp1KlNWisyIvQxcYJvIkz7P4gSQ9zi8dgh6S5Grj8NNG7HWYIPfQymGyoZ6JB5d1Lo1g==", + "type": "package", + "path": "microsoft.identitymodel.tokens/8.14.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net462/Microsoft.IdentityModel.Tokens.dll", + "lib/net462/Microsoft.IdentityModel.Tokens.xml", + "lib/net472/Microsoft.IdentityModel.Tokens.dll", + "lib/net472/Microsoft.IdentityModel.Tokens.xml", + "lib/net6.0/Microsoft.IdentityModel.Tokens.dll", + "lib/net6.0/Microsoft.IdentityModel.Tokens.xml", + "lib/net8.0/Microsoft.IdentityModel.Tokens.dll", + "lib/net8.0/Microsoft.IdentityModel.Tokens.xml", + "lib/net9.0/Microsoft.IdentityModel.Tokens.dll", + "lib/net9.0/Microsoft.IdentityModel.Tokens.xml", + "lib/netstandard2.0/Microsoft.IdentityModel.Tokens.dll", + "lib/netstandard2.0/Microsoft.IdentityModel.Tokens.xml", + "microsoft.identitymodel.tokens.8.14.0.nupkg.sha512", + "microsoft.identitymodel.tokens.nuspec" + ] + }, + "Microsoft.Net.Http.Headers/2.3.0": { + "sha512": "/M0wVg6tJUOHutWD3BMOUVZAioJVXe0tCpFiovzv0T9T12TBf4MnaHP0efO8TCr1a6O9RZgQeZ9Gdark8L9XdA==", + "type": "package", + "path": "microsoft.net.http.headers/2.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Net.Http.Headers.dll", + "lib/netstandard2.0/Microsoft.Net.Http.Headers.xml", + "microsoft.net.http.headers.2.3.0.nupkg.sha512", + "microsoft.net.http.headers.nuspec" + ] + }, + "Microsoft.NET.Test.Sdk/17.8.0": { + "sha512": "BmTYGbD/YuDHmApIENdoyN1jCk0Rj1fJB0+B/fVekyTdVidr91IlzhqzytiUgaEAzL1ZJcYCme0MeBMYvJVzvw==", + "type": "package", + "path": "microsoft.net.test.sdk/17.8.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE_MIT.txt", + "build/net462/Microsoft.NET.Test.Sdk.props", + "build/net462/Microsoft.NET.Test.Sdk.targets", + "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.Program.cs", + "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.Program.fs", + "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.Program.vb", + "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.props", + "build/netcoreapp3.1/Microsoft.NET.Test.Sdk.targets", + "buildMultiTargeting/Microsoft.NET.Test.Sdk.props", + "lib/net462/_._", + "lib/netcoreapp3.1/_._", + "microsoft.net.test.sdk.17.8.0.nupkg.sha512", + "microsoft.net.test.sdk.nuspec" + ] + }, + "Microsoft.NETCore.Platforms/1.1.0": { + "sha512": "kz0PEW2lhqygehI/d6XsPCQzD7ff7gUJaVGPVETX611eadGsA3A877GdSlU0LRVMCTH/+P3o2iDTak+S08V2+A==", + "type": "package", + "path": "microsoft.netcore.platforms/1.1.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "microsoft.netcore.platforms.1.1.0.nupkg.sha512", + "microsoft.netcore.platforms.nuspec", + "runtime.json" + ] + }, + "Microsoft.NETCore.Targets/1.1.0": { + "sha512": "aOZA3BWfz9RXjpzt0sRJJMjAscAUm3Hoa4UWAfceV9UTYxgwZ1lZt5nO2myFf+/jetYQo4uTP7zS8sJY67BBxg==", + "type": "package", + "path": "microsoft.netcore.targets/1.1.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "microsoft.netcore.targets.1.1.0.nupkg.sha512", + "microsoft.netcore.targets.nuspec", + "runtime.json" + ] + }, + "Microsoft.OpenApi/1.6.14": { + "sha512": "tTaBT8qjk3xINfESyOPE2rIellPvB7qpVqiWiyA/lACVvz+xOGiXhFUfohcx82NLbi5avzLW0lx+s6oAqQijfw==", + "type": "package", + "path": "microsoft.openapi/1.6.14", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/netstandard2.0/Microsoft.OpenApi.dll", + "lib/netstandard2.0/Microsoft.OpenApi.pdb", + "lib/netstandard2.0/Microsoft.OpenApi.xml", + "microsoft.openapi.1.6.14.nupkg.sha512", + "microsoft.openapi.nuspec" + ] + }, + "Microsoft.TestPlatform.ObjectModel/17.8.0": { + "sha512": "AYy6vlpGMfz5kOFq99L93RGbqftW/8eQTqjT9iGXW6s9MRP3UdtY8idJ8rJcjeSja8A18IhIro5YnH3uv1nz4g==", + "type": "package", + "path": "microsoft.testplatform.objectmodel/17.8.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE_MIT.txt", + "lib/net462/Microsoft.TestPlatform.CoreUtilities.dll", + "lib/net462/Microsoft.TestPlatform.PlatformAbstractions.dll", + "lib/net462/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll", + "lib/net462/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/net462/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/net462/de/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/net462/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/net462/es/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/net462/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/net462/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/net462/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/net462/it/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/net462/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/net462/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/net462/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/net462/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/net462/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/net462/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/net462/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/net462/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/net462/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/net462/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/net462/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/net462/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/net462/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/net462/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/net462/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/net462/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/net462/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll", + "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll", + "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll", + "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netstandard2.0/Microsoft.TestPlatform.CoreUtilities.dll", + "lib/netstandard2.0/Microsoft.TestPlatform.PlatformAbstractions.dll", + "lib/netstandard2.0/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll", + "lib/netstandard2.0/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netstandard2.0/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netstandard2.0/de/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netstandard2.0/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netstandard2.0/es/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netstandard2.0/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netstandard2.0/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netstandard2.0/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netstandard2.0/it/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netstandard2.0/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netstandard2.0/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netstandard2.0/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netstandard2.0/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netstandard2.0/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netstandard2.0/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netstandard2.0/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netstandard2.0/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netstandard2.0/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netstandard2.0/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netstandard2.0/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netstandard2.0/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netstandard2.0/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netstandard2.0/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netstandard2.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "lib/netstandard2.0/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll", + "lib/netstandard2.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll", + "microsoft.testplatform.objectmodel.17.8.0.nupkg.sha512", + "microsoft.testplatform.objectmodel.nuspec" + ] + }, + "Microsoft.TestPlatform.TestHost/17.8.0": { + "sha512": "9ivcl/7SGRmOT0YYrHQGohWiT5YCpkmy/UEzldfVisLm6QxbLaK3FAJqZXI34rnRLmqqDCeMQxKINwmKwAPiDw==", + "type": "package", + "path": "microsoft.testplatform.testhost/17.8.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE_MIT.txt", + "ThirdPartyNotices.txt", + "build/netcoreapp3.1/Microsoft.TestPlatform.TestHost.props", + "build/netcoreapp3.1/x64/testhost.dll", + "build/netcoreapp3.1/x64/testhost.exe", + "build/netcoreapp3.1/x86/testhost.x86.dll", + "build/netcoreapp3.1/x86/testhost.x86.exe", + "lib/net462/_._", + "lib/netcoreapp3.1/Microsoft.TestPlatform.CommunicationUtilities.dll", + "lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll", + "lib/netcoreapp3.1/Microsoft.TestPlatform.CrossPlatEngine.dll", + "lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll", + "lib/netcoreapp3.1/Microsoft.TestPlatform.Utilities.dll", + "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.Common.dll", + "lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll", + "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", + "lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", + "lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", + "lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", + "lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", + "lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", + "lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", + "lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", + "lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", + "lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", + "lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", + "lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", + "lib/netcoreapp3.1/testhost.deps.json", + "lib/netcoreapp3.1/testhost.dll", + "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", + "lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", + "lib/netcoreapp3.1/x64/msdia140.dll", + "lib/netcoreapp3.1/x86/msdia140.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", + "lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CommunicationUtilities.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CrossPlatEngine.resources.dll", + "lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.Common.resources.dll", + "microsoft.testplatform.testhost.17.8.0.nupkg.sha512", + "microsoft.testplatform.testhost.nuspec" + ] + }, + "Microsoft.VisualStudio.Azure.Containers.Tools.Targets/1.22.1": { + "sha512": "EfYANhAWqmWKoLwN6bxoiPZSOfJSO9lzX+UrU6GVhLhPub1Hd+5f0zL0/tggIA6mRz6Ebw2xCNcIsM4k+7NPng==", + "type": "package", + "path": "microsoft.visualstudio.azure.containers.tools.targets/1.22.1", + "hasTools": true, + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "CHANGELOG.md", + "EULA.md", + "ThirdPartyNotices.txt", + "build/Container.props", + "build/Container.targets", + "build/Microsoft.VisualStudio.Azure.Containers.Tools.Targets.props", + "build/Microsoft.VisualStudio.Azure.Containers.Tools.Targets.targets", + "build/Rules/GeneralBrowseObject.xaml", + "build/Rules/cs-CZ/GeneralBrowseObject.xaml", + "build/Rules/de-DE/GeneralBrowseObject.xaml", + "build/Rules/es-ES/GeneralBrowseObject.xaml", + "build/Rules/fr-FR/GeneralBrowseObject.xaml", + "build/Rules/it-IT/GeneralBrowseObject.xaml", + "build/Rules/ja-JP/GeneralBrowseObject.xaml", + "build/Rules/ko-KR/GeneralBrowseObject.xaml", + "build/Rules/pl-PL/GeneralBrowseObject.xaml", + "build/Rules/pt-BR/GeneralBrowseObject.xaml", + "build/Rules/ru-RU/GeneralBrowseObject.xaml", + "build/Rules/tr-TR/GeneralBrowseObject.xaml", + "build/Rules/zh-CN/GeneralBrowseObject.xaml", + "build/Rules/zh-TW/GeneralBrowseObject.xaml", + "build/ToolsTarget.props", + "build/ToolsTarget.targets", + "icon.png", + "microsoft.visualstudio.azure.containers.tools.targets.1.22.1.nupkg.sha512", + "microsoft.visualstudio.azure.containers.tools.targets.nuspec", + "tools/Microsoft.VisualStudio.Containers.Tools.Common.dll", + "tools/Microsoft.VisualStudio.Containers.Tools.Shared.dll", + "tools/Microsoft.VisualStudio.Containers.Tools.Tasks.dll", + "tools/Newtonsoft.Json.dll", + "tools/System.Security.Principal.Windows.dll", + "tools/cs/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", + "tools/cs/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", + "tools/cs/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", + "tools/de/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", + "tools/de/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", + "tools/de/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", + "tools/es/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", + "tools/es/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", + "tools/es/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", + "tools/fr/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", + "tools/fr/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", + "tools/fr/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", + "tools/it/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", + "tools/it/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", + "tools/it/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", + "tools/ja/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", + "tools/ja/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", + "tools/ja/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", + "tools/ko/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", + "tools/ko/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", + "tools/ko/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", + "tools/pl/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", + "tools/pl/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", + "tools/pl/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", + "tools/pt-BR/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", + "tools/pt-BR/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", + "tools/pt-BR/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", + "tools/ru/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", + "tools/ru/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", + "tools/ru/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", + "tools/tr/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", + "tools/tr/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", + "tools/tr/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", + "tools/zh-Hans/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", + "tools/zh-Hans/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", + "tools/zh-Hans/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll", + "tools/zh-Hant/Microsoft.VisualStudio.Containers.Tools.Common.resources.dll", + "tools/zh-Hant/Microsoft.VisualStudio.Containers.Tools.Shared.resources.dll", + "tools/zh-Hant/Microsoft.VisualStudio.Containers.Tools.Tasks.resources.dll" + ] + }, + "Microsoft.Win32.Primitives/4.3.0": { + "sha512": "9ZQKCWxH7Ijp9BfahvL2Zyf1cJIk8XYLF6Yjzr2yi0b2cOut/HQ31qf1ThHAgCc3WiZMdnWcfJCgN82/0UunxA==", + "type": "package", + "path": "microsoft.win32.primitives/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/Microsoft.Win32.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "microsoft.win32.primitives.4.3.0.nupkg.sha512", + "microsoft.win32.primitives.nuspec", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/Microsoft.Win32.Primitives.dll", + "ref/netstandard1.3/Microsoft.Win32.Primitives.dll", + "ref/netstandard1.3/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/de/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/es/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/fr/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/it/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/ja/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/ko/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/ru/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/zh-hans/Microsoft.Win32.Primitives.xml", + "ref/netstandard1.3/zh-hant/Microsoft.Win32.Primitives.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._" + ] + }, + "Moq/4.20.72": { + "sha512": "EA55cjyNn8eTNWrgrdZJH5QLFp2L43oxl1tlkoYUKIE9pRwL784OWiTXeCV5ApS+AMYEAlt7Fo03A2XfouvHmQ==", + "type": "package", + "path": "moq/4.20.72", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "icon.png", + "lib/net462/Moq.dll", + "lib/net6.0/Moq.dll", + "lib/netstandard2.0/Moq.dll", + "lib/netstandard2.1/Moq.dll", + "moq.4.20.72.nupkg.sha512", + "moq.nuspec", + "readme.md" + ] + }, + "MySqlConnector/2.3.5": { + "sha512": "AmEfUPkFl+Ev6jJ8Dhns3CYHBfD12RHzGYWuLt6DfG6/af6YvOMyPz74ZPPjBYQGRJkumD2Z48Kqm8s5DJuhLA==", + "type": "package", + "path": "mysqlconnector/2.3.5", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net462/MySqlConnector.dll", + "lib/net462/MySqlConnector.xml", + "lib/net471/MySqlConnector.dll", + "lib/net471/MySqlConnector.xml", + "lib/net48/MySqlConnector.dll", + "lib/net48/MySqlConnector.xml", + "lib/net6.0/MySqlConnector.dll", + "lib/net6.0/MySqlConnector.xml", + "lib/net7.0/MySqlConnector.dll", + "lib/net7.0/MySqlConnector.xml", + "lib/net8.0/MySqlConnector.dll", + "lib/net8.0/MySqlConnector.xml", + "lib/netstandard2.0/MySqlConnector.dll", + "lib/netstandard2.0/MySqlConnector.xml", + "lib/netstandard2.1/MySqlConnector.dll", + "lib/netstandard2.1/MySqlConnector.xml", + "logo.png", + "mysqlconnector.2.3.5.nupkg.sha512", + "mysqlconnector.nuspec" + ] + }, + "NETStandard.Library/1.6.1": { + "sha512": "WcSp3+vP+yHNgS8EV5J7pZ9IRpeDuARBPN28by8zqff1wJQXm26PVU8L3/fYLBJVU7BtDyqNVWq2KlCVvSSR4A==", + "type": "package", + "path": "netstandard.library/1.6.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "netstandard.library.1.6.1.nupkg.sha512", + "netstandard.library.nuspec" + ] + }, + "Newtonsoft.Json/13.0.4": { + "sha512": "pdgNNMai3zv51W5aq268sujXUyx7SNdE2bj1wZcWjAQrKMFZV260lbqYop1d2GM67JI1huLRwxo9ZqnfF/lC6A==", + "type": "package", + "path": "newtonsoft.json/13.0.4", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.md", + "README.md", + "lib/net20/Newtonsoft.Json.dll", + "lib/net20/Newtonsoft.Json.xml", + "lib/net35/Newtonsoft.Json.dll", + "lib/net35/Newtonsoft.Json.xml", + "lib/net40/Newtonsoft.Json.dll", + "lib/net40/Newtonsoft.Json.xml", + "lib/net45/Newtonsoft.Json.dll", + "lib/net45/Newtonsoft.Json.xml", + "lib/net6.0/Newtonsoft.Json.dll", + "lib/net6.0/Newtonsoft.Json.xml", + "lib/netstandard1.0/Newtonsoft.Json.dll", + "lib/netstandard1.0/Newtonsoft.Json.xml", + "lib/netstandard1.3/Newtonsoft.Json.dll", + "lib/netstandard1.3/Newtonsoft.Json.xml", + "lib/netstandard2.0/Newtonsoft.Json.dll", + "lib/netstandard2.0/Newtonsoft.Json.xml", + "newtonsoft.json.13.0.4.nupkg.sha512", + "newtonsoft.json.nuspec", + "packageIcon.png" + ] + }, + "NuGet.Frameworks/6.5.0": { + "sha512": "QWINE2x3MbTODsWT1Gh71GaGb5icBz4chS8VYvTgsBnsi8esgN6wtHhydd7fvToWECYGq7T4cgBBDiKD/363fg==", + "type": "package", + "path": "nuget.frameworks/6.5.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "icon.png", + "lib/net472/NuGet.Frameworks.dll", + "lib/netstandard2.0/NuGet.Frameworks.dll", + "nuget.frameworks.6.5.0.nupkg.sha512", + "nuget.frameworks.nuspec" + ] + }, + "Pipelines.Sockets.Unofficial/2.2.8": { + "sha512": "zG2FApP5zxSx6OcdJQLbZDk2AVlN2BNQD6MorwIfV6gVj0RRxWPEp2LXAxqDGZqeNV1Zp0BNPcNaey/GXmTdvQ==", + "type": "package", + "path": "pipelines.sockets.unofficial/2.2.8", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net461/Pipelines.Sockets.Unofficial.dll", + "lib/net461/Pipelines.Sockets.Unofficial.xml", + "lib/net472/Pipelines.Sockets.Unofficial.dll", + "lib/net472/Pipelines.Sockets.Unofficial.xml", + "lib/net5.0/Pipelines.Sockets.Unofficial.dll", + "lib/net5.0/Pipelines.Sockets.Unofficial.xml", + "lib/netcoreapp3.1/Pipelines.Sockets.Unofficial.dll", + "lib/netcoreapp3.1/Pipelines.Sockets.Unofficial.xml", + "lib/netstandard2.0/Pipelines.Sockets.Unofficial.dll", + "lib/netstandard2.0/Pipelines.Sockets.Unofficial.xml", + "lib/netstandard2.1/Pipelines.Sockets.Unofficial.dll", + "lib/netstandard2.1/Pipelines.Sockets.Unofficial.xml", + "pipelines.sockets.unofficial.2.2.8.nupkg.sha512", + "pipelines.sockets.unofficial.nuspec" + ] + }, + "Pomelo.EntityFrameworkCore.MySql/8.0.3": { + "sha512": "gOHP6v/nFp5V/FgHqv9mZocGqCLGofihEX9dTbLhiXX3H7SJHmGX70GIPUpiqLT+1jIfDxg1PZh9MTUKuk7Kig==", + "type": "package", + "path": "pomelo.entityframeworkcore.mysql/8.0.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "icon.png", + "lib/net8.0/Pomelo.EntityFrameworkCore.MySql.dll", + "lib/net8.0/Pomelo.EntityFrameworkCore.MySql.xml", + "pomelo.entityframeworkcore.mysql.8.0.3.nupkg.sha512", + "pomelo.entityframeworkcore.mysql.nuspec" + ] + }, + "RabbitMQ.Client/7.1.2": { + "sha512": "y3c6ulgULScWthHw5PLM1ShHRLhxg0vCtzX/hh61gRgNecL3ZC3WoBW2HYHoXOVRqTl99Br9E7CZEytGZEsCyQ==", + "type": "package", + "path": "rabbitmq.client/7.1.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "icon.png", + "lib/net8.0/RabbitMQ.Client.dll", + "lib/net8.0/RabbitMQ.Client.xml", + "lib/netstandard2.0/RabbitMQ.Client.dll", + "lib/netstandard2.0/RabbitMQ.Client.xml", + "rabbitmq.client.7.1.2.nupkg.sha512", + "rabbitmq.client.nuspec" + ] + }, + "RedLock.net/2.3.2": { + "sha512": "jlrALAArm4dCE292U3EtRoMnVKJ9M6sunbZn/oG5OuzlGtTpusXBfvDrnGWbgGDlWV027f5E9H5CiVnPxiq8+g==", + "type": "package", + "path": "redlock.net/2.3.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net461/RedLockNet.Abstractions.dll", + "lib/net461/RedLockNet.SERedis.dll", + "lib/net472/RedLockNet.Abstractions.dll", + "lib/net472/RedLockNet.SERedis.dll", + "lib/netstandard2.0/RedLockNet.Abstractions.dll", + "lib/netstandard2.0/RedLockNet.SERedis.dll", + "redlock-icon.png", + "redlock.net.2.3.2.nupkg.sha512", + "redlock.net.nuspec" + ] + }, + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "HdSSp5MnJSsg08KMfZThpuLPJpPwE5hBXvHwoKWosyHHfe8Mh5WKT0ylEOf6yNzX6Ngjxe4Whkafh5q7Ymac4Q==", + "type": "package", + "path": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/debian.8-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "+yH1a49wJMy8Zt4yx5RhJrxO/DBDByAiCzNwiETI+1S4mPdCu0OY4djdciC7Vssk0l22wQaDLrXxXkp+3+7bVA==", + "type": "package", + "path": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/fedora.23-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "c3YNH1GQJbfIPJeCnr4avseugSqPrxwIqzthYyZDN6EuOyNOzq+y2KSUfRcXauya1sF4foESTgwM5e1A8arAKw==", + "type": "package", + "path": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/fedora.24-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.native.System/4.3.0": { + "sha512": "c/qWt2LieNZIj1jGnVNsE2Kl23Ya2aSTBuXMD6V7k9KWr6l16Tqdwq+hJScEpWER9753NWC8h96PaVNY5Ld7Jw==", + "type": "package", + "path": "runtime.native.system/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.4.3.0.nupkg.sha512", + "runtime.native.system.nuspec" + ] + }, + "runtime.native.System.IO.Compression/4.3.0": { + "sha512": "INBPonS5QPEgn7naufQFXJEp3zX6L4bwHgJ/ZH78aBTpeNfQMtf7C6VrAFhlq2xxWBveIOWyFzQjJ8XzHMhdOQ==", + "type": "package", + "path": "runtime.native.system.io.compression/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.io.compression.4.3.0.nupkg.sha512", + "runtime.native.system.io.compression.nuspec" + ] + }, + "runtime.native.System.Net.Http/4.3.0": { + "sha512": "ZVuZJqnnegJhd2k/PtAbbIcZ3aZeITq3sj06oKfMBSfphW3HDmk/t4ObvbOk/JA/swGR0LNqMksAh/f7gpTROg==", + "type": "package", + "path": "runtime.native.system.net.http/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.net.http.4.3.0.nupkg.sha512", + "runtime.native.system.net.http.nuspec" + ] + }, + "runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "sha512": "DloMk88juo0OuOWr56QG7MNchmafTLYWvABy36izkrLI5VledI0rq28KGs1i9wbpeT9NPQrx/wTf8U2vazqQ3Q==", + "type": "package", + "path": "runtime.native.system.security.cryptography.apple/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", + "runtime.native.system.security.cryptography.apple.nuspec" + ] + }, + "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "NS1U+700m4KFRHR5o4vo9DSlTmlCKu/u7dtE5sUHVIPB+xpXxYQvgBgA6wEIeCz6Yfn0Z52/72WYsToCEPJnrw==", + "type": "package", + "path": "runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.native.system.security.cryptography.openssl.nuspec" + ] + }, + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "b3pthNgxxFcD+Pc0WSEoC0+md3MyhRS6aCEeenvNE3Fdw1HyJ18ZhRFVJJzIeR/O/jpxPboB805Ho0T3Ul7w8A==", + "type": "package", + "path": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/opensuse.13.2-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "KeLz4HClKf+nFS7p/6Fi/CqyLXh81FpiGzcmuS8DGi9lUqSnZ6Es23/gv2O+1XVGfrbNmviF7CckBpavkBoIFQ==", + "type": "package", + "path": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/opensuse.42.1-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "sha512": "kVXCuMTrTlxq4XOOMAysuNwsXWpYeboGddNGpIgNSZmv1b6r/s/DPk0fYMB7Q5Qo4bY68o48jt4T4y5BVecbCQ==", + "type": "package", + "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", + "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.nuspec", + "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.Apple.dylib" + ] + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "X7IdhILzr4ROXd8mI1BUCQMSHSQwelUlBjF1JyTKCjXaOGn2fB4EKBxQbCK2VjO3WaWIdlXZL3W6TiIVnrhX4g==", + "type": "package", + "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.OpenSsl.dylib" + ] + }, + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "nyFNiCk/r+VOiIqreLix8yN+q3Wga9+SE8BCgkf+2BwEKiNx6DyvFjCgkfV743/grxv8jHJ8gUK4XEQw7yzRYg==", + "type": "package", + "path": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/rhel.7-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "ytoewC6wGorL7KoCAvRfsgoJPJbNq+64k2SqW6JcOAebWsFUvCCYgfzQMrnpvPiEl4OrblUlhF2ji+Q1+SVLrQ==", + "type": "package", + "path": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/ubuntu.14.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "I8bKw2I8k58Wx7fMKQJn2R8lamboCAiHfHeV/pS65ScKWMMI0+wJkLYlEKvgW1D/XvSl/221clBoR2q9QNNM7A==", + "type": "package", + "path": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/ubuntu.16.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "VB5cn/7OzUfzdnC8tqAIMQciVLiq2epm2NrAm1E9OjNRyG4lVhfR61SMcLizejzQP8R8Uf/0l5qOIbUEi+RdEg==", + "type": "package", + "path": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/ubuntu.16.10-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "StackExchange.Redis/2.9.32": { + "sha512": "j5Rjbf7gWz5izrn0UWQy9RlQY4cQDPkwJfVqATnVsOa/+zzJrps12LOgacMsDl/Vit2f01cDiDkG/Rst8v2iGw==", + "type": "package", + "path": "stackexchange.redis/2.9.32", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net461/StackExchange.Redis.dll", + "lib/net461/StackExchange.Redis.xml", + "lib/net472/StackExchange.Redis.dll", + "lib/net472/StackExchange.Redis.xml", + "lib/net6.0/StackExchange.Redis.dll", + "lib/net6.0/StackExchange.Redis.xml", + "lib/net8.0/StackExchange.Redis.dll", + "lib/net8.0/StackExchange.Redis.xml", + "lib/netcoreapp3.1/StackExchange.Redis.dll", + "lib/netcoreapp3.1/StackExchange.Redis.xml", + "lib/netstandard2.0/StackExchange.Redis.dll", + "lib/netstandard2.0/StackExchange.Redis.xml", + "stackexchange.redis.2.9.32.nupkg.sha512", + "stackexchange.redis.nuspec" + ] + }, + "Swashbuckle.AspNetCore/6.6.2": { + "sha512": "+NB4UYVYN6AhDSjW0IJAd1AGD8V33gemFNLPaxKTtPkHB+HaKAKf9MGAEUPivEWvqeQfcKIw8lJaHq6LHljRuw==", + "type": "package", + "path": "swashbuckle.aspnetcore/6.6.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "build/Swashbuckle.AspNetCore.props", + "swashbuckle.aspnetcore.6.6.2.nupkg.sha512", + "swashbuckle.aspnetcore.nuspec" + ] + }, + "Swashbuckle.AspNetCore.Swagger/6.6.2": { + "sha512": "ovgPTSYX83UrQUWiS5vzDcJ8TEX1MAxBgDFMK45rC24MorHEPQlZAHlaXj/yth4Zf6xcktpUgTEBvffRQVwDKA==", + "type": "package", + "path": "swashbuckle.aspnetcore.swagger/6.6.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net5.0/Swashbuckle.AspNetCore.Swagger.dll", + "lib/net5.0/Swashbuckle.AspNetCore.Swagger.pdb", + "lib/net5.0/Swashbuckle.AspNetCore.Swagger.xml", + "lib/net6.0/Swashbuckle.AspNetCore.Swagger.dll", + "lib/net6.0/Swashbuckle.AspNetCore.Swagger.pdb", + "lib/net6.0/Swashbuckle.AspNetCore.Swagger.xml", + "lib/net7.0/Swashbuckle.AspNetCore.Swagger.dll", + "lib/net7.0/Swashbuckle.AspNetCore.Swagger.pdb", + "lib/net7.0/Swashbuckle.AspNetCore.Swagger.xml", + "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll", + "lib/net8.0/Swashbuckle.AspNetCore.Swagger.pdb", + "lib/net8.0/Swashbuckle.AspNetCore.Swagger.xml", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.dll", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.pdb", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.xml", + "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.dll", + "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.pdb", + "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.xml", + "package-readme.md", + "swashbuckle.aspnetcore.swagger.6.6.2.nupkg.sha512", + "swashbuckle.aspnetcore.swagger.nuspec" + ] + }, + "Swashbuckle.AspNetCore.SwaggerGen/6.6.2": { + "sha512": "zv4ikn4AT1VYuOsDCpktLq4QDq08e7Utzbir86M5/ZkRaLXbCPF11E1/vTmOiDzRTl0zTZINQU2qLKwTcHgfrA==", + "type": "package", + "path": "swashbuckle.aspnetcore.swaggergen/6.6.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.dll", + "lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", + "lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.xml", + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll", + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.xml", + "lib/net7.0/Swashbuckle.AspNetCore.SwaggerGen.dll", + "lib/net7.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", + "lib/net7.0/Swashbuckle.AspNetCore.SwaggerGen.xml", + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll", + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.xml", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.dll", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.xml", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.dll", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.xml", + "package-readme.md", + "swashbuckle.aspnetcore.swaggergen.6.6.2.nupkg.sha512", + "swashbuckle.aspnetcore.swaggergen.nuspec" + ] + }, + "Swashbuckle.AspNetCore.SwaggerUI/6.6.2": { + "sha512": "mBBb+/8Hm2Q3Wygag+hu2jj69tZW5psuv0vMRXY07Wy+Rrj40vRP8ZTbKBhs91r45/HXT4aY4z0iSBYx1h6JvA==", + "type": "package", + "path": "swashbuckle.aspnetcore.swaggerui/6.6.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.dll", + "lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", + "lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.xml", + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll", + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.xml", + "lib/net7.0/Swashbuckle.AspNetCore.SwaggerUI.dll", + "lib/net7.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", + "lib/net7.0/Swashbuckle.AspNetCore.SwaggerUI.xml", + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll", + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", + "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.xml", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.dll", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.xml", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.dll", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.xml", + "package-readme.md", + "swashbuckle.aspnetcore.swaggerui.6.6.2.nupkg.sha512", + "swashbuckle.aspnetcore.swaggerui.nuspec" + ] + }, + "System.AppContext/4.3.0": { + "sha512": "fKC+rmaLfeIzUhagxY17Q9siv/sPrjjKcfNg1Ic8IlQkZLipo8ljcaZQu4VtI4Jqbzjc2VTjzGLF6WmsRXAEgA==", + "type": "package", + "path": "system.appcontext/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.AppContext.dll", + "lib/net463/System.AppContext.dll", + "lib/netcore50/System.AppContext.dll", + "lib/netstandard1.6/System.AppContext.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.AppContext.dll", + "ref/net463/System.AppContext.dll", + "ref/netstandard/_._", + "ref/netstandard1.3/System.AppContext.dll", + "ref/netstandard1.3/System.AppContext.xml", + "ref/netstandard1.3/de/System.AppContext.xml", + "ref/netstandard1.3/es/System.AppContext.xml", + "ref/netstandard1.3/fr/System.AppContext.xml", + "ref/netstandard1.3/it/System.AppContext.xml", + "ref/netstandard1.3/ja/System.AppContext.xml", + "ref/netstandard1.3/ko/System.AppContext.xml", + "ref/netstandard1.3/ru/System.AppContext.xml", + "ref/netstandard1.3/zh-hans/System.AppContext.xml", + "ref/netstandard1.3/zh-hant/System.AppContext.xml", + "ref/netstandard1.6/System.AppContext.dll", + "ref/netstandard1.6/System.AppContext.xml", + "ref/netstandard1.6/de/System.AppContext.xml", + "ref/netstandard1.6/es/System.AppContext.xml", + "ref/netstandard1.6/fr/System.AppContext.xml", + "ref/netstandard1.6/it/System.AppContext.xml", + "ref/netstandard1.6/ja/System.AppContext.xml", + "ref/netstandard1.6/ko/System.AppContext.xml", + "ref/netstandard1.6/ru/System.AppContext.xml", + "ref/netstandard1.6/zh-hans/System.AppContext.xml", + "ref/netstandard1.6/zh-hant/System.AppContext.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.AppContext.dll", + "system.appcontext.4.3.0.nupkg.sha512", + "system.appcontext.nuspec" + ] + }, + "System.Buffers/4.6.0": { + "sha512": "lN6tZi7Q46zFzAbRYXTIvfXcyvQQgxnY7Xm6C6xQ9784dEL1amjM6S6Iw4ZpsvesAKnRVsM4scrDQaDqSClkjA==", + "type": "package", + "path": "system.buffers/4.6.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "buildTransitive/net461/System.Buffers.targets", + "buildTransitive/net462/_._", + "lib/net462/System.Buffers.dll", + "lib/net462/System.Buffers.xml", + "lib/netcoreapp2.1/_._", + "lib/netstandard2.0/System.Buffers.dll", + "lib/netstandard2.0/System.Buffers.xml", + "system.buffers.4.6.0.nupkg.sha512", + "system.buffers.nuspec" + ] + }, + "System.Collections/4.3.0": { + "sha512": "3Dcj85/TBdVpL5Zr+gEEBUuFe2icOnLalmEh9hfck1PTYbbyWuZgh4fmm2ysCLTrqLQw6t3TgTyJ+VLp+Qb+Lw==", + "type": "package", + "path": "system.collections/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Collections.dll", + "ref/netcore50/System.Collections.xml", + "ref/netcore50/de/System.Collections.xml", + "ref/netcore50/es/System.Collections.xml", + "ref/netcore50/fr/System.Collections.xml", + "ref/netcore50/it/System.Collections.xml", + "ref/netcore50/ja/System.Collections.xml", + "ref/netcore50/ko/System.Collections.xml", + "ref/netcore50/ru/System.Collections.xml", + "ref/netcore50/zh-hans/System.Collections.xml", + "ref/netcore50/zh-hant/System.Collections.xml", + "ref/netstandard1.0/System.Collections.dll", + "ref/netstandard1.0/System.Collections.xml", + "ref/netstandard1.0/de/System.Collections.xml", + "ref/netstandard1.0/es/System.Collections.xml", + "ref/netstandard1.0/fr/System.Collections.xml", + "ref/netstandard1.0/it/System.Collections.xml", + "ref/netstandard1.0/ja/System.Collections.xml", + "ref/netstandard1.0/ko/System.Collections.xml", + "ref/netstandard1.0/ru/System.Collections.xml", + "ref/netstandard1.0/zh-hans/System.Collections.xml", + "ref/netstandard1.0/zh-hant/System.Collections.xml", + "ref/netstandard1.3/System.Collections.dll", + "ref/netstandard1.3/System.Collections.xml", + "ref/netstandard1.3/de/System.Collections.xml", + "ref/netstandard1.3/es/System.Collections.xml", + "ref/netstandard1.3/fr/System.Collections.xml", + "ref/netstandard1.3/it/System.Collections.xml", + "ref/netstandard1.3/ja/System.Collections.xml", + "ref/netstandard1.3/ko/System.Collections.xml", + "ref/netstandard1.3/ru/System.Collections.xml", + "ref/netstandard1.3/zh-hans/System.Collections.xml", + "ref/netstandard1.3/zh-hant/System.Collections.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.collections.4.3.0.nupkg.sha512", + "system.collections.nuspec" + ] + }, + "System.Collections.Concurrent/4.3.0": { + "sha512": "ztl69Xp0Y/UXCL+3v3tEU+lIy+bvjKNUmopn1wep/a291pVPK7dxBd6T7WnlQqRog+d1a/hSsgRsmFnIBKTPLQ==", + "type": "package", + "path": "system.collections.concurrent/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Collections.Concurrent.dll", + "lib/netstandard1.3/System.Collections.Concurrent.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Collections.Concurrent.dll", + "ref/netcore50/System.Collections.Concurrent.xml", + "ref/netcore50/de/System.Collections.Concurrent.xml", + "ref/netcore50/es/System.Collections.Concurrent.xml", + "ref/netcore50/fr/System.Collections.Concurrent.xml", + "ref/netcore50/it/System.Collections.Concurrent.xml", + "ref/netcore50/ja/System.Collections.Concurrent.xml", + "ref/netcore50/ko/System.Collections.Concurrent.xml", + "ref/netcore50/ru/System.Collections.Concurrent.xml", + "ref/netcore50/zh-hans/System.Collections.Concurrent.xml", + "ref/netcore50/zh-hant/System.Collections.Concurrent.xml", + "ref/netstandard1.1/System.Collections.Concurrent.dll", + "ref/netstandard1.1/System.Collections.Concurrent.xml", + "ref/netstandard1.1/de/System.Collections.Concurrent.xml", + "ref/netstandard1.1/es/System.Collections.Concurrent.xml", + "ref/netstandard1.1/fr/System.Collections.Concurrent.xml", + "ref/netstandard1.1/it/System.Collections.Concurrent.xml", + "ref/netstandard1.1/ja/System.Collections.Concurrent.xml", + "ref/netstandard1.1/ko/System.Collections.Concurrent.xml", + "ref/netstandard1.1/ru/System.Collections.Concurrent.xml", + "ref/netstandard1.1/zh-hans/System.Collections.Concurrent.xml", + "ref/netstandard1.1/zh-hant/System.Collections.Concurrent.xml", + "ref/netstandard1.3/System.Collections.Concurrent.dll", + "ref/netstandard1.3/System.Collections.Concurrent.xml", + "ref/netstandard1.3/de/System.Collections.Concurrent.xml", + "ref/netstandard1.3/es/System.Collections.Concurrent.xml", + "ref/netstandard1.3/fr/System.Collections.Concurrent.xml", + "ref/netstandard1.3/it/System.Collections.Concurrent.xml", + "ref/netstandard1.3/ja/System.Collections.Concurrent.xml", + "ref/netstandard1.3/ko/System.Collections.Concurrent.xml", + "ref/netstandard1.3/ru/System.Collections.Concurrent.xml", + "ref/netstandard1.3/zh-hans/System.Collections.Concurrent.xml", + "ref/netstandard1.3/zh-hant/System.Collections.Concurrent.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.collections.concurrent.4.3.0.nupkg.sha512", + "system.collections.concurrent.nuspec" + ] + }, + "System.Console/4.3.0": { + "sha512": "DHDrIxiqk1h03m6khKWV2X8p/uvN79rgSqpilL6uzpmSfxfU5ng8VcPtW4qsDsQDHiTv6IPV9TmD5M/vElPNLg==", + "type": "package", + "path": "system.console/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Console.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Console.dll", + "ref/netstandard1.3/System.Console.dll", + "ref/netstandard1.3/System.Console.xml", + "ref/netstandard1.3/de/System.Console.xml", + "ref/netstandard1.3/es/System.Console.xml", + "ref/netstandard1.3/fr/System.Console.xml", + "ref/netstandard1.3/it/System.Console.xml", + "ref/netstandard1.3/ja/System.Console.xml", + "ref/netstandard1.3/ko/System.Console.xml", + "ref/netstandard1.3/ru/System.Console.xml", + "ref/netstandard1.3/zh-hans/System.Console.xml", + "ref/netstandard1.3/zh-hant/System.Console.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.console.4.3.0.nupkg.sha512", + "system.console.nuspec" + ] + }, + "System.Diagnostics.Debug/4.3.0": { + "sha512": "ZUhUOdqmaG5Jk3Xdb8xi5kIyQYAA4PnTNlHx1mu9ZY3qv4ELIdKbnL/akbGaKi2RnNUWaZsAs31rvzFdewTj2g==", + "type": "package", + "path": "system.diagnostics.debug/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Diagnostics.Debug.dll", + "ref/netcore50/System.Diagnostics.Debug.xml", + "ref/netcore50/de/System.Diagnostics.Debug.xml", + "ref/netcore50/es/System.Diagnostics.Debug.xml", + "ref/netcore50/fr/System.Diagnostics.Debug.xml", + "ref/netcore50/it/System.Diagnostics.Debug.xml", + "ref/netcore50/ja/System.Diagnostics.Debug.xml", + "ref/netcore50/ko/System.Diagnostics.Debug.xml", + "ref/netcore50/ru/System.Diagnostics.Debug.xml", + "ref/netcore50/zh-hans/System.Diagnostics.Debug.xml", + "ref/netcore50/zh-hant/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/System.Diagnostics.Debug.dll", + "ref/netstandard1.0/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/de/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/es/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/fr/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/it/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/ja/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/ko/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/ru/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/zh-hans/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/zh-hant/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/System.Diagnostics.Debug.dll", + "ref/netstandard1.3/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/de/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/es/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/fr/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/it/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/ja/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/ko/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/ru/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/zh-hans/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/zh-hant/System.Diagnostics.Debug.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.diagnostics.debug.4.3.0.nupkg.sha512", + "system.diagnostics.debug.nuspec" + ] + }, + "System.Diagnostics.DiagnosticSource/10.0.2": { + "sha512": "lYWBy8fKkJHaRcOuw30d67PrtVjR5754sz5Wl76s8P+vJ9FSThh9b7LIcTSODx1LY7NB3Srvg+JMnzd67qNZOw==", + "type": "package", + "path": "system.diagnostics.diagnosticsource/10.0.2", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Diagnostics.DiagnosticSource.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.Diagnostics.DiagnosticSource.targets", + "lib/net10.0/System.Diagnostics.DiagnosticSource.dll", + "lib/net10.0/System.Diagnostics.DiagnosticSource.xml", + "lib/net462/System.Diagnostics.DiagnosticSource.dll", + "lib/net462/System.Diagnostics.DiagnosticSource.xml", + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll", + "lib/net8.0/System.Diagnostics.DiagnosticSource.xml", + "lib/net9.0/System.Diagnostics.DiagnosticSource.dll", + "lib/net9.0/System.Diagnostics.DiagnosticSource.xml", + "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.dll", + "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.xml", + "system.diagnostics.diagnosticsource.10.0.2.nupkg.sha512", + "system.diagnostics.diagnosticsource.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Diagnostics.EventLog/6.0.0": { + "sha512": "lcyUiXTsETK2ALsZrX+nWuHSIQeazhqPphLfaRxzdGaG93+0kELqpgEHtwWOlQe7+jSFnKwaCAgL4kjeZCQJnw==", + "type": "package", + "path": "system.diagnostics.eventlog/6.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/netcoreapp2.0/System.Diagnostics.EventLog.targets", + "buildTransitive/netcoreapp3.1/_._", + "lib/net461/System.Diagnostics.EventLog.dll", + "lib/net461/System.Diagnostics.EventLog.xml", + "lib/net6.0/System.Diagnostics.EventLog.dll", + "lib/net6.0/System.Diagnostics.EventLog.xml", + "lib/netcoreapp3.1/System.Diagnostics.EventLog.dll", + "lib/netcoreapp3.1/System.Diagnostics.EventLog.xml", + "lib/netstandard2.0/System.Diagnostics.EventLog.dll", + "lib/netstandard2.0/System.Diagnostics.EventLog.xml", + "runtimes/win/lib/net6.0/System.Diagnostics.EventLog.Messages.dll", + "runtimes/win/lib/net6.0/System.Diagnostics.EventLog.dll", + "runtimes/win/lib/net6.0/System.Diagnostics.EventLog.xml", + "runtimes/win/lib/netcoreapp3.1/System.Diagnostics.EventLog.Messages.dll", + "runtimes/win/lib/netcoreapp3.1/System.Diagnostics.EventLog.dll", + "runtimes/win/lib/netcoreapp3.1/System.Diagnostics.EventLog.xml", + "system.diagnostics.eventlog.6.0.0.nupkg.sha512", + "system.diagnostics.eventlog.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Diagnostics.Tools/4.3.0": { + "sha512": "UUvkJfSYJMM6x527dJg2VyWPSRqIVB0Z7dbjHst1zmwTXz5CcXSYJFWRpuigfbO1Lf7yfZiIaEUesfnl/g5EyA==", + "type": "package", + "path": "system.diagnostics.tools/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Diagnostics.Tools.dll", + "ref/netcore50/System.Diagnostics.Tools.xml", + "ref/netcore50/de/System.Diagnostics.Tools.xml", + "ref/netcore50/es/System.Diagnostics.Tools.xml", + "ref/netcore50/fr/System.Diagnostics.Tools.xml", + "ref/netcore50/it/System.Diagnostics.Tools.xml", + "ref/netcore50/ja/System.Diagnostics.Tools.xml", + "ref/netcore50/ko/System.Diagnostics.Tools.xml", + "ref/netcore50/ru/System.Diagnostics.Tools.xml", + "ref/netcore50/zh-hans/System.Diagnostics.Tools.xml", + "ref/netcore50/zh-hant/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/System.Diagnostics.Tools.dll", + "ref/netstandard1.0/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/de/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/es/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/fr/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/it/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/ja/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/ko/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/ru/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/zh-hans/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/zh-hant/System.Diagnostics.Tools.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.diagnostics.tools.4.3.0.nupkg.sha512", + "system.diagnostics.tools.nuspec" + ] + }, + "System.Diagnostics.Tracing/4.3.0": { + "sha512": "rswfv0f/Cqkh78rA5S8eN8Neocz234+emGCtTF3lxPY96F+mmmUen6tbn0glN6PMvlKQb9bPAY5e9u7fgPTkKw==", + "type": "package", + "path": "system.diagnostics.tracing/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Diagnostics.Tracing.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Diagnostics.Tracing.dll", + "ref/netcore50/System.Diagnostics.Tracing.dll", + "ref/netcore50/System.Diagnostics.Tracing.xml", + "ref/netcore50/de/System.Diagnostics.Tracing.xml", + "ref/netcore50/es/System.Diagnostics.Tracing.xml", + "ref/netcore50/fr/System.Diagnostics.Tracing.xml", + "ref/netcore50/it/System.Diagnostics.Tracing.xml", + "ref/netcore50/ja/System.Diagnostics.Tracing.xml", + "ref/netcore50/ko/System.Diagnostics.Tracing.xml", + "ref/netcore50/ru/System.Diagnostics.Tracing.xml", + "ref/netcore50/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netcore50/zh-hant/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/System.Diagnostics.Tracing.dll", + "ref/netstandard1.1/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/de/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/es/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/fr/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/it/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/ja/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/ko/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/ru/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/zh-hant/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/System.Diagnostics.Tracing.dll", + "ref/netstandard1.2/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/de/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/es/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/fr/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/it/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/ja/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/ko/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/ru/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/zh-hant/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/System.Diagnostics.Tracing.dll", + "ref/netstandard1.3/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/de/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/es/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/fr/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/it/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/ja/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/ko/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/ru/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/zh-hant/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/System.Diagnostics.Tracing.dll", + "ref/netstandard1.5/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/de/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/es/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/fr/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/it/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/ja/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/ko/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/ru/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/zh-hant/System.Diagnostics.Tracing.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.diagnostics.tracing.4.3.0.nupkg.sha512", + "system.diagnostics.tracing.nuspec" + ] + }, + "System.Globalization/4.3.0": { + "sha512": "kYdVd2f2PAdFGblzFswE4hkNANJBKRmsfa2X5LG2AcWE1c7/4t0pYae1L8vfZ5xvE2nK/R9JprtToA61OSHWIg==", + "type": "package", + "path": "system.globalization/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Globalization.dll", + "ref/netcore50/System.Globalization.xml", + "ref/netcore50/de/System.Globalization.xml", + "ref/netcore50/es/System.Globalization.xml", + "ref/netcore50/fr/System.Globalization.xml", + "ref/netcore50/it/System.Globalization.xml", + "ref/netcore50/ja/System.Globalization.xml", + "ref/netcore50/ko/System.Globalization.xml", + "ref/netcore50/ru/System.Globalization.xml", + "ref/netcore50/zh-hans/System.Globalization.xml", + "ref/netcore50/zh-hant/System.Globalization.xml", + "ref/netstandard1.0/System.Globalization.dll", + "ref/netstandard1.0/System.Globalization.xml", + "ref/netstandard1.0/de/System.Globalization.xml", + "ref/netstandard1.0/es/System.Globalization.xml", + "ref/netstandard1.0/fr/System.Globalization.xml", + "ref/netstandard1.0/it/System.Globalization.xml", + "ref/netstandard1.0/ja/System.Globalization.xml", + "ref/netstandard1.0/ko/System.Globalization.xml", + "ref/netstandard1.0/ru/System.Globalization.xml", + "ref/netstandard1.0/zh-hans/System.Globalization.xml", + "ref/netstandard1.0/zh-hant/System.Globalization.xml", + "ref/netstandard1.3/System.Globalization.dll", + "ref/netstandard1.3/System.Globalization.xml", + "ref/netstandard1.3/de/System.Globalization.xml", + "ref/netstandard1.3/es/System.Globalization.xml", + "ref/netstandard1.3/fr/System.Globalization.xml", + "ref/netstandard1.3/it/System.Globalization.xml", + "ref/netstandard1.3/ja/System.Globalization.xml", + "ref/netstandard1.3/ko/System.Globalization.xml", + "ref/netstandard1.3/ru/System.Globalization.xml", + "ref/netstandard1.3/zh-hans/System.Globalization.xml", + "ref/netstandard1.3/zh-hant/System.Globalization.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.globalization.4.3.0.nupkg.sha512", + "system.globalization.nuspec" + ] + }, + "System.Globalization.Calendars/4.3.0": { + "sha512": "GUlBtdOWT4LTV3I+9/PJW+56AnnChTaOqqTLFtdmype/L500M2LIyXgmtd9X2P2VOkmJd5c67H5SaC2QcL1bFA==", + "type": "package", + "path": "system.globalization.calendars/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Globalization.Calendars.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Globalization.Calendars.dll", + "ref/netstandard1.3/System.Globalization.Calendars.dll", + "ref/netstandard1.3/System.Globalization.Calendars.xml", + "ref/netstandard1.3/de/System.Globalization.Calendars.xml", + "ref/netstandard1.3/es/System.Globalization.Calendars.xml", + "ref/netstandard1.3/fr/System.Globalization.Calendars.xml", + "ref/netstandard1.3/it/System.Globalization.Calendars.xml", + "ref/netstandard1.3/ja/System.Globalization.Calendars.xml", + "ref/netstandard1.3/ko/System.Globalization.Calendars.xml", + "ref/netstandard1.3/ru/System.Globalization.Calendars.xml", + "ref/netstandard1.3/zh-hans/System.Globalization.Calendars.xml", + "ref/netstandard1.3/zh-hant/System.Globalization.Calendars.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.globalization.calendars.4.3.0.nupkg.sha512", + "system.globalization.calendars.nuspec" + ] + }, + "System.Globalization.Extensions/4.3.0": { + "sha512": "FhKmdR6MPG+pxow6wGtNAWdZh7noIOpdD5TwQ3CprzgIE1bBBoim0vbR1+AWsWjQmU7zXHgQo4TWSP6lCeiWcQ==", + "type": "package", + "path": "system.globalization.extensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Globalization.Extensions.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Globalization.Extensions.dll", + "ref/netstandard1.3/System.Globalization.Extensions.dll", + "ref/netstandard1.3/System.Globalization.Extensions.xml", + "ref/netstandard1.3/de/System.Globalization.Extensions.xml", + "ref/netstandard1.3/es/System.Globalization.Extensions.xml", + "ref/netstandard1.3/fr/System.Globalization.Extensions.xml", + "ref/netstandard1.3/it/System.Globalization.Extensions.xml", + "ref/netstandard1.3/ja/System.Globalization.Extensions.xml", + "ref/netstandard1.3/ko/System.Globalization.Extensions.xml", + "ref/netstandard1.3/ru/System.Globalization.Extensions.xml", + "ref/netstandard1.3/zh-hans/System.Globalization.Extensions.xml", + "ref/netstandard1.3/zh-hant/System.Globalization.Extensions.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.Globalization.Extensions.dll", + "runtimes/win/lib/net46/System.Globalization.Extensions.dll", + "runtimes/win/lib/netstandard1.3/System.Globalization.Extensions.dll", + "system.globalization.extensions.4.3.0.nupkg.sha512", + "system.globalization.extensions.nuspec" + ] + }, + "System.IdentityModel.Tokens.Jwt/8.14.0": { + "sha512": "EYGgN/S+HK7S6F3GaaPLFAfK0UzMrkXFyWCvXpQWFYmZln3dqtbyIO7VuTM/iIIPMzkelg8ZLlBPvMhxj6nOAA==", + "type": "package", + "path": "system.identitymodel.tokens.jwt/8.14.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "README.md", + "lib/net462/System.IdentityModel.Tokens.Jwt.dll", + "lib/net462/System.IdentityModel.Tokens.Jwt.xml", + "lib/net472/System.IdentityModel.Tokens.Jwt.dll", + "lib/net472/System.IdentityModel.Tokens.Jwt.xml", + "lib/net6.0/System.IdentityModel.Tokens.Jwt.dll", + "lib/net6.0/System.IdentityModel.Tokens.Jwt.xml", + "lib/net8.0/System.IdentityModel.Tokens.Jwt.dll", + "lib/net8.0/System.IdentityModel.Tokens.Jwt.xml", + "lib/net9.0/System.IdentityModel.Tokens.Jwt.dll", + "lib/net9.0/System.IdentityModel.Tokens.Jwt.xml", + "lib/netstandard2.0/System.IdentityModel.Tokens.Jwt.dll", + "lib/netstandard2.0/System.IdentityModel.Tokens.Jwt.xml", + "system.identitymodel.tokens.jwt.8.14.0.nupkg.sha512", + "system.identitymodel.tokens.jwt.nuspec" + ] + }, + "System.IO/4.3.0": { + "sha512": "3qjaHvxQPDpSOYICjUoTsmoq5u6QJAFRUITgeT/4gqkF1bajbSmb1kwSxEA8AHlofqgcKJcM8udgieRNhaJ5Cg==", + "type": "package", + "path": "system.io/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.IO.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.IO.dll", + "ref/netcore50/System.IO.dll", + "ref/netcore50/System.IO.xml", + "ref/netcore50/de/System.IO.xml", + "ref/netcore50/es/System.IO.xml", + "ref/netcore50/fr/System.IO.xml", + "ref/netcore50/it/System.IO.xml", + "ref/netcore50/ja/System.IO.xml", + "ref/netcore50/ko/System.IO.xml", + "ref/netcore50/ru/System.IO.xml", + "ref/netcore50/zh-hans/System.IO.xml", + "ref/netcore50/zh-hant/System.IO.xml", + "ref/netstandard1.0/System.IO.dll", + "ref/netstandard1.0/System.IO.xml", + "ref/netstandard1.0/de/System.IO.xml", + "ref/netstandard1.0/es/System.IO.xml", + "ref/netstandard1.0/fr/System.IO.xml", + "ref/netstandard1.0/it/System.IO.xml", + "ref/netstandard1.0/ja/System.IO.xml", + "ref/netstandard1.0/ko/System.IO.xml", + "ref/netstandard1.0/ru/System.IO.xml", + "ref/netstandard1.0/zh-hans/System.IO.xml", + "ref/netstandard1.0/zh-hant/System.IO.xml", + "ref/netstandard1.3/System.IO.dll", + "ref/netstandard1.3/System.IO.xml", + "ref/netstandard1.3/de/System.IO.xml", + "ref/netstandard1.3/es/System.IO.xml", + "ref/netstandard1.3/fr/System.IO.xml", + "ref/netstandard1.3/it/System.IO.xml", + "ref/netstandard1.3/ja/System.IO.xml", + "ref/netstandard1.3/ko/System.IO.xml", + "ref/netstandard1.3/ru/System.IO.xml", + "ref/netstandard1.3/zh-hans/System.IO.xml", + "ref/netstandard1.3/zh-hant/System.IO.xml", + "ref/netstandard1.5/System.IO.dll", + "ref/netstandard1.5/System.IO.xml", + "ref/netstandard1.5/de/System.IO.xml", + "ref/netstandard1.5/es/System.IO.xml", + "ref/netstandard1.5/fr/System.IO.xml", + "ref/netstandard1.5/it/System.IO.xml", + "ref/netstandard1.5/ja/System.IO.xml", + "ref/netstandard1.5/ko/System.IO.xml", + "ref/netstandard1.5/ru/System.IO.xml", + "ref/netstandard1.5/zh-hans/System.IO.xml", + "ref/netstandard1.5/zh-hant/System.IO.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.io.4.3.0.nupkg.sha512", + "system.io.nuspec" + ] + }, + "System.IO.Compression/4.3.0": { + "sha512": "YHndyoiV90iu4iKG115ibkhrG+S3jBm8Ap9OwoUAzO5oPDAWcr0SFwQFm0HjM8WkEZWo0zvLTyLmbvTkW1bXgg==", + "type": "package", + "path": "system.io.compression/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net46/System.IO.Compression.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net46/System.IO.Compression.dll", + "ref/netcore50/System.IO.Compression.dll", + "ref/netcore50/System.IO.Compression.xml", + "ref/netcore50/de/System.IO.Compression.xml", + "ref/netcore50/es/System.IO.Compression.xml", + "ref/netcore50/fr/System.IO.Compression.xml", + "ref/netcore50/it/System.IO.Compression.xml", + "ref/netcore50/ja/System.IO.Compression.xml", + "ref/netcore50/ko/System.IO.Compression.xml", + "ref/netcore50/ru/System.IO.Compression.xml", + "ref/netcore50/zh-hans/System.IO.Compression.xml", + "ref/netcore50/zh-hant/System.IO.Compression.xml", + "ref/netstandard1.1/System.IO.Compression.dll", + "ref/netstandard1.1/System.IO.Compression.xml", + "ref/netstandard1.1/de/System.IO.Compression.xml", + "ref/netstandard1.1/es/System.IO.Compression.xml", + "ref/netstandard1.1/fr/System.IO.Compression.xml", + "ref/netstandard1.1/it/System.IO.Compression.xml", + "ref/netstandard1.1/ja/System.IO.Compression.xml", + "ref/netstandard1.1/ko/System.IO.Compression.xml", + "ref/netstandard1.1/ru/System.IO.Compression.xml", + "ref/netstandard1.1/zh-hans/System.IO.Compression.xml", + "ref/netstandard1.1/zh-hant/System.IO.Compression.xml", + "ref/netstandard1.3/System.IO.Compression.dll", + "ref/netstandard1.3/System.IO.Compression.xml", + "ref/netstandard1.3/de/System.IO.Compression.xml", + "ref/netstandard1.3/es/System.IO.Compression.xml", + "ref/netstandard1.3/fr/System.IO.Compression.xml", + "ref/netstandard1.3/it/System.IO.Compression.xml", + "ref/netstandard1.3/ja/System.IO.Compression.xml", + "ref/netstandard1.3/ko/System.IO.Compression.xml", + "ref/netstandard1.3/ru/System.IO.Compression.xml", + "ref/netstandard1.3/zh-hans/System.IO.Compression.xml", + "ref/netstandard1.3/zh-hant/System.IO.Compression.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.IO.Compression.dll", + "runtimes/win/lib/net46/System.IO.Compression.dll", + "runtimes/win/lib/netstandard1.3/System.IO.Compression.dll", + "system.io.compression.4.3.0.nupkg.sha512", + "system.io.compression.nuspec" + ] + }, + "System.IO.Compression.ZipFile/4.3.0": { + "sha512": "G4HwjEsgIwy3JFBduZ9quBkAu+eUwjIdJleuNSgmUojbH6O3mlvEIme+GHx/cLlTAPcrnnL7GqvB9pTlWRfhOg==", + "type": "package", + "path": "system.io.compression.zipfile/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.Compression.ZipFile.dll", + "lib/netstandard1.3/System.IO.Compression.ZipFile.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.Compression.ZipFile.dll", + "ref/netstandard1.3/System.IO.Compression.ZipFile.dll", + "ref/netstandard1.3/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/de/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/es/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/fr/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/it/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/ja/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/ko/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/ru/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/zh-hans/System.IO.Compression.ZipFile.xml", + "ref/netstandard1.3/zh-hant/System.IO.Compression.ZipFile.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.io.compression.zipfile.4.3.0.nupkg.sha512", + "system.io.compression.zipfile.nuspec" + ] + }, + "System.IO.FileSystem/4.3.0": { + "sha512": "3wEMARTnuio+ulnvi+hkRNROYwa1kylvYahhcLk4HSoVdl+xxTFVeVlYOfLwrDPImGls0mDqbMhrza8qnWPTdA==", + "type": "package", + "path": "system.io.filesystem/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.dll", + "ref/netstandard1.3/System.IO.FileSystem.dll", + "ref/netstandard1.3/System.IO.FileSystem.xml", + "ref/netstandard1.3/de/System.IO.FileSystem.xml", + "ref/netstandard1.3/es/System.IO.FileSystem.xml", + "ref/netstandard1.3/fr/System.IO.FileSystem.xml", + "ref/netstandard1.3/it/System.IO.FileSystem.xml", + "ref/netstandard1.3/ja/System.IO.FileSystem.xml", + "ref/netstandard1.3/ko/System.IO.FileSystem.xml", + "ref/netstandard1.3/ru/System.IO.FileSystem.xml", + "ref/netstandard1.3/zh-hans/System.IO.FileSystem.xml", + "ref/netstandard1.3/zh-hant/System.IO.FileSystem.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.io.filesystem.4.3.0.nupkg.sha512", + "system.io.filesystem.nuspec" + ] + }, + "System.IO.FileSystem.Primitives/4.3.0": { + "sha512": "6QOb2XFLch7bEc4lIcJH49nJN2HV+OC3fHDgsLVsBVBk3Y4hFAnOBGzJ2lUu7CyDDFo9IBWkSsnbkT6IBwwiMw==", + "type": "package", + "path": "system.io.filesystem.primitives/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.Primitives.dll", + "lib/netstandard1.3/System.IO.FileSystem.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.Primitives.dll", + "ref/netstandard1.3/System.IO.FileSystem.Primitives.dll", + "ref/netstandard1.3/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/de/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/es/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/fr/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/it/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/ja/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/ko/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/ru/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/zh-hans/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/zh-hant/System.IO.FileSystem.Primitives.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.io.filesystem.primitives.4.3.0.nupkg.sha512", + "system.io.filesystem.primitives.nuspec" + ] + }, + "System.IO.Pipelines/8.0.0": { + "sha512": "FHNOatmUq0sqJOkTx+UF/9YK1f180cnW5FVqnQMvYUN0elp6wFzbtPSiqbo1/ru8ICp43JM1i7kKkk6GsNGHlA==", + "type": "package", + "path": "system.io.pipelines/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.IO.Pipelines.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.IO.Pipelines.targets", + "lib/net462/System.IO.Pipelines.dll", + "lib/net462/System.IO.Pipelines.xml", + "lib/net6.0/System.IO.Pipelines.dll", + "lib/net6.0/System.IO.Pipelines.xml", + "lib/net7.0/System.IO.Pipelines.dll", + "lib/net7.0/System.IO.Pipelines.xml", + "lib/net8.0/System.IO.Pipelines.dll", + "lib/net8.0/System.IO.Pipelines.xml", + "lib/netstandard2.0/System.IO.Pipelines.dll", + "lib/netstandard2.0/System.IO.Pipelines.xml", + "system.io.pipelines.8.0.0.nupkg.sha512", + "system.io.pipelines.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Linq/4.3.0": { + "sha512": "5DbqIUpsDp0dFftytzuMmc0oeMdQwjcP/EWxsksIz/w1TcFRkZ3yKKz0PqiYFMmEwPSWw+qNVqD7PJ889JzHbw==", + "type": "package", + "path": "system.linq/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net463/System.Linq.dll", + "lib/netcore50/System.Linq.dll", + "lib/netstandard1.6/System.Linq.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net463/System.Linq.dll", + "ref/netcore50/System.Linq.dll", + "ref/netcore50/System.Linq.xml", + "ref/netcore50/de/System.Linq.xml", + "ref/netcore50/es/System.Linq.xml", + "ref/netcore50/fr/System.Linq.xml", + "ref/netcore50/it/System.Linq.xml", + "ref/netcore50/ja/System.Linq.xml", + "ref/netcore50/ko/System.Linq.xml", + "ref/netcore50/ru/System.Linq.xml", + "ref/netcore50/zh-hans/System.Linq.xml", + "ref/netcore50/zh-hant/System.Linq.xml", + "ref/netstandard1.0/System.Linq.dll", + "ref/netstandard1.0/System.Linq.xml", + "ref/netstandard1.0/de/System.Linq.xml", + "ref/netstandard1.0/es/System.Linq.xml", + "ref/netstandard1.0/fr/System.Linq.xml", + "ref/netstandard1.0/it/System.Linq.xml", + "ref/netstandard1.0/ja/System.Linq.xml", + "ref/netstandard1.0/ko/System.Linq.xml", + "ref/netstandard1.0/ru/System.Linq.xml", + "ref/netstandard1.0/zh-hans/System.Linq.xml", + "ref/netstandard1.0/zh-hant/System.Linq.xml", + "ref/netstandard1.6/System.Linq.dll", + "ref/netstandard1.6/System.Linq.xml", + "ref/netstandard1.6/de/System.Linq.xml", + "ref/netstandard1.6/es/System.Linq.xml", + "ref/netstandard1.6/fr/System.Linq.xml", + "ref/netstandard1.6/it/System.Linq.xml", + "ref/netstandard1.6/ja/System.Linq.xml", + "ref/netstandard1.6/ko/System.Linq.xml", + "ref/netstandard1.6/ru/System.Linq.xml", + "ref/netstandard1.6/zh-hans/System.Linq.xml", + "ref/netstandard1.6/zh-hant/System.Linq.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.linq.4.3.0.nupkg.sha512", + "system.linq.nuspec" + ] + }, + "System.Linq.Expressions/4.3.0": { + "sha512": "PGKkrd2khG4CnlyJwxwwaWWiSiWFNBGlgXvJpeO0xCXrZ89ODrQ6tjEWS/kOqZ8GwEOUATtKtzp1eRgmYNfclg==", + "type": "package", + "path": "system.linq.expressions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net463/System.Linq.Expressions.dll", + "lib/netcore50/System.Linq.Expressions.dll", + "lib/netstandard1.6/System.Linq.Expressions.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net463/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/netstandard1.0/System.Linq.Expressions.dll", + "ref/netstandard1.0/System.Linq.Expressions.xml", + "ref/netstandard1.0/de/System.Linq.Expressions.xml", + "ref/netstandard1.0/es/System.Linq.Expressions.xml", + "ref/netstandard1.0/fr/System.Linq.Expressions.xml", + "ref/netstandard1.0/it/System.Linq.Expressions.xml", + "ref/netstandard1.0/ja/System.Linq.Expressions.xml", + "ref/netstandard1.0/ko/System.Linq.Expressions.xml", + "ref/netstandard1.0/ru/System.Linq.Expressions.xml", + "ref/netstandard1.0/zh-hans/System.Linq.Expressions.xml", + "ref/netstandard1.0/zh-hant/System.Linq.Expressions.xml", + "ref/netstandard1.3/System.Linq.Expressions.dll", + "ref/netstandard1.3/System.Linq.Expressions.xml", + "ref/netstandard1.3/de/System.Linq.Expressions.xml", + "ref/netstandard1.3/es/System.Linq.Expressions.xml", + "ref/netstandard1.3/fr/System.Linq.Expressions.xml", + "ref/netstandard1.3/it/System.Linq.Expressions.xml", + "ref/netstandard1.3/ja/System.Linq.Expressions.xml", + "ref/netstandard1.3/ko/System.Linq.Expressions.xml", + "ref/netstandard1.3/ru/System.Linq.Expressions.xml", + "ref/netstandard1.3/zh-hans/System.Linq.Expressions.xml", + "ref/netstandard1.3/zh-hant/System.Linq.Expressions.xml", + "ref/netstandard1.6/System.Linq.Expressions.dll", + "ref/netstandard1.6/System.Linq.Expressions.xml", + "ref/netstandard1.6/de/System.Linq.Expressions.xml", + "ref/netstandard1.6/es/System.Linq.Expressions.xml", + "ref/netstandard1.6/fr/System.Linq.Expressions.xml", + "ref/netstandard1.6/it/System.Linq.Expressions.xml", + "ref/netstandard1.6/ja/System.Linq.Expressions.xml", + "ref/netstandard1.6/ko/System.Linq.Expressions.xml", + "ref/netstandard1.6/ru/System.Linq.Expressions.xml", + "ref/netstandard1.6/zh-hans/System.Linq.Expressions.xml", + "ref/netstandard1.6/zh-hant/System.Linq.Expressions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Linq.Expressions.dll", + "system.linq.expressions.4.3.0.nupkg.sha512", + "system.linq.expressions.nuspec" + ] + }, + "System.Net.Http/4.3.0": { + "sha512": "sYg+FtILtRQuYWSIAuNOELwVuVsxVyJGWQyOnlAzhV4xvhyFnON1bAzYYC+jjRW8JREM45R0R5Dgi8MTC5sEwA==", + "type": "package", + "path": "system.net.http/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/Xamarinmac20/_._", + "lib/monoandroid10/_._", + "lib/monotouch10/_._", + "lib/net45/_._", + "lib/net46/System.Net.Http.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/Xamarinmac20/_._", + "ref/monoandroid10/_._", + "ref/monotouch10/_._", + "ref/net45/_._", + "ref/net46/System.Net.Http.dll", + "ref/net46/System.Net.Http.xml", + "ref/net46/de/System.Net.Http.xml", + "ref/net46/es/System.Net.Http.xml", + "ref/net46/fr/System.Net.Http.xml", + "ref/net46/it/System.Net.Http.xml", + "ref/net46/ja/System.Net.Http.xml", + "ref/net46/ko/System.Net.Http.xml", + "ref/net46/ru/System.Net.Http.xml", + "ref/net46/zh-hans/System.Net.Http.xml", + "ref/net46/zh-hant/System.Net.Http.xml", + "ref/netcore50/System.Net.Http.dll", + "ref/netcore50/System.Net.Http.xml", + "ref/netcore50/de/System.Net.Http.xml", + "ref/netcore50/es/System.Net.Http.xml", + "ref/netcore50/fr/System.Net.Http.xml", + "ref/netcore50/it/System.Net.Http.xml", + "ref/netcore50/ja/System.Net.Http.xml", + "ref/netcore50/ko/System.Net.Http.xml", + "ref/netcore50/ru/System.Net.Http.xml", + "ref/netcore50/zh-hans/System.Net.Http.xml", + "ref/netcore50/zh-hant/System.Net.Http.xml", + "ref/netstandard1.1/System.Net.Http.dll", + "ref/netstandard1.1/System.Net.Http.xml", + "ref/netstandard1.1/de/System.Net.Http.xml", + "ref/netstandard1.1/es/System.Net.Http.xml", + "ref/netstandard1.1/fr/System.Net.Http.xml", + "ref/netstandard1.1/it/System.Net.Http.xml", + "ref/netstandard1.1/ja/System.Net.Http.xml", + "ref/netstandard1.1/ko/System.Net.Http.xml", + "ref/netstandard1.1/ru/System.Net.Http.xml", + "ref/netstandard1.1/zh-hans/System.Net.Http.xml", + "ref/netstandard1.1/zh-hant/System.Net.Http.xml", + "ref/netstandard1.3/System.Net.Http.dll", + "ref/netstandard1.3/System.Net.Http.xml", + "ref/netstandard1.3/de/System.Net.Http.xml", + "ref/netstandard1.3/es/System.Net.Http.xml", + "ref/netstandard1.3/fr/System.Net.Http.xml", + "ref/netstandard1.3/it/System.Net.Http.xml", + "ref/netstandard1.3/ja/System.Net.Http.xml", + "ref/netstandard1.3/ko/System.Net.Http.xml", + "ref/netstandard1.3/ru/System.Net.Http.xml", + "ref/netstandard1.3/zh-hans/System.Net.Http.xml", + "ref/netstandard1.3/zh-hant/System.Net.Http.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.6/System.Net.Http.dll", + "runtimes/win/lib/net46/System.Net.Http.dll", + "runtimes/win/lib/netcore50/System.Net.Http.dll", + "runtimes/win/lib/netstandard1.3/System.Net.Http.dll", + "system.net.http.4.3.0.nupkg.sha512", + "system.net.http.nuspec" + ] + }, + "System.Net.Primitives/4.3.0": { + "sha512": "qOu+hDwFwoZPbzPvwut2qATe3ygjeQBDQj91xlsaqGFQUI5i4ZnZb8yyQuLGpDGivEPIt8EJkd1BVzVoP31FXA==", + "type": "package", + "path": "system.net.primitives/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Net.Primitives.dll", + "ref/netcore50/System.Net.Primitives.xml", + "ref/netcore50/de/System.Net.Primitives.xml", + "ref/netcore50/es/System.Net.Primitives.xml", + "ref/netcore50/fr/System.Net.Primitives.xml", + "ref/netcore50/it/System.Net.Primitives.xml", + "ref/netcore50/ja/System.Net.Primitives.xml", + "ref/netcore50/ko/System.Net.Primitives.xml", + "ref/netcore50/ru/System.Net.Primitives.xml", + "ref/netcore50/zh-hans/System.Net.Primitives.xml", + "ref/netcore50/zh-hant/System.Net.Primitives.xml", + "ref/netstandard1.0/System.Net.Primitives.dll", + "ref/netstandard1.0/System.Net.Primitives.xml", + "ref/netstandard1.0/de/System.Net.Primitives.xml", + "ref/netstandard1.0/es/System.Net.Primitives.xml", + "ref/netstandard1.0/fr/System.Net.Primitives.xml", + "ref/netstandard1.0/it/System.Net.Primitives.xml", + "ref/netstandard1.0/ja/System.Net.Primitives.xml", + "ref/netstandard1.0/ko/System.Net.Primitives.xml", + "ref/netstandard1.0/ru/System.Net.Primitives.xml", + "ref/netstandard1.0/zh-hans/System.Net.Primitives.xml", + "ref/netstandard1.0/zh-hant/System.Net.Primitives.xml", + "ref/netstandard1.1/System.Net.Primitives.dll", + "ref/netstandard1.1/System.Net.Primitives.xml", + "ref/netstandard1.1/de/System.Net.Primitives.xml", + "ref/netstandard1.1/es/System.Net.Primitives.xml", + "ref/netstandard1.1/fr/System.Net.Primitives.xml", + "ref/netstandard1.1/it/System.Net.Primitives.xml", + "ref/netstandard1.1/ja/System.Net.Primitives.xml", + "ref/netstandard1.1/ko/System.Net.Primitives.xml", + "ref/netstandard1.1/ru/System.Net.Primitives.xml", + "ref/netstandard1.1/zh-hans/System.Net.Primitives.xml", + "ref/netstandard1.1/zh-hant/System.Net.Primitives.xml", + "ref/netstandard1.3/System.Net.Primitives.dll", + "ref/netstandard1.3/System.Net.Primitives.xml", + "ref/netstandard1.3/de/System.Net.Primitives.xml", + "ref/netstandard1.3/es/System.Net.Primitives.xml", + "ref/netstandard1.3/fr/System.Net.Primitives.xml", + "ref/netstandard1.3/it/System.Net.Primitives.xml", + "ref/netstandard1.3/ja/System.Net.Primitives.xml", + "ref/netstandard1.3/ko/System.Net.Primitives.xml", + "ref/netstandard1.3/ru/System.Net.Primitives.xml", + "ref/netstandard1.3/zh-hans/System.Net.Primitives.xml", + "ref/netstandard1.3/zh-hant/System.Net.Primitives.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.net.primitives.4.3.0.nupkg.sha512", + "system.net.primitives.nuspec" + ] + }, + "System.Net.Sockets/4.3.0": { + "sha512": "m6icV6TqQOAdgt5N/9I5KNpjom/5NFtkmGseEH+AK/hny8XrytLH3+b5M8zL/Ycg3fhIocFpUMyl/wpFnVRvdw==", + "type": "package", + "path": "system.net.sockets/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Net.Sockets.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Net.Sockets.dll", + "ref/netstandard1.3/System.Net.Sockets.dll", + "ref/netstandard1.3/System.Net.Sockets.xml", + "ref/netstandard1.3/de/System.Net.Sockets.xml", + "ref/netstandard1.3/es/System.Net.Sockets.xml", + "ref/netstandard1.3/fr/System.Net.Sockets.xml", + "ref/netstandard1.3/it/System.Net.Sockets.xml", + "ref/netstandard1.3/ja/System.Net.Sockets.xml", + "ref/netstandard1.3/ko/System.Net.Sockets.xml", + "ref/netstandard1.3/ru/System.Net.Sockets.xml", + "ref/netstandard1.3/zh-hans/System.Net.Sockets.xml", + "ref/netstandard1.3/zh-hant/System.Net.Sockets.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.net.sockets.4.3.0.nupkg.sha512", + "system.net.sockets.nuspec" + ] + }, + "System.Net.WebSockets.WebSocketProtocol/5.1.0": { + "sha512": "cVTT/Zw4JuUeX8H0tdWii0OMHsA5MY2PaFYOq/Hstw0jk479jZ+f8baCicWFNzJlCPWAe0uoNCELoB5eNmaMqA==", + "type": "package", + "path": "system.net.websockets.websocketprotocol/5.1.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "buildTransitive/net461/System.Net.WebSockets.WebSocketProtocol.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.Net.WebSockets.WebSocketProtocol.targets", + "lib/net462/System.Net.WebSockets.WebSocketProtocol.dll", + "lib/net462/System.Net.WebSockets.WebSocketProtocol.xml", + "lib/net6.0/System.Net.WebSockets.WebSocketProtocol.dll", + "lib/net6.0/System.Net.WebSockets.WebSocketProtocol.xml", + "lib/netstandard2.0/System.Net.WebSockets.WebSocketProtocol.dll", + "lib/netstandard2.0/System.Net.WebSockets.WebSocketProtocol.xml", + "system.net.websockets.websocketprotocol.5.1.0.nupkg.sha512", + "system.net.websockets.websocketprotocol.nuspec" + ] + }, + "System.ObjectModel/4.3.0": { + "sha512": "bdX+80eKv9bN6K4N+d77OankKHGn6CH711a6fcOpMQu2Fckp/Ft4L/kW9WznHpyR0NRAvJutzOMHNNlBGvxQzQ==", + "type": "package", + "path": "system.objectmodel/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.ObjectModel.dll", + "lib/netstandard1.3/System.ObjectModel.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/netstandard1.0/System.ObjectModel.dll", + "ref/netstandard1.0/System.ObjectModel.xml", + "ref/netstandard1.0/de/System.ObjectModel.xml", + "ref/netstandard1.0/es/System.ObjectModel.xml", + "ref/netstandard1.0/fr/System.ObjectModel.xml", + "ref/netstandard1.0/it/System.ObjectModel.xml", + "ref/netstandard1.0/ja/System.ObjectModel.xml", + "ref/netstandard1.0/ko/System.ObjectModel.xml", + "ref/netstandard1.0/ru/System.ObjectModel.xml", + "ref/netstandard1.0/zh-hans/System.ObjectModel.xml", + "ref/netstandard1.0/zh-hant/System.ObjectModel.xml", + "ref/netstandard1.3/System.ObjectModel.dll", + "ref/netstandard1.3/System.ObjectModel.xml", + "ref/netstandard1.3/de/System.ObjectModel.xml", + "ref/netstandard1.3/es/System.ObjectModel.xml", + "ref/netstandard1.3/fr/System.ObjectModel.xml", + "ref/netstandard1.3/it/System.ObjectModel.xml", + "ref/netstandard1.3/ja/System.ObjectModel.xml", + "ref/netstandard1.3/ko/System.ObjectModel.xml", + "ref/netstandard1.3/ru/System.ObjectModel.xml", + "ref/netstandard1.3/zh-hans/System.ObjectModel.xml", + "ref/netstandard1.3/zh-hant/System.ObjectModel.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.objectmodel.4.3.0.nupkg.sha512", + "system.objectmodel.nuspec" + ] + }, + "System.Reflection/4.3.0": { + "sha512": "KMiAFoW7MfJGa9nDFNcfu+FpEdiHpWgTcS2HdMpDvt9saK3y/G4GwprPyzqjFH9NTaGPQeWNHU+iDlDILj96aQ==", + "type": "package", + "path": "system.reflection/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Reflection.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Reflection.dll", + "ref/netcore50/System.Reflection.dll", + "ref/netcore50/System.Reflection.xml", + "ref/netcore50/de/System.Reflection.xml", + "ref/netcore50/es/System.Reflection.xml", + "ref/netcore50/fr/System.Reflection.xml", + "ref/netcore50/it/System.Reflection.xml", + "ref/netcore50/ja/System.Reflection.xml", + "ref/netcore50/ko/System.Reflection.xml", + "ref/netcore50/ru/System.Reflection.xml", + "ref/netcore50/zh-hans/System.Reflection.xml", + "ref/netcore50/zh-hant/System.Reflection.xml", + "ref/netstandard1.0/System.Reflection.dll", + "ref/netstandard1.0/System.Reflection.xml", + "ref/netstandard1.0/de/System.Reflection.xml", + "ref/netstandard1.0/es/System.Reflection.xml", + "ref/netstandard1.0/fr/System.Reflection.xml", + "ref/netstandard1.0/it/System.Reflection.xml", + "ref/netstandard1.0/ja/System.Reflection.xml", + "ref/netstandard1.0/ko/System.Reflection.xml", + "ref/netstandard1.0/ru/System.Reflection.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.xml", + "ref/netstandard1.3/System.Reflection.dll", + "ref/netstandard1.3/System.Reflection.xml", + "ref/netstandard1.3/de/System.Reflection.xml", + "ref/netstandard1.3/es/System.Reflection.xml", + "ref/netstandard1.3/fr/System.Reflection.xml", + "ref/netstandard1.3/it/System.Reflection.xml", + "ref/netstandard1.3/ja/System.Reflection.xml", + "ref/netstandard1.3/ko/System.Reflection.xml", + "ref/netstandard1.3/ru/System.Reflection.xml", + "ref/netstandard1.3/zh-hans/System.Reflection.xml", + "ref/netstandard1.3/zh-hant/System.Reflection.xml", + "ref/netstandard1.5/System.Reflection.dll", + "ref/netstandard1.5/System.Reflection.xml", + "ref/netstandard1.5/de/System.Reflection.xml", + "ref/netstandard1.5/es/System.Reflection.xml", + "ref/netstandard1.5/fr/System.Reflection.xml", + "ref/netstandard1.5/it/System.Reflection.xml", + "ref/netstandard1.5/ja/System.Reflection.xml", + "ref/netstandard1.5/ko/System.Reflection.xml", + "ref/netstandard1.5/ru/System.Reflection.xml", + "ref/netstandard1.5/zh-hans/System.Reflection.xml", + "ref/netstandard1.5/zh-hant/System.Reflection.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.reflection.4.3.0.nupkg.sha512", + "system.reflection.nuspec" + ] + }, + "System.Reflection.Emit/4.7.0": { + "sha512": "VR4kk8XLKebQ4MZuKuIni/7oh+QGFmZW3qORd1GvBq/8026OpW501SzT/oypwiQl4TvT8ErnReh/NzY9u+C6wQ==", + "type": "package", + "path": "system.reflection.emit/4.7.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Emit.dll", + "lib/netcoreapp2.0/_._", + "lib/netstandard1.1/System.Reflection.Emit.dll", + "lib/netstandard1.1/System.Reflection.Emit.xml", + "lib/netstandard1.3/System.Reflection.Emit.dll", + "lib/netstandard2.0/System.Reflection.Emit.dll", + "lib/netstandard2.0/System.Reflection.Emit.xml", + "lib/netstandard2.1/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcoreapp2.0/_._", + "ref/netstandard1.1/System.Reflection.Emit.dll", + "ref/netstandard1.1/System.Reflection.Emit.xml", + "ref/netstandard1.1/de/System.Reflection.Emit.xml", + "ref/netstandard1.1/es/System.Reflection.Emit.xml", + "ref/netstandard1.1/fr/System.Reflection.Emit.xml", + "ref/netstandard1.1/it/System.Reflection.Emit.xml", + "ref/netstandard1.1/ja/System.Reflection.Emit.xml", + "ref/netstandard1.1/ko/System.Reflection.Emit.xml", + "ref/netstandard1.1/ru/System.Reflection.Emit.xml", + "ref/netstandard1.1/zh-hans/System.Reflection.Emit.xml", + "ref/netstandard1.1/zh-hant/System.Reflection.Emit.xml", + "ref/netstandard2.0/System.Reflection.Emit.dll", + "ref/netstandard2.0/System.Reflection.Emit.xml", + "ref/netstandard2.1/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Reflection.Emit.dll", + "runtimes/aot/lib/netcore50/System.Reflection.Emit.xml", + "system.reflection.emit.4.7.0.nupkg.sha512", + "system.reflection.emit.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Reflection.Emit.ILGeneration/4.3.0": { + "sha512": "59tBslAk9733NXLrUJrwNZEzbMAcu8k344OYo+wfSVygcgZ9lgBdGIzH/nrg3LYhXceynyvTc8t5/GD4Ri0/ng==", + "type": "package", + "path": "system.reflection.emit.ilgeneration/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Emit.ILGeneration.dll", + "lib/netstandard1.3/System.Reflection.Emit.ILGeneration.dll", + "lib/portable-net45+wp8/_._", + "lib/wp80/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netstandard1.0/System.Reflection.Emit.ILGeneration.dll", + "ref/netstandard1.0/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/de/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/es/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/fr/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/it/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/ja/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/ko/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/ru/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.Emit.ILGeneration.xml", + "ref/portable-net45+wp8/_._", + "ref/wp80/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/_._", + "system.reflection.emit.ilgeneration.4.3.0.nupkg.sha512", + "system.reflection.emit.ilgeneration.nuspec" + ] + }, + "System.Reflection.Emit.Lightweight/4.3.0": { + "sha512": "oadVHGSMsTmZsAF864QYN1t1QzZjIcuKU3l2S9cZOwDdDueNTrqq1yRj7koFfIGEnKpt6NjpL3rOzRhs4ryOgA==", + "type": "package", + "path": "system.reflection.emit.lightweight/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Emit.Lightweight.dll", + "lib/netstandard1.3/System.Reflection.Emit.Lightweight.dll", + "lib/portable-net45+wp8/_._", + "lib/wp80/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netstandard1.0/System.Reflection.Emit.Lightweight.dll", + "ref/netstandard1.0/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/de/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/es/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/fr/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/it/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/ja/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/ko/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/ru/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.Emit.Lightweight.xml", + "ref/portable-net45+wp8/_._", + "ref/wp80/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/_._", + "system.reflection.emit.lightweight.4.3.0.nupkg.sha512", + "system.reflection.emit.lightweight.nuspec" + ] + }, + "System.Reflection.Extensions/4.3.0": { + "sha512": "rJkrJD3kBI5B712aRu4DpSIiHRtr6QlfZSQsb0hYHrDCZORXCFjQfoipo2LaMUHoT9i1B7j7MnfaEKWDFmFQNQ==", + "type": "package", + "path": "system.reflection.extensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Extensions.dll", + "ref/netcore50/System.Reflection.Extensions.xml", + "ref/netcore50/de/System.Reflection.Extensions.xml", + "ref/netcore50/es/System.Reflection.Extensions.xml", + "ref/netcore50/fr/System.Reflection.Extensions.xml", + "ref/netcore50/it/System.Reflection.Extensions.xml", + "ref/netcore50/ja/System.Reflection.Extensions.xml", + "ref/netcore50/ko/System.Reflection.Extensions.xml", + "ref/netcore50/ru/System.Reflection.Extensions.xml", + "ref/netcore50/zh-hans/System.Reflection.Extensions.xml", + "ref/netcore50/zh-hant/System.Reflection.Extensions.xml", + "ref/netstandard1.0/System.Reflection.Extensions.dll", + "ref/netstandard1.0/System.Reflection.Extensions.xml", + "ref/netstandard1.0/de/System.Reflection.Extensions.xml", + "ref/netstandard1.0/es/System.Reflection.Extensions.xml", + "ref/netstandard1.0/fr/System.Reflection.Extensions.xml", + "ref/netstandard1.0/it/System.Reflection.Extensions.xml", + "ref/netstandard1.0/ja/System.Reflection.Extensions.xml", + "ref/netstandard1.0/ko/System.Reflection.Extensions.xml", + "ref/netstandard1.0/ru/System.Reflection.Extensions.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.Extensions.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.Extensions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.reflection.extensions.4.3.0.nupkg.sha512", + "system.reflection.extensions.nuspec" + ] + }, + "System.Reflection.Metadata/1.6.0": { + "sha512": "COC1aiAJjCoA5GBF+QKL2uLqEBew4JsCkQmoHKbN3TlOZKa2fKLz5CpiRQKDz0RsAOEGsVKqOD5bomsXq/4STQ==", + "type": "package", + "path": "system.reflection.metadata/1.6.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/netstandard1.1/System.Reflection.Metadata.dll", + "lib/netstandard1.1/System.Reflection.Metadata.xml", + "lib/netstandard2.0/System.Reflection.Metadata.dll", + "lib/netstandard2.0/System.Reflection.Metadata.xml", + "lib/portable-net45+win8/System.Reflection.Metadata.dll", + "lib/portable-net45+win8/System.Reflection.Metadata.xml", + "system.reflection.metadata.1.6.0.nupkg.sha512", + "system.reflection.metadata.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Reflection.Primitives/4.3.0": { + "sha512": "5RXItQz5As4xN2/YUDxdpsEkMhvw3e6aNveFXUn4Hl/udNTCNhnKp8lT9fnc3MhvGKh1baak5CovpuQUXHAlIA==", + "type": "package", + "path": "system.reflection.primitives/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Primitives.dll", + "ref/netcore50/System.Reflection.Primitives.xml", + "ref/netcore50/de/System.Reflection.Primitives.xml", + "ref/netcore50/es/System.Reflection.Primitives.xml", + "ref/netcore50/fr/System.Reflection.Primitives.xml", + "ref/netcore50/it/System.Reflection.Primitives.xml", + "ref/netcore50/ja/System.Reflection.Primitives.xml", + "ref/netcore50/ko/System.Reflection.Primitives.xml", + "ref/netcore50/ru/System.Reflection.Primitives.xml", + "ref/netcore50/zh-hans/System.Reflection.Primitives.xml", + "ref/netcore50/zh-hant/System.Reflection.Primitives.xml", + "ref/netstandard1.0/System.Reflection.Primitives.dll", + "ref/netstandard1.0/System.Reflection.Primitives.xml", + "ref/netstandard1.0/de/System.Reflection.Primitives.xml", + "ref/netstandard1.0/es/System.Reflection.Primitives.xml", + "ref/netstandard1.0/fr/System.Reflection.Primitives.xml", + "ref/netstandard1.0/it/System.Reflection.Primitives.xml", + "ref/netstandard1.0/ja/System.Reflection.Primitives.xml", + "ref/netstandard1.0/ko/System.Reflection.Primitives.xml", + "ref/netstandard1.0/ru/System.Reflection.Primitives.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.Primitives.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.Primitives.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.reflection.primitives.4.3.0.nupkg.sha512", + "system.reflection.primitives.nuspec" + ] + }, + "System.Reflection.TypeExtensions/4.3.0": { + "sha512": "7u6ulLcZbyxB5Gq0nMkQttcdBTx57ibzw+4IOXEfR+sXYQoHvjW5LTLyNr8O22UIMrqYbchJQJnos4eooYzYJA==", + "type": "package", + "path": "system.reflection.typeextensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Reflection.TypeExtensions.dll", + "lib/net462/System.Reflection.TypeExtensions.dll", + "lib/netcore50/System.Reflection.TypeExtensions.dll", + "lib/netstandard1.5/System.Reflection.TypeExtensions.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Reflection.TypeExtensions.dll", + "ref/net462/System.Reflection.TypeExtensions.dll", + "ref/netstandard1.3/System.Reflection.TypeExtensions.dll", + "ref/netstandard1.3/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/de/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/es/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/fr/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/it/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/ja/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/ko/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/ru/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/zh-hans/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/zh-hant/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/System.Reflection.TypeExtensions.dll", + "ref/netstandard1.5/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/de/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/es/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/fr/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/it/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/ja/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/ko/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/ru/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/zh-hans/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/zh-hant/System.Reflection.TypeExtensions.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Reflection.TypeExtensions.dll", + "system.reflection.typeextensions.4.3.0.nupkg.sha512", + "system.reflection.typeextensions.nuspec" + ] + }, + "System.Resources.ResourceManager/4.3.0": { + "sha512": "/zrcPkkWdZmI4F92gL/TPumP98AVDu/Wxr3CSJGQQ+XN6wbRZcyfSKVoPo17ilb3iOr0cCRqJInGwNMolqhS8A==", + "type": "package", + "path": "system.resources.resourcemanager/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Resources.ResourceManager.dll", + "ref/netcore50/System.Resources.ResourceManager.xml", + "ref/netcore50/de/System.Resources.ResourceManager.xml", + "ref/netcore50/es/System.Resources.ResourceManager.xml", + "ref/netcore50/fr/System.Resources.ResourceManager.xml", + "ref/netcore50/it/System.Resources.ResourceManager.xml", + "ref/netcore50/ja/System.Resources.ResourceManager.xml", + "ref/netcore50/ko/System.Resources.ResourceManager.xml", + "ref/netcore50/ru/System.Resources.ResourceManager.xml", + "ref/netcore50/zh-hans/System.Resources.ResourceManager.xml", + "ref/netcore50/zh-hant/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/System.Resources.ResourceManager.dll", + "ref/netstandard1.0/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/de/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/es/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/fr/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/it/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/ja/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/ko/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/ru/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/zh-hans/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/zh-hant/System.Resources.ResourceManager.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.resources.resourcemanager.4.3.0.nupkg.sha512", + "system.resources.resourcemanager.nuspec" + ] + }, + "System.Runtime/4.3.0": { + "sha512": "JufQi0vPQ0xGnAczR13AUFglDyVYt4Kqnz1AZaiKZ5+GICq0/1MH/mO/eAJHt/mHW1zjKBJd7kV26SrxddAhiw==", + "type": "package", + "path": "system.runtime/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Runtime.dll", + "lib/portable-net45+win8+wp80+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Runtime.dll", + "ref/netcore50/System.Runtime.dll", + "ref/netcore50/System.Runtime.xml", + "ref/netcore50/de/System.Runtime.xml", + "ref/netcore50/es/System.Runtime.xml", + "ref/netcore50/fr/System.Runtime.xml", + "ref/netcore50/it/System.Runtime.xml", + "ref/netcore50/ja/System.Runtime.xml", + "ref/netcore50/ko/System.Runtime.xml", + "ref/netcore50/ru/System.Runtime.xml", + "ref/netcore50/zh-hans/System.Runtime.xml", + "ref/netcore50/zh-hant/System.Runtime.xml", + "ref/netstandard1.0/System.Runtime.dll", + "ref/netstandard1.0/System.Runtime.xml", + "ref/netstandard1.0/de/System.Runtime.xml", + "ref/netstandard1.0/es/System.Runtime.xml", + "ref/netstandard1.0/fr/System.Runtime.xml", + "ref/netstandard1.0/it/System.Runtime.xml", + "ref/netstandard1.0/ja/System.Runtime.xml", + "ref/netstandard1.0/ko/System.Runtime.xml", + "ref/netstandard1.0/ru/System.Runtime.xml", + "ref/netstandard1.0/zh-hans/System.Runtime.xml", + "ref/netstandard1.0/zh-hant/System.Runtime.xml", + "ref/netstandard1.2/System.Runtime.dll", + "ref/netstandard1.2/System.Runtime.xml", + "ref/netstandard1.2/de/System.Runtime.xml", + "ref/netstandard1.2/es/System.Runtime.xml", + "ref/netstandard1.2/fr/System.Runtime.xml", + "ref/netstandard1.2/it/System.Runtime.xml", + "ref/netstandard1.2/ja/System.Runtime.xml", + "ref/netstandard1.2/ko/System.Runtime.xml", + "ref/netstandard1.2/ru/System.Runtime.xml", + "ref/netstandard1.2/zh-hans/System.Runtime.xml", + "ref/netstandard1.2/zh-hant/System.Runtime.xml", + "ref/netstandard1.3/System.Runtime.dll", + "ref/netstandard1.3/System.Runtime.xml", + "ref/netstandard1.3/de/System.Runtime.xml", + "ref/netstandard1.3/es/System.Runtime.xml", + "ref/netstandard1.3/fr/System.Runtime.xml", + "ref/netstandard1.3/it/System.Runtime.xml", + "ref/netstandard1.3/ja/System.Runtime.xml", + "ref/netstandard1.3/ko/System.Runtime.xml", + "ref/netstandard1.3/ru/System.Runtime.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.xml", + "ref/netstandard1.5/System.Runtime.dll", + "ref/netstandard1.5/System.Runtime.xml", + "ref/netstandard1.5/de/System.Runtime.xml", + "ref/netstandard1.5/es/System.Runtime.xml", + "ref/netstandard1.5/fr/System.Runtime.xml", + "ref/netstandard1.5/it/System.Runtime.xml", + "ref/netstandard1.5/ja/System.Runtime.xml", + "ref/netstandard1.5/ko/System.Runtime.xml", + "ref/netstandard1.5/ru/System.Runtime.xml", + "ref/netstandard1.5/zh-hans/System.Runtime.xml", + "ref/netstandard1.5/zh-hant/System.Runtime.xml", + "ref/portable-net45+win8+wp80+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.4.3.0.nupkg.sha512", + "system.runtime.nuspec" + ] + }, + "System.Runtime.Extensions/4.3.0": { + "sha512": "guW0uK0fn5fcJJ1tJVXYd7/1h5F+pea1r7FLSOz/f8vPEqbR2ZAknuRDvTQ8PzAilDveOxNjSfr0CHfIQfFk8g==", + "type": "package", + "path": "system.runtime.extensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Runtime.Extensions.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Runtime.Extensions.dll", + "ref/netcore50/System.Runtime.Extensions.dll", + "ref/netcore50/System.Runtime.Extensions.xml", + "ref/netcore50/de/System.Runtime.Extensions.xml", + "ref/netcore50/es/System.Runtime.Extensions.xml", + "ref/netcore50/fr/System.Runtime.Extensions.xml", + "ref/netcore50/it/System.Runtime.Extensions.xml", + "ref/netcore50/ja/System.Runtime.Extensions.xml", + "ref/netcore50/ko/System.Runtime.Extensions.xml", + "ref/netcore50/ru/System.Runtime.Extensions.xml", + "ref/netcore50/zh-hans/System.Runtime.Extensions.xml", + "ref/netcore50/zh-hant/System.Runtime.Extensions.xml", + "ref/netstandard1.0/System.Runtime.Extensions.dll", + "ref/netstandard1.0/System.Runtime.Extensions.xml", + "ref/netstandard1.0/de/System.Runtime.Extensions.xml", + "ref/netstandard1.0/es/System.Runtime.Extensions.xml", + "ref/netstandard1.0/fr/System.Runtime.Extensions.xml", + "ref/netstandard1.0/it/System.Runtime.Extensions.xml", + "ref/netstandard1.0/ja/System.Runtime.Extensions.xml", + "ref/netstandard1.0/ko/System.Runtime.Extensions.xml", + "ref/netstandard1.0/ru/System.Runtime.Extensions.xml", + "ref/netstandard1.0/zh-hans/System.Runtime.Extensions.xml", + "ref/netstandard1.0/zh-hant/System.Runtime.Extensions.xml", + "ref/netstandard1.3/System.Runtime.Extensions.dll", + "ref/netstandard1.3/System.Runtime.Extensions.xml", + "ref/netstandard1.3/de/System.Runtime.Extensions.xml", + "ref/netstandard1.3/es/System.Runtime.Extensions.xml", + "ref/netstandard1.3/fr/System.Runtime.Extensions.xml", + "ref/netstandard1.3/it/System.Runtime.Extensions.xml", + "ref/netstandard1.3/ja/System.Runtime.Extensions.xml", + "ref/netstandard1.3/ko/System.Runtime.Extensions.xml", + "ref/netstandard1.3/ru/System.Runtime.Extensions.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.Extensions.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.Extensions.xml", + "ref/netstandard1.5/System.Runtime.Extensions.dll", + "ref/netstandard1.5/System.Runtime.Extensions.xml", + "ref/netstandard1.5/de/System.Runtime.Extensions.xml", + "ref/netstandard1.5/es/System.Runtime.Extensions.xml", + "ref/netstandard1.5/fr/System.Runtime.Extensions.xml", + "ref/netstandard1.5/it/System.Runtime.Extensions.xml", + "ref/netstandard1.5/ja/System.Runtime.Extensions.xml", + "ref/netstandard1.5/ko/System.Runtime.Extensions.xml", + "ref/netstandard1.5/ru/System.Runtime.Extensions.xml", + "ref/netstandard1.5/zh-hans/System.Runtime.Extensions.xml", + "ref/netstandard1.5/zh-hant/System.Runtime.Extensions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.extensions.4.3.0.nupkg.sha512", + "system.runtime.extensions.nuspec" + ] + }, + "System.Runtime.Handles/4.3.0": { + "sha512": "OKiSUN7DmTWeYb3l51A7EYaeNMnvxwE249YtZz7yooT4gOZhmTjIn48KgSsw2k2lYdLgTKNJw/ZIfSElwDRVgg==", + "type": "package", + "path": "system.runtime.handles/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/netstandard1.3/System.Runtime.Handles.dll", + "ref/netstandard1.3/System.Runtime.Handles.xml", + "ref/netstandard1.3/de/System.Runtime.Handles.xml", + "ref/netstandard1.3/es/System.Runtime.Handles.xml", + "ref/netstandard1.3/fr/System.Runtime.Handles.xml", + "ref/netstandard1.3/it/System.Runtime.Handles.xml", + "ref/netstandard1.3/ja/System.Runtime.Handles.xml", + "ref/netstandard1.3/ko/System.Runtime.Handles.xml", + "ref/netstandard1.3/ru/System.Runtime.Handles.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.Handles.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.Handles.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.handles.4.3.0.nupkg.sha512", + "system.runtime.handles.nuspec" + ] + }, + "System.Runtime.InteropServices/4.3.0": { + "sha512": "uv1ynXqiMK8mp1GM3jDqPCFN66eJ5w5XNomaK2XD+TuCroNTLFGeZ+WCmBMcBDyTFKou3P6cR6J/QsaqDp7fGQ==", + "type": "package", + "path": "system.runtime.interopservices/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Runtime.InteropServices.dll", + "lib/net463/System.Runtime.InteropServices.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Runtime.InteropServices.dll", + "ref/net463/System.Runtime.InteropServices.dll", + "ref/netcore50/System.Runtime.InteropServices.dll", + "ref/netcore50/System.Runtime.InteropServices.xml", + "ref/netcore50/de/System.Runtime.InteropServices.xml", + "ref/netcore50/es/System.Runtime.InteropServices.xml", + "ref/netcore50/fr/System.Runtime.InteropServices.xml", + "ref/netcore50/it/System.Runtime.InteropServices.xml", + "ref/netcore50/ja/System.Runtime.InteropServices.xml", + "ref/netcore50/ko/System.Runtime.InteropServices.xml", + "ref/netcore50/ru/System.Runtime.InteropServices.xml", + "ref/netcore50/zh-hans/System.Runtime.InteropServices.xml", + "ref/netcore50/zh-hant/System.Runtime.InteropServices.xml", + "ref/netcoreapp1.1/System.Runtime.InteropServices.dll", + "ref/netstandard1.1/System.Runtime.InteropServices.dll", + "ref/netstandard1.1/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/de/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/es/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/fr/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/it/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/ja/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/ko/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/ru/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/zh-hans/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/zh-hant/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/System.Runtime.InteropServices.dll", + "ref/netstandard1.2/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/de/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/es/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/fr/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/it/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/ja/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/ko/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/ru/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/zh-hans/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/zh-hant/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/System.Runtime.InteropServices.dll", + "ref/netstandard1.3/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/de/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/es/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/fr/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/it/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/ja/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/ko/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/ru/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/System.Runtime.InteropServices.dll", + "ref/netstandard1.5/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/de/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/es/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/fr/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/it/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/ja/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/ko/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/ru/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/zh-hans/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/zh-hant/System.Runtime.InteropServices.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.interopservices.4.3.0.nupkg.sha512", + "system.runtime.interopservices.nuspec" + ] + }, + "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { + "sha512": "cbz4YJMqRDR7oLeMRbdYv7mYzc++17lNhScCX0goO2XpGWdvAt60CGN+FHdePUEHCe/Jy9jUlvNAiNdM+7jsOw==", + "type": "package", + "path": "system.runtime.interopservices.runtimeinformation/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/System.Runtime.InteropServices.RuntimeInformation.dll", + "lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", + "lib/win8/System.Runtime.InteropServices.RuntimeInformation.dll", + "lib/wpa81/System.Runtime.InteropServices.RuntimeInformation.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Runtime.InteropServices.RuntimeInformation.dll", + "runtimes/unix/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", + "runtimes/win/lib/net45/System.Runtime.InteropServices.RuntimeInformation.dll", + "runtimes/win/lib/netcore50/System.Runtime.InteropServices.RuntimeInformation.dll", + "runtimes/win/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", + "system.runtime.interopservices.runtimeinformation.4.3.0.nupkg.sha512", + "system.runtime.interopservices.runtimeinformation.nuspec" + ] + }, + "System.Runtime.Numerics/4.3.0": { + "sha512": "yMH+MfdzHjy17l2KESnPiF2dwq7T+xLnSJar7slyimAkUh/gTrS9/UQOtv7xarskJ2/XDSNvfLGOBQPjL7PaHQ==", + "type": "package", + "path": "system.runtime.numerics/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Runtime.Numerics.dll", + "lib/netstandard1.3/System.Runtime.Numerics.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Runtime.Numerics.dll", + "ref/netcore50/System.Runtime.Numerics.xml", + "ref/netcore50/de/System.Runtime.Numerics.xml", + "ref/netcore50/es/System.Runtime.Numerics.xml", + "ref/netcore50/fr/System.Runtime.Numerics.xml", + "ref/netcore50/it/System.Runtime.Numerics.xml", + "ref/netcore50/ja/System.Runtime.Numerics.xml", + "ref/netcore50/ko/System.Runtime.Numerics.xml", + "ref/netcore50/ru/System.Runtime.Numerics.xml", + "ref/netcore50/zh-hans/System.Runtime.Numerics.xml", + "ref/netcore50/zh-hant/System.Runtime.Numerics.xml", + "ref/netstandard1.1/System.Runtime.Numerics.dll", + "ref/netstandard1.1/System.Runtime.Numerics.xml", + "ref/netstandard1.1/de/System.Runtime.Numerics.xml", + "ref/netstandard1.1/es/System.Runtime.Numerics.xml", + "ref/netstandard1.1/fr/System.Runtime.Numerics.xml", + "ref/netstandard1.1/it/System.Runtime.Numerics.xml", + "ref/netstandard1.1/ja/System.Runtime.Numerics.xml", + "ref/netstandard1.1/ko/System.Runtime.Numerics.xml", + "ref/netstandard1.1/ru/System.Runtime.Numerics.xml", + "ref/netstandard1.1/zh-hans/System.Runtime.Numerics.xml", + "ref/netstandard1.1/zh-hant/System.Runtime.Numerics.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.numerics.4.3.0.nupkg.sha512", + "system.runtime.numerics.nuspec" + ] + }, + "System.Security.Cryptography.Algorithms/4.3.0": { + "sha512": "W1kd2Y8mYSCgc3ULTAZ0hOP2dSdG5YauTb1089T0/kRcN2MpSAW1izOFROrJgxSlMn3ArsgHXagigyi+ibhevg==", + "type": "package", + "path": "system.security.cryptography.algorithms/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Algorithms.dll", + "lib/net461/System.Security.Cryptography.Algorithms.dll", + "lib/net463/System.Security.Cryptography.Algorithms.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Algorithms.dll", + "ref/net461/System.Security.Cryptography.Algorithms.dll", + "ref/net463/System.Security.Cryptography.Algorithms.dll", + "ref/netstandard1.3/System.Security.Cryptography.Algorithms.dll", + "ref/netstandard1.4/System.Security.Cryptography.Algorithms.dll", + "ref/netstandard1.6/System.Security.Cryptography.Algorithms.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/osx/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/net463/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/netcore50/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", + "system.security.cryptography.algorithms.4.3.0.nupkg.sha512", + "system.security.cryptography.algorithms.nuspec" + ] + }, + "System.Security.Cryptography.Cng/4.3.0": { + "sha512": "03idZOqFlsKRL4W+LuCpJ6dBYDUWReug6lZjBa3uJWnk5sPCUXckocevTaUA8iT/MFSrY/2HXkOt753xQ/cf8g==", + "type": "package", + "path": "system.security.cryptography.cng/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/net46/System.Security.Cryptography.Cng.dll", + "lib/net461/System.Security.Cryptography.Cng.dll", + "lib/net463/System.Security.Cryptography.Cng.dll", + "ref/net46/System.Security.Cryptography.Cng.dll", + "ref/net461/System.Security.Cryptography.Cng.dll", + "ref/net463/System.Security.Cryptography.Cng.dll", + "ref/netstandard1.3/System.Security.Cryptography.Cng.dll", + "ref/netstandard1.4/System.Security.Cryptography.Cng.dll", + "ref/netstandard1.6/System.Security.Cryptography.Cng.dll", + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/net463/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/netstandard1.4/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Cng.dll", + "system.security.cryptography.cng.4.3.0.nupkg.sha512", + "system.security.cryptography.cng.nuspec" + ] + }, + "System.Security.Cryptography.Csp/4.3.0": { + "sha512": "X4s/FCkEUnRGnwR3aSfVIkldBmtURMhmexALNTwpjklzxWU7yjMk7GHLKOZTNkgnWnE0q7+BCf9N2LVRWxewaA==", + "type": "package", + "path": "system.security.cryptography.csp/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Csp.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Csp.dll", + "ref/netstandard1.3/System.Security.Cryptography.Csp.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Csp.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.Csp.dll", + "runtimes/win/lib/netcore50/_._", + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Csp.dll", + "system.security.cryptography.csp.4.3.0.nupkg.sha512", + "system.security.cryptography.csp.nuspec" + ] + }, + "System.Security.Cryptography.Encoding/4.3.0": { + "sha512": "1DEWjZZly9ae9C79vFwqaO5kaOlI5q+3/55ohmq/7dpDyDfc8lYe7YVxJUZ5MF/NtbkRjwFRo14yM4OEo9EmDw==", + "type": "package", + "path": "system.security.cryptography.encoding/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Encoding.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Encoding.dll", + "ref/netstandard1.3/System.Security.Cryptography.Encoding.dll", + "ref/netstandard1.3/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/de/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/es/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/fr/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/it/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/ja/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/ko/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/ru/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/zh-hans/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/zh-hant/System.Security.Cryptography.Encoding.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.Encoding.dll", + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll", + "system.security.cryptography.encoding.4.3.0.nupkg.sha512", + "system.security.cryptography.encoding.nuspec" + ] + }, + "System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "h4CEgOgv5PKVF/HwaHzJRiVboL2THYCou97zpmhjghx5frc7fIvlkY1jL+lnIQyChrJDMNEXS6r7byGif8Cy4w==", + "type": "package", + "path": "system.security.cryptography.openssl/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", + "ref/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", + "system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "system.security.cryptography.openssl.nuspec" + ] + }, + "System.Security.Cryptography.Primitives/4.3.0": { + "sha512": "7bDIyVFNL/xKeFHjhobUAQqSpJq9YTOpbEs6mR233Et01STBMXNAc/V+BM6dwYGc95gVh/Zf+iVXWzj3mE8DWg==", + "type": "package", + "path": "system.security.cryptography.primitives/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Primitives.dll", + "lib/netstandard1.3/System.Security.Cryptography.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Primitives.dll", + "ref/netstandard1.3/System.Security.Cryptography.Primitives.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.security.cryptography.primitives.4.3.0.nupkg.sha512", + "system.security.cryptography.primitives.nuspec" + ] + }, + "System.Security.Cryptography.X509Certificates/4.3.0": { + "sha512": "t2Tmu6Y2NtJ2um0RtcuhP7ZdNNxXEgUm2JeoA/0NvlMjAhKCnM1NX07TDl3244mVp3QU6LPEhT3HTtH1uF7IYw==", + "type": "package", + "path": "system.security.cryptography.x509certificates/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.X509Certificates.dll", + "lib/net461/System.Security.Cryptography.X509Certificates.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.X509Certificates.dll", + "ref/net461/System.Security.Cryptography.X509Certificates.dll", + "ref/netstandard1.3/System.Security.Cryptography.X509Certificates.dll", + "ref/netstandard1.3/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/de/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/es/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/fr/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/it/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/ja/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/ko/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/ru/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/zh-hans/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/zh-hant/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.dll", + "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/de/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/es/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/fr/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/it/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/ja/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/ko/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/ru/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/zh-hans/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/zh-hant/System.Security.Cryptography.X509Certificates.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.X509Certificates.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.X509Certificates.dll", + "runtimes/win/lib/netcore50/System.Security.Cryptography.X509Certificates.dll", + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll", + "system.security.cryptography.x509certificates.4.3.0.nupkg.sha512", + "system.security.cryptography.x509certificates.nuspec" + ] + }, + "System.Text.Encoding/4.3.0": { + "sha512": "BiIg+KWaSDOITze6jGQynxg64naAPtqGHBwDrLaCtixsa5bKiR8dpPOHA7ge3C0JJQizJE+sfkz1wV+BAKAYZw==", + "type": "package", + "path": "system.text.encoding/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Text.Encoding.dll", + "ref/netcore50/System.Text.Encoding.xml", + "ref/netcore50/de/System.Text.Encoding.xml", + "ref/netcore50/es/System.Text.Encoding.xml", + "ref/netcore50/fr/System.Text.Encoding.xml", + "ref/netcore50/it/System.Text.Encoding.xml", + "ref/netcore50/ja/System.Text.Encoding.xml", + "ref/netcore50/ko/System.Text.Encoding.xml", + "ref/netcore50/ru/System.Text.Encoding.xml", + "ref/netcore50/zh-hans/System.Text.Encoding.xml", + "ref/netcore50/zh-hant/System.Text.Encoding.xml", + "ref/netstandard1.0/System.Text.Encoding.dll", + "ref/netstandard1.0/System.Text.Encoding.xml", + "ref/netstandard1.0/de/System.Text.Encoding.xml", + "ref/netstandard1.0/es/System.Text.Encoding.xml", + "ref/netstandard1.0/fr/System.Text.Encoding.xml", + "ref/netstandard1.0/it/System.Text.Encoding.xml", + "ref/netstandard1.0/ja/System.Text.Encoding.xml", + "ref/netstandard1.0/ko/System.Text.Encoding.xml", + "ref/netstandard1.0/ru/System.Text.Encoding.xml", + "ref/netstandard1.0/zh-hans/System.Text.Encoding.xml", + "ref/netstandard1.0/zh-hant/System.Text.Encoding.xml", + "ref/netstandard1.3/System.Text.Encoding.dll", + "ref/netstandard1.3/System.Text.Encoding.xml", + "ref/netstandard1.3/de/System.Text.Encoding.xml", + "ref/netstandard1.3/es/System.Text.Encoding.xml", + "ref/netstandard1.3/fr/System.Text.Encoding.xml", + "ref/netstandard1.3/it/System.Text.Encoding.xml", + "ref/netstandard1.3/ja/System.Text.Encoding.xml", + "ref/netstandard1.3/ko/System.Text.Encoding.xml", + "ref/netstandard1.3/ru/System.Text.Encoding.xml", + "ref/netstandard1.3/zh-hans/System.Text.Encoding.xml", + "ref/netstandard1.3/zh-hant/System.Text.Encoding.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.text.encoding.4.3.0.nupkg.sha512", + "system.text.encoding.nuspec" + ] + }, + "System.Text.Encoding.Extensions/4.3.0": { + "sha512": "YVMK0Bt/A43RmwizJoZ22ei2nmrhobgeiYwFzC4YAN+nue8RF6djXDMog0UCn+brerQoYVyaS+ghy9P/MUVcmw==", + "type": "package", + "path": "system.text.encoding.extensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Text.Encoding.Extensions.dll", + "ref/netcore50/System.Text.Encoding.Extensions.xml", + "ref/netcore50/de/System.Text.Encoding.Extensions.xml", + "ref/netcore50/es/System.Text.Encoding.Extensions.xml", + "ref/netcore50/fr/System.Text.Encoding.Extensions.xml", + "ref/netcore50/it/System.Text.Encoding.Extensions.xml", + "ref/netcore50/ja/System.Text.Encoding.Extensions.xml", + "ref/netcore50/ko/System.Text.Encoding.Extensions.xml", + "ref/netcore50/ru/System.Text.Encoding.Extensions.xml", + "ref/netcore50/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/netcore50/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/System.Text.Encoding.Extensions.dll", + "ref/netstandard1.0/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/de/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/es/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/fr/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/it/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/ja/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/ko/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/ru/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/System.Text.Encoding.Extensions.dll", + "ref/netstandard1.3/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/de/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/es/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/fr/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/it/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/ja/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/ko/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/ru/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.text.encoding.extensions.4.3.0.nupkg.sha512", + "system.text.encoding.extensions.nuspec" + ] + }, + "System.Text.Encodings.Web/8.0.0": { + "sha512": "yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ==", + "type": "package", + "path": "system.text.encodings.web/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Text.Encodings.Web.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.Text.Encodings.Web.targets", + "lib/net462/System.Text.Encodings.Web.dll", + "lib/net462/System.Text.Encodings.Web.xml", + "lib/net6.0/System.Text.Encodings.Web.dll", + "lib/net6.0/System.Text.Encodings.Web.xml", + "lib/net7.0/System.Text.Encodings.Web.dll", + "lib/net7.0/System.Text.Encodings.Web.xml", + "lib/net8.0/System.Text.Encodings.Web.dll", + "lib/net8.0/System.Text.Encodings.Web.xml", + "lib/netstandard2.0/System.Text.Encodings.Web.dll", + "lib/netstandard2.0/System.Text.Encodings.Web.xml", + "runtimes/browser/lib/net6.0/System.Text.Encodings.Web.dll", + "runtimes/browser/lib/net6.0/System.Text.Encodings.Web.xml", + "runtimes/browser/lib/net7.0/System.Text.Encodings.Web.dll", + "runtimes/browser/lib/net7.0/System.Text.Encodings.Web.xml", + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll", + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.xml", + "system.text.encodings.web.8.0.0.nupkg.sha512", + "system.text.encodings.web.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Text.RegularExpressions/4.3.0": { + "sha512": "RpT2DA+L660cBt1FssIE9CAGpLFdFPuheB7pLpKpn6ZXNby7jDERe8Ua/Ne2xGiwLVG2JOqziiaVCGDon5sKFA==", + "type": "package", + "path": "system.text.regularexpressions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net463/System.Text.RegularExpressions.dll", + "lib/netcore50/System.Text.RegularExpressions.dll", + "lib/netstandard1.6/System.Text.RegularExpressions.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net463/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.xml", + "ref/netcore50/de/System.Text.RegularExpressions.xml", + "ref/netcore50/es/System.Text.RegularExpressions.xml", + "ref/netcore50/fr/System.Text.RegularExpressions.xml", + "ref/netcore50/it/System.Text.RegularExpressions.xml", + "ref/netcore50/ja/System.Text.RegularExpressions.xml", + "ref/netcore50/ko/System.Text.RegularExpressions.xml", + "ref/netcore50/ru/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", + "ref/netcoreapp1.1/System.Text.RegularExpressions.dll", + "ref/netstandard1.0/System.Text.RegularExpressions.dll", + "ref/netstandard1.0/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/de/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/es/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/fr/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/it/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/ja/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/ko/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/ru/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/zh-hans/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/zh-hant/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/System.Text.RegularExpressions.dll", + "ref/netstandard1.3/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/de/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/es/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/fr/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/it/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/ja/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/ko/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/ru/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/zh-hans/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/zh-hant/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/System.Text.RegularExpressions.dll", + "ref/netstandard1.6/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/de/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/es/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/fr/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/it/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/ja/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/ko/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/ru/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/zh-hans/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/zh-hant/System.Text.RegularExpressions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.text.regularexpressions.4.3.0.nupkg.sha512", + "system.text.regularexpressions.nuspec" + ] + }, + "System.Threading/4.3.0": { + "sha512": "VkUS0kOBcUf3Wwm0TSbrevDDZ6BlM+b/HRiapRFWjM5O0NS0LviG0glKmFK+hhPDd1XFeSdU1GmlLhb2CoVpIw==", + "type": "package", + "path": "system.threading/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Threading.dll", + "lib/netstandard1.3/System.Threading.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Threading.dll", + "ref/netcore50/System.Threading.xml", + "ref/netcore50/de/System.Threading.xml", + "ref/netcore50/es/System.Threading.xml", + "ref/netcore50/fr/System.Threading.xml", + "ref/netcore50/it/System.Threading.xml", + "ref/netcore50/ja/System.Threading.xml", + "ref/netcore50/ko/System.Threading.xml", + "ref/netcore50/ru/System.Threading.xml", + "ref/netcore50/zh-hans/System.Threading.xml", + "ref/netcore50/zh-hant/System.Threading.xml", + "ref/netstandard1.0/System.Threading.dll", + "ref/netstandard1.0/System.Threading.xml", + "ref/netstandard1.0/de/System.Threading.xml", + "ref/netstandard1.0/es/System.Threading.xml", + "ref/netstandard1.0/fr/System.Threading.xml", + "ref/netstandard1.0/it/System.Threading.xml", + "ref/netstandard1.0/ja/System.Threading.xml", + "ref/netstandard1.0/ko/System.Threading.xml", + "ref/netstandard1.0/ru/System.Threading.xml", + "ref/netstandard1.0/zh-hans/System.Threading.xml", + "ref/netstandard1.0/zh-hant/System.Threading.xml", + "ref/netstandard1.3/System.Threading.dll", + "ref/netstandard1.3/System.Threading.xml", + "ref/netstandard1.3/de/System.Threading.xml", + "ref/netstandard1.3/es/System.Threading.xml", + "ref/netstandard1.3/fr/System.Threading.xml", + "ref/netstandard1.3/it/System.Threading.xml", + "ref/netstandard1.3/ja/System.Threading.xml", + "ref/netstandard1.3/ko/System.Threading.xml", + "ref/netstandard1.3/ru/System.Threading.xml", + "ref/netstandard1.3/zh-hans/System.Threading.xml", + "ref/netstandard1.3/zh-hant/System.Threading.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Threading.dll", + "system.threading.4.3.0.nupkg.sha512", + "system.threading.nuspec" + ] + }, + "System.Threading.Channels/8.0.0": { + "sha512": "CMaFr7v+57RW7uZfZkPExsPB6ljwzhjACWW1gfU35Y56rk72B/Wu+sTqxVmGSk4SFUlPc3cjeKND0zktziyjBA==", + "type": "package", + "path": "system.threading.channels/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Threading.Channels.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.Threading.Channels.targets", + "lib/net462/System.Threading.Channels.dll", + "lib/net462/System.Threading.Channels.xml", + "lib/net6.0/System.Threading.Channels.dll", + "lib/net6.0/System.Threading.Channels.xml", + "lib/net7.0/System.Threading.Channels.dll", + "lib/net7.0/System.Threading.Channels.xml", + "lib/net8.0/System.Threading.Channels.dll", + "lib/net8.0/System.Threading.Channels.xml", + "lib/netstandard2.0/System.Threading.Channels.dll", + "lib/netstandard2.0/System.Threading.Channels.xml", + "lib/netstandard2.1/System.Threading.Channels.dll", + "lib/netstandard2.1/System.Threading.Channels.xml", + "system.threading.channels.8.0.0.nupkg.sha512", + "system.threading.channels.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Threading.RateLimiting/8.0.0": { + "sha512": "7mu9v0QDv66ar3DpGSZHg9NuNcxDaaAcnMULuZlaTpP9+hwXhrxNGsF5GmLkSHxFdb5bBc1TzeujsRgTrPWi+Q==", + "type": "package", + "path": "system.threading.ratelimiting/8.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Threading.RateLimiting.targets", + "buildTransitive/net462/_._", + "buildTransitive/net6.0/_._", + "buildTransitive/netcoreapp2.0/System.Threading.RateLimiting.targets", + "lib/net462/System.Threading.RateLimiting.dll", + "lib/net462/System.Threading.RateLimiting.xml", + "lib/net6.0/System.Threading.RateLimiting.dll", + "lib/net6.0/System.Threading.RateLimiting.xml", + "lib/net7.0/System.Threading.RateLimiting.dll", + "lib/net7.0/System.Threading.RateLimiting.xml", + "lib/net8.0/System.Threading.RateLimiting.dll", + "lib/net8.0/System.Threading.RateLimiting.xml", + "lib/netstandard2.0/System.Threading.RateLimiting.dll", + "lib/netstandard2.0/System.Threading.RateLimiting.xml", + "system.threading.ratelimiting.8.0.0.nupkg.sha512", + "system.threading.ratelimiting.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Threading.Tasks/4.3.0": { + "sha512": "LbSxKEdOUhVe8BezB/9uOGGppt+nZf6e1VFyw6v3DN6lqitm0OSn2uXMOdtP0M3W4iMcqcivm2J6UgqiwwnXiA==", + "type": "package", + "path": "system.threading.tasks/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Threading.Tasks.dll", + "ref/netcore50/System.Threading.Tasks.xml", + "ref/netcore50/de/System.Threading.Tasks.xml", + "ref/netcore50/es/System.Threading.Tasks.xml", + "ref/netcore50/fr/System.Threading.Tasks.xml", + "ref/netcore50/it/System.Threading.Tasks.xml", + "ref/netcore50/ja/System.Threading.Tasks.xml", + "ref/netcore50/ko/System.Threading.Tasks.xml", + "ref/netcore50/ru/System.Threading.Tasks.xml", + "ref/netcore50/zh-hans/System.Threading.Tasks.xml", + "ref/netcore50/zh-hant/System.Threading.Tasks.xml", + "ref/netstandard1.0/System.Threading.Tasks.dll", + "ref/netstandard1.0/System.Threading.Tasks.xml", + "ref/netstandard1.0/de/System.Threading.Tasks.xml", + "ref/netstandard1.0/es/System.Threading.Tasks.xml", + "ref/netstandard1.0/fr/System.Threading.Tasks.xml", + "ref/netstandard1.0/it/System.Threading.Tasks.xml", + "ref/netstandard1.0/ja/System.Threading.Tasks.xml", + "ref/netstandard1.0/ko/System.Threading.Tasks.xml", + "ref/netstandard1.0/ru/System.Threading.Tasks.xml", + "ref/netstandard1.0/zh-hans/System.Threading.Tasks.xml", + "ref/netstandard1.0/zh-hant/System.Threading.Tasks.xml", + "ref/netstandard1.3/System.Threading.Tasks.dll", + "ref/netstandard1.3/System.Threading.Tasks.xml", + "ref/netstandard1.3/de/System.Threading.Tasks.xml", + "ref/netstandard1.3/es/System.Threading.Tasks.xml", + "ref/netstandard1.3/fr/System.Threading.Tasks.xml", + "ref/netstandard1.3/it/System.Threading.Tasks.xml", + "ref/netstandard1.3/ja/System.Threading.Tasks.xml", + "ref/netstandard1.3/ko/System.Threading.Tasks.xml", + "ref/netstandard1.3/ru/System.Threading.Tasks.xml", + "ref/netstandard1.3/zh-hans/System.Threading.Tasks.xml", + "ref/netstandard1.3/zh-hant/System.Threading.Tasks.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.threading.tasks.4.3.0.nupkg.sha512", + "system.threading.tasks.nuspec" + ] + }, + "System.Threading.Tasks.Extensions/4.3.0": { + "sha512": "npvJkVKl5rKXrtl1Kkm6OhOUaYGEiF9wFbppFRWSMoApKzt2PiPHT2Bb8a5sAWxprvdOAtvaARS9QYMznEUtug==", + "type": "package", + "path": "system.threading.tasks.extensions/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/System.Threading.Tasks.Extensions.dll", + "lib/netstandard1.0/System.Threading.Tasks.Extensions.xml", + "lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.dll", + "lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.xml", + "system.threading.tasks.extensions.4.3.0.nupkg.sha512", + "system.threading.tasks.extensions.nuspec" + ] + }, + "System.Threading.Timer/4.3.0": { + "sha512": "Z6YfyYTCg7lOZjJzBjONJTFKGN9/NIYKSxhU5GRd+DTwHSZyvWp1xuI5aR+dLg+ayyC5Xv57KiY4oJ0tMO89fQ==", + "type": "package", + "path": "system.threading.timer/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net451/_._", + "lib/portable-net451+win81+wpa81/_._", + "lib/win81/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net451/_._", + "ref/netcore50/System.Threading.Timer.dll", + "ref/netcore50/System.Threading.Timer.xml", + "ref/netcore50/de/System.Threading.Timer.xml", + "ref/netcore50/es/System.Threading.Timer.xml", + "ref/netcore50/fr/System.Threading.Timer.xml", + "ref/netcore50/it/System.Threading.Timer.xml", + "ref/netcore50/ja/System.Threading.Timer.xml", + "ref/netcore50/ko/System.Threading.Timer.xml", + "ref/netcore50/ru/System.Threading.Timer.xml", + "ref/netcore50/zh-hans/System.Threading.Timer.xml", + "ref/netcore50/zh-hant/System.Threading.Timer.xml", + "ref/netstandard1.2/System.Threading.Timer.dll", + "ref/netstandard1.2/System.Threading.Timer.xml", + "ref/netstandard1.2/de/System.Threading.Timer.xml", + "ref/netstandard1.2/es/System.Threading.Timer.xml", + "ref/netstandard1.2/fr/System.Threading.Timer.xml", + "ref/netstandard1.2/it/System.Threading.Timer.xml", + "ref/netstandard1.2/ja/System.Threading.Timer.xml", + "ref/netstandard1.2/ko/System.Threading.Timer.xml", + "ref/netstandard1.2/ru/System.Threading.Timer.xml", + "ref/netstandard1.2/zh-hans/System.Threading.Timer.xml", + "ref/netstandard1.2/zh-hant/System.Threading.Timer.xml", + "ref/portable-net451+win81+wpa81/_._", + "ref/win81/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.threading.timer.4.3.0.nupkg.sha512", + "system.threading.timer.nuspec" + ] + }, + "System.Xml.ReaderWriter/4.3.0": { + "sha512": "GrprA+Z0RUXaR4N7/eW71j1rgMnEnEVlgii49GZyAjTH7uliMnrOU3HNFBr6fEDBCJCIdlVNq9hHbaDR621XBA==", + "type": "package", + "path": "system.xml.readerwriter/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net46/System.Xml.ReaderWriter.dll", + "lib/netcore50/System.Xml.ReaderWriter.dll", + "lib/netstandard1.3/System.Xml.ReaderWriter.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net46/System.Xml.ReaderWriter.dll", + "ref/netcore50/System.Xml.ReaderWriter.dll", + "ref/netcore50/System.Xml.ReaderWriter.xml", + "ref/netcore50/de/System.Xml.ReaderWriter.xml", + "ref/netcore50/es/System.Xml.ReaderWriter.xml", + "ref/netcore50/fr/System.Xml.ReaderWriter.xml", + "ref/netcore50/it/System.Xml.ReaderWriter.xml", + "ref/netcore50/ja/System.Xml.ReaderWriter.xml", + "ref/netcore50/ko/System.Xml.ReaderWriter.xml", + "ref/netcore50/ru/System.Xml.ReaderWriter.xml", + "ref/netcore50/zh-hans/System.Xml.ReaderWriter.xml", + "ref/netcore50/zh-hant/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/System.Xml.ReaderWriter.dll", + "ref/netstandard1.0/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/de/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/es/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/fr/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/it/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/ja/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/ko/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/ru/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/zh-hans/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/zh-hant/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/System.Xml.ReaderWriter.dll", + "ref/netstandard1.3/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/de/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/es/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/fr/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/it/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/ja/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/ko/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/ru/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/zh-hans/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/zh-hant/System.Xml.ReaderWriter.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.xml.readerwriter.4.3.0.nupkg.sha512", + "system.xml.readerwriter.nuspec" + ] + }, + "System.Xml.XDocument/4.3.0": { + "sha512": "5zJ0XDxAIg8iy+t4aMnQAu0MqVbqyvfoUVl1yDV61xdo3Vth45oA2FoY4pPkxYAH5f8ixpmTqXeEIya95x0aCQ==", + "type": "package", + "path": "system.xml.xdocument/4.3.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Xml.XDocument.dll", + "lib/netstandard1.3/System.Xml.XDocument.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Xml.XDocument.dll", + "ref/netcore50/System.Xml.XDocument.xml", + "ref/netcore50/de/System.Xml.XDocument.xml", + "ref/netcore50/es/System.Xml.XDocument.xml", + "ref/netcore50/fr/System.Xml.XDocument.xml", + "ref/netcore50/it/System.Xml.XDocument.xml", + "ref/netcore50/ja/System.Xml.XDocument.xml", + "ref/netcore50/ko/System.Xml.XDocument.xml", + "ref/netcore50/ru/System.Xml.XDocument.xml", + "ref/netcore50/zh-hans/System.Xml.XDocument.xml", + "ref/netcore50/zh-hant/System.Xml.XDocument.xml", + "ref/netstandard1.0/System.Xml.XDocument.dll", + "ref/netstandard1.0/System.Xml.XDocument.xml", + "ref/netstandard1.0/de/System.Xml.XDocument.xml", + "ref/netstandard1.0/es/System.Xml.XDocument.xml", + "ref/netstandard1.0/fr/System.Xml.XDocument.xml", + "ref/netstandard1.0/it/System.Xml.XDocument.xml", + "ref/netstandard1.0/ja/System.Xml.XDocument.xml", + "ref/netstandard1.0/ko/System.Xml.XDocument.xml", + "ref/netstandard1.0/ru/System.Xml.XDocument.xml", + "ref/netstandard1.0/zh-hans/System.Xml.XDocument.xml", + "ref/netstandard1.0/zh-hant/System.Xml.XDocument.xml", + "ref/netstandard1.3/System.Xml.XDocument.dll", + "ref/netstandard1.3/System.Xml.XDocument.xml", + "ref/netstandard1.3/de/System.Xml.XDocument.xml", + "ref/netstandard1.3/es/System.Xml.XDocument.xml", + "ref/netstandard1.3/fr/System.Xml.XDocument.xml", + "ref/netstandard1.3/it/System.Xml.XDocument.xml", + "ref/netstandard1.3/ja/System.Xml.XDocument.xml", + "ref/netstandard1.3/ko/System.Xml.XDocument.xml", + "ref/netstandard1.3/ru/System.Xml.XDocument.xml", + "ref/netstandard1.3/zh-hans/System.Xml.XDocument.xml", + "ref/netstandard1.3/zh-hant/System.Xml.XDocument.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.xml.xdocument.4.3.0.nupkg.sha512", + "system.xml.xdocument.nuspec" + ] + }, + "xunit/2.5.3": { + "sha512": "VxYDiWSwrLxOJ3UEN+ZPrBybB0SFShQ1E6PjT65VdoKCJhorgerFznThjSwawRH/WAip73YnucDVsE8WRj/8KQ==", + "type": "package", + "path": "xunit/2.5.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "_content/README.md", + "_content/logo-128-transparent.png", + "xunit.2.5.3.nupkg.sha512", + "xunit.nuspec" + ] + }, + "xunit.abstractions/2.0.3": { + "sha512": "pot1I4YOxlWjIb5jmwvvQNbTrZ3lJQ+jUGkGjWE3hEFM0l5gOnBWS+H3qsex68s5cO52g+44vpGzhAt+42vwKg==", + "type": "package", + "path": "xunit.abstractions/2.0.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net35/xunit.abstractions.dll", + "lib/net35/xunit.abstractions.xml", + "lib/netstandard1.0/xunit.abstractions.dll", + "lib/netstandard1.0/xunit.abstractions.xml", + "lib/netstandard2.0/xunit.abstractions.dll", + "lib/netstandard2.0/xunit.abstractions.xml", + "xunit.abstractions.2.0.3.nupkg.sha512", + "xunit.abstractions.nuspec" + ] + }, + "xunit.analyzers/1.4.0": { + "sha512": "7ljnTJfFjz5zK+Jf0h2dd2QOSO6UmFizXsojv/x4QX7TU5vEgtKZPk9RvpkiuUqg2bddtNZufBoKQalsi7djfA==", + "type": "package", + "path": "xunit.analyzers/1.4.0", + "hasTools": true, + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "_content/README.md", + "_content/logo-128-transparent.png", + "analyzers/dotnet/cs/xunit.analyzers.dll", + "analyzers/dotnet/cs/xunit.analyzers.fixes.dll", + "tools/install.ps1", + "tools/uninstall.ps1", + "xunit.analyzers.1.4.0.nupkg.sha512", + "xunit.analyzers.nuspec" + ] + }, + "xunit.assert/2.5.3": { + "sha512": "MK3HiBckO3vdxEdUxXZyyRPsBNPsC/nz6y1gj/UZIZkjMnsVQyZPU8yxS/3cjTchYcqskt/nqUOS5wmD8JezdQ==", + "type": "package", + "path": "xunit.assert/2.5.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "_content/README.md", + "_content/logo-128-transparent.png", + "lib/netstandard1.1/xunit.assert.dll", + "lib/netstandard1.1/xunit.assert.xml", + "xunit.assert.2.5.3.nupkg.sha512", + "xunit.assert.nuspec" + ] + }, + "xunit.core/2.5.3": { + "sha512": "FE8yEEUkoMLd6kOHDXm/QYfX/dYzwc0c+Q4MQon6VGRwFuy6UVGwK/CFA5LEea+ZBEmcco7AEl2q78VjsA0j/w==", + "type": "package", + "path": "xunit.core/2.5.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "_content/README.md", + "_content/logo-128-transparent.png", + "build/xunit.core.props", + "build/xunit.core.targets", + "buildMultiTargeting/xunit.core.props", + "buildMultiTargeting/xunit.core.targets", + "xunit.core.2.5.3.nupkg.sha512", + "xunit.core.nuspec" + ] + }, + "xunit.extensibility.core/2.5.3": { + "sha512": "IjAQlPeZWXP89pl1EuOG9991GH1qgAL0rQfkmX2UV+PDenbYb7oBnQopL9ujE6YaXxgaQazp7lFjsDyyxD6Mtw==", + "type": "package", + "path": "xunit.extensibility.core/2.5.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "_content/README.md", + "_content/logo-128-transparent.png", + "lib/net452/xunit.core.dll", + "lib/net452/xunit.core.dll.tdnet", + "lib/net452/xunit.core.xml", + "lib/net452/xunit.runner.tdnet.dll", + "lib/net452/xunit.runner.utility.net452.dll", + "lib/netstandard1.1/xunit.core.dll", + "lib/netstandard1.1/xunit.core.xml", + "xunit.extensibility.core.2.5.3.nupkg.sha512", + "xunit.extensibility.core.nuspec" + ] + }, + "xunit.extensibility.execution/2.5.3": { + "sha512": "w9eGCHl+gJj1GzZSf0VTzYPp/gv4fiUDkr+yR7/Wv9/ucO2CHltGg2TnyySLFjzekkjuxVJZUE+tZyDNzryJFw==", + "type": "package", + "path": "xunit.extensibility.execution/2.5.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "_content/README.md", + "_content/logo-128-transparent.png", + "lib/net452/xunit.execution.desktop.dll", + "lib/net452/xunit.execution.desktop.xml", + "lib/netstandard1.1/xunit.execution.dotnet.dll", + "lib/netstandard1.1/xunit.execution.dotnet.xml", + "xunit.extensibility.execution.2.5.3.nupkg.sha512", + "xunit.extensibility.execution.nuspec" + ] + }, + "xunit.runner.visualstudio/2.5.3": { + "sha512": "HFFL6O+QLEOfs555SqHii48ovVa4CqGYanY+B32BjLpPptdE+wEJmCFNXlLHdEOD5LYeayb9EroaUpydGpcybg==", + "type": "package", + "path": "xunit.runner.visualstudio/2.5.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "_content/README.md", + "_content/logo-128-transparent.png", + "build/net462/xunit.abstractions.dll", + "build/net462/xunit.runner.reporters.net452.dll", + "build/net462/xunit.runner.utility.net452.dll", + "build/net462/xunit.runner.visualstudio.props", + "build/net462/xunit.runner.visualstudio.testadapter.dll", + "build/net6.0/xunit.abstractions.dll", + "build/net6.0/xunit.runner.reporters.netcoreapp10.dll", + "build/net6.0/xunit.runner.utility.netcoreapp10.dll", + "build/net6.0/xunit.runner.visualstudio.dotnetcore.testadapter.dll", + "build/net6.0/xunit.runner.visualstudio.props", + "lib/net462/_._", + "lib/net6.0/_._", + "xunit.runner.visualstudio.2.5.3.nupkg.sha512", + "xunit.runner.visualstudio.nuspec" + ] + }, + "IM_API/1.0.0": { + "type": "project", + "path": "../IM_API/IM_API.csproj", + "msbuildProject": "../IM_API/IM_API.csproj" + } + }, + "projectFileDependencyGroups": { + "net8.0": [ + "IM_API >= 1.0.0", + "Microsoft.EntityFrameworkCore.InMemory >= 8.0.22", + "Microsoft.NET.Test.Sdk >= 17.8.0", + "Moq >= 4.20.72", + "coverlet.collector >= 6.0.0", + "xunit >= 2.5.3", + "xunit.runner.visualstudio >= 2.5.3" + ] + }, + "packageFolders": { + "C:\\Users\\nanxun\\.nuget\\packages\\": {}, + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {} + }, + "project": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj", + "projectName": "IMTest", + "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj", + "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", + "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\nanxun\\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" + ], + "originalTargetFrameworks": [ + "net8.0" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "C:\\Program Files\\dotnet\\library-packs": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "projectReferences": { + "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj": { + "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj" + } + } + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + }, + "SdkAnalysisLevel": "9.0.300" + }, + "frameworks": { + "net8.0": { + "targetAlias": "net8.0", + "dependencies": { + "Microsoft.EntityFrameworkCore.InMemory": { + "target": "Package", + "version": "[8.0.22, )" + }, + "Microsoft.NET.Test.Sdk": { + "target": "Package", + "version": "[17.8.0, )" + }, + "Moq": { + "target": "Package", + "version": "[4.20.72, )" + }, + "coverlet.collector": { + "target": "Package", + "version": "[6.0.0, )" + }, + "xunit": { + "target": "Package", + "version": "[2.5.3, )" + }, + "xunit.runner.visualstudio": { + "target": "Package", + "version": "[2.5.3, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" + } + } + } } \ No newline at end of file diff --git a/backend/IMTest/obj/project.nuget.cache b/backend/IMTest/obj/project.nuget.cache index e5a6826..b3383d7 100644 --- a/backend/IMTest/obj/project.nuget.cache +++ b/backend/IMTest/obj/project.nuget.cache @@ -1,176 +1,176 @@ -{ - "version": 2, - "dgSpecHash": "ueA0djhC8vQ=", - "success": true, - "projectFilePath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj", - "expectedPackageFiles": [ - "C:\\Users\\nanxun\\.nuget\\packages\\automapper\\12.0.1\\automapper.12.0.1.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\automapper.extensions.microsoft.dependencyinjection\\12.0.0\\automapper.extensions.microsoft.dependencyinjection.12.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\castle.core\\5.1.1\\castle.core.5.1.1.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\coverlet.collector\\6.0.0\\coverlet.collector.6.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\masstransit\\8.5.5\\masstransit.8.5.5.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\masstransit.abstractions\\8.5.5\\masstransit.abstractions.8.5.5.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\masstransit.rabbitmq\\8.5.5\\masstransit.rabbitmq.8.5.5.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.authentication.abstractions\\2.3.0\\microsoft.aspnetcore.authentication.abstractions.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.authentication.jwtbearer\\8.0.21\\microsoft.aspnetcore.authentication.jwtbearer.8.0.21.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.authorization\\2.3.0\\microsoft.aspnetcore.authorization.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.authorization.policy\\2.3.0\\microsoft.aspnetcore.authorization.policy.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.connections.abstractions\\2.3.0\\microsoft.aspnetcore.connections.abstractions.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.hosting.abstractions\\2.3.0\\microsoft.aspnetcore.hosting.abstractions.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.hosting.server.abstractions\\2.3.0\\microsoft.aspnetcore.hosting.server.abstractions.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http\\2.3.0\\microsoft.aspnetcore.http.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.abstractions\\2.3.0\\microsoft.aspnetcore.http.abstractions.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.connections\\1.2.0\\microsoft.aspnetcore.http.connections.1.2.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.connections.common\\1.2.0\\microsoft.aspnetcore.http.connections.common.1.2.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.extensions\\2.3.0\\microsoft.aspnetcore.http.extensions.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.features\\2.3.0\\microsoft.aspnetcore.http.features.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.routing\\2.3.0\\microsoft.aspnetcore.routing.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.routing.abstractions\\2.3.0\\microsoft.aspnetcore.routing.abstractions.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr\\1.2.0\\microsoft.aspnetcore.signalr.1.2.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.common\\1.2.0\\microsoft.aspnetcore.signalr.common.1.2.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.core\\1.2.0\\microsoft.aspnetcore.signalr.core.1.2.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.protocols.json\\1.2.0\\microsoft.aspnetcore.signalr.protocols.json.1.2.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.websockets\\2.3.0\\microsoft.aspnetcore.websockets.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.webutilities\\2.3.0\\microsoft.aspnetcore.webutilities.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\1.1.0\\microsoft.bcl.asyncinterfaces.1.1.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.codecoverage\\17.8.0\\microsoft.codecoverage.17.8.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.csharp\\4.7.0\\microsoft.csharp.4.7.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.entityframeworkcore\\8.0.22\\microsoft.entityframeworkcore.8.0.22.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\8.0.22\\microsoft.entityframeworkcore.abstractions.8.0.22.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\8.0.22\\microsoft.entityframeworkcore.analyzers.8.0.22.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.entityframeworkcore.inmemory\\8.0.22\\microsoft.entityframeworkcore.inmemory.8.0.22.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.entityframeworkcore.relational\\8.0.13\\microsoft.entityframeworkcore.relational.8.0.13.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.apidescription.server\\6.0.5\\microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\10.0.2\\microsoft.extensions.caching.abstractions.10.0.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.caching.memory\\8.0.1\\microsoft.extensions.caching.memory.8.0.1.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.caching.stackexchangeredis\\10.0.2\\microsoft.extensions.caching.stackexchangeredis.10.0.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\8.0.0\\microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\8.0.1\\microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\10.0.2\\microsoft.extensions.dependencyinjection.abstractions.10.0.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.diagnostics.abstractions\\8.0.1\\microsoft.extensions.diagnostics.abstractions.8.0.1.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.diagnostics.healthchecks\\8.0.0\\microsoft.extensions.diagnostics.healthchecks.8.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.diagnostics.healthchecks.abstractions\\8.0.0\\microsoft.extensions.diagnostics.healthchecks.abstractions.8.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.fileproviders.abstractions\\8.0.0\\microsoft.extensions.fileproviders.abstractions.8.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.hosting.abstractions\\8.0.1\\microsoft.extensions.hosting.abstractions.8.0.1.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.logging\\8.0.1\\microsoft.extensions.logging.8.0.1.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\10.0.2\\microsoft.extensions.logging.abstractions.10.0.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.objectpool\\8.0.11\\microsoft.extensions.objectpool.8.0.11.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.options\\10.0.2\\microsoft.extensions.options.10.0.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.primitives\\10.0.2\\microsoft.extensions.primitives.10.0.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.identitymodel.abstractions\\8.14.0\\microsoft.identitymodel.abstractions.8.14.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.identitymodel.jsonwebtokens\\8.14.0\\microsoft.identitymodel.jsonwebtokens.8.14.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.identitymodel.logging\\8.14.0\\microsoft.identitymodel.logging.8.14.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.identitymodel.protocols\\7.1.2\\microsoft.identitymodel.protocols.7.1.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.identitymodel.protocols.openidconnect\\7.1.2\\microsoft.identitymodel.protocols.openidconnect.7.1.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.identitymodel.tokens\\8.14.0\\microsoft.identitymodel.tokens.8.14.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.net.http.headers\\2.3.0\\microsoft.net.http.headers.2.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.net.test.sdk\\17.8.0\\microsoft.net.test.sdk.17.8.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.netcore.platforms\\1.1.0\\microsoft.netcore.platforms.1.1.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.netcore.targets\\1.1.0\\microsoft.netcore.targets.1.1.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.openapi\\1.6.14\\microsoft.openapi.1.6.14.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.testplatform.objectmodel\\17.8.0\\microsoft.testplatform.objectmodel.17.8.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.testplatform.testhost\\17.8.0\\microsoft.testplatform.testhost.17.8.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.visualstudio.azure.containers.tools.targets\\1.22.1\\microsoft.visualstudio.azure.containers.tools.targets.1.22.1.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.win32.primitives\\4.3.0\\microsoft.win32.primitives.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\moq\\4.20.72\\moq.4.20.72.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\mysqlconnector\\2.3.5\\mysqlconnector.2.3.5.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\netstandard.library\\1.6.1\\netstandard.library.1.6.1.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\newtonsoft.json\\13.0.4\\newtonsoft.json.13.0.4.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\nuget.frameworks\\6.5.0\\nuget.frameworks.6.5.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\pipelines.sockets.unofficial\\2.2.8\\pipelines.sockets.unofficial.2.2.8.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\pomelo.entityframeworkcore.mysql\\8.0.3\\pomelo.entityframeworkcore.mysql.8.0.3.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\rabbitmq.client\\7.1.2\\rabbitmq.client.7.1.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\redlock.net\\2.3.2\\redlock.net.2.3.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.native.system\\4.3.0\\runtime.native.system.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.native.system.io.compression\\4.3.0\\runtime.native.system.io.compression.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.native.system.net.http\\4.3.0\\runtime.native.system.net.http.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.native.system.security.cryptography.apple\\4.3.0\\runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple\\4.3.0\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\stackexchange.redis\\2.9.32\\stackexchange.redis.2.9.32.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\swashbuckle.aspnetcore\\6.6.2\\swashbuckle.aspnetcore.6.6.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\swashbuckle.aspnetcore.swagger\\6.6.2\\swashbuckle.aspnetcore.swagger.6.6.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\swashbuckle.aspnetcore.swaggergen\\6.6.2\\swashbuckle.aspnetcore.swaggergen.6.6.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\swashbuckle.aspnetcore.swaggerui\\6.6.2\\swashbuckle.aspnetcore.swaggerui.6.6.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.appcontext\\4.3.0\\system.appcontext.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.buffers\\4.6.0\\system.buffers.4.6.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.collections\\4.3.0\\system.collections.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.collections.concurrent\\4.3.0\\system.collections.concurrent.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.console\\4.3.0\\system.console.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.debug\\4.3.0\\system.diagnostics.debug.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.diagnosticsource\\10.0.2\\system.diagnostics.diagnosticsource.10.0.2.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.eventlog\\6.0.0\\system.diagnostics.eventlog.6.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.tools\\4.3.0\\system.diagnostics.tools.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.tracing\\4.3.0\\system.diagnostics.tracing.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.globalization\\4.3.0\\system.globalization.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.globalization.calendars\\4.3.0\\system.globalization.calendars.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.globalization.extensions\\4.3.0\\system.globalization.extensions.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.identitymodel.tokens.jwt\\8.14.0\\system.identitymodel.tokens.jwt.8.14.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.io\\4.3.0\\system.io.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.io.compression\\4.3.0\\system.io.compression.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.io.compression.zipfile\\4.3.0\\system.io.compression.zipfile.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.io.filesystem\\4.3.0\\system.io.filesystem.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.io.filesystem.primitives\\4.3.0\\system.io.filesystem.primitives.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.io.pipelines\\8.0.0\\system.io.pipelines.8.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.linq\\4.3.0\\system.linq.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.linq.expressions\\4.3.0\\system.linq.expressions.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.net.http\\4.3.0\\system.net.http.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.net.primitives\\4.3.0\\system.net.primitives.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.net.sockets\\4.3.0\\system.net.sockets.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.net.websockets.websocketprotocol\\5.1.0\\system.net.websockets.websocketprotocol.5.1.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.objectmodel\\4.3.0\\system.objectmodel.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection\\4.3.0\\system.reflection.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.emit\\4.7.0\\system.reflection.emit.4.7.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.emit.ilgeneration\\4.3.0\\system.reflection.emit.ilgeneration.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.emit.lightweight\\4.3.0\\system.reflection.emit.lightweight.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.extensions\\4.3.0\\system.reflection.extensions.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.metadata\\1.6.0\\system.reflection.metadata.1.6.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.primitives\\4.3.0\\system.reflection.primitives.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.typeextensions\\4.3.0\\system.reflection.typeextensions.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.resources.resourcemanager\\4.3.0\\system.resources.resourcemanager.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.runtime\\4.3.0\\system.runtime.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.runtime.extensions\\4.3.0\\system.runtime.extensions.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.runtime.handles\\4.3.0\\system.runtime.handles.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.runtime.interopservices\\4.3.0\\system.runtime.interopservices.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.runtime.interopservices.runtimeinformation\\4.3.0\\system.runtime.interopservices.runtimeinformation.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.runtime.numerics\\4.3.0\\system.runtime.numerics.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.algorithms\\4.3.0\\system.security.cryptography.algorithms.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.cng\\4.3.0\\system.security.cryptography.cng.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.csp\\4.3.0\\system.security.cryptography.csp.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.encoding\\4.3.0\\system.security.cryptography.encoding.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.openssl\\4.3.0\\system.security.cryptography.openssl.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.primitives\\4.3.0\\system.security.cryptography.primitives.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.x509certificates\\4.3.0\\system.security.cryptography.x509certificates.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.text.encoding\\4.3.0\\system.text.encoding.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.text.encoding.extensions\\4.3.0\\system.text.encoding.extensions.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.text.encodings.web\\8.0.0\\system.text.encodings.web.8.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.text.regularexpressions\\4.3.0\\system.text.regularexpressions.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.threading\\4.3.0\\system.threading.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.channels\\8.0.0\\system.threading.channels.8.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.ratelimiting\\8.0.0\\system.threading.ratelimiting.8.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.tasks\\4.3.0\\system.threading.tasks.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.tasks.extensions\\4.3.0\\system.threading.tasks.extensions.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.timer\\4.3.0\\system.threading.timer.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.xml.readerwriter\\4.3.0\\system.xml.readerwriter.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.xml.xdocument\\4.3.0\\system.xml.xdocument.4.3.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\xunit\\2.5.3\\xunit.2.5.3.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\xunit.abstractions\\2.0.3\\xunit.abstractions.2.0.3.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\xunit.analyzers\\1.4.0\\xunit.analyzers.1.4.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\xunit.assert\\2.5.3\\xunit.assert.2.5.3.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\xunit.core\\2.5.3\\xunit.core.2.5.3.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\xunit.extensibility.core\\2.5.3\\xunit.extensibility.core.2.5.3.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\xunit.extensibility.execution\\2.5.3\\xunit.extensibility.execution.2.5.3.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\xunit.runner.visualstudio\\2.5.3\\xunit.runner.visualstudio.2.5.3.nupkg.sha512" - ], - "logs": [] +{ + "version": 2, + "dgSpecHash": "ueA0djhC8vQ=", + "success": true, + "projectFilePath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IMTest\\IMTest.csproj", + "expectedPackageFiles": [ + "C:\\Users\\nanxun\\.nuget\\packages\\automapper\\12.0.1\\automapper.12.0.1.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\automapper.extensions.microsoft.dependencyinjection\\12.0.0\\automapper.extensions.microsoft.dependencyinjection.12.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\castle.core\\5.1.1\\castle.core.5.1.1.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\coverlet.collector\\6.0.0\\coverlet.collector.6.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\masstransit\\8.5.5\\masstransit.8.5.5.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\masstransit.abstractions\\8.5.5\\masstransit.abstractions.8.5.5.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\masstransit.rabbitmq\\8.5.5\\masstransit.rabbitmq.8.5.5.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.authentication.abstractions\\2.3.0\\microsoft.aspnetcore.authentication.abstractions.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.authentication.jwtbearer\\8.0.21\\microsoft.aspnetcore.authentication.jwtbearer.8.0.21.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.authorization\\2.3.0\\microsoft.aspnetcore.authorization.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.authorization.policy\\2.3.0\\microsoft.aspnetcore.authorization.policy.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.connections.abstractions\\2.3.0\\microsoft.aspnetcore.connections.abstractions.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.hosting.abstractions\\2.3.0\\microsoft.aspnetcore.hosting.abstractions.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.hosting.server.abstractions\\2.3.0\\microsoft.aspnetcore.hosting.server.abstractions.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http\\2.3.0\\microsoft.aspnetcore.http.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.abstractions\\2.3.0\\microsoft.aspnetcore.http.abstractions.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.connections\\1.2.0\\microsoft.aspnetcore.http.connections.1.2.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.connections.common\\1.2.0\\microsoft.aspnetcore.http.connections.common.1.2.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.extensions\\2.3.0\\microsoft.aspnetcore.http.extensions.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.features\\2.3.0\\microsoft.aspnetcore.http.features.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.routing\\2.3.0\\microsoft.aspnetcore.routing.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.routing.abstractions\\2.3.0\\microsoft.aspnetcore.routing.abstractions.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr\\1.2.0\\microsoft.aspnetcore.signalr.1.2.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.common\\1.2.0\\microsoft.aspnetcore.signalr.common.1.2.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.core\\1.2.0\\microsoft.aspnetcore.signalr.core.1.2.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.protocols.json\\1.2.0\\microsoft.aspnetcore.signalr.protocols.json.1.2.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.websockets\\2.3.0\\microsoft.aspnetcore.websockets.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.webutilities\\2.3.0\\microsoft.aspnetcore.webutilities.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\1.1.0\\microsoft.bcl.asyncinterfaces.1.1.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.codecoverage\\17.8.0\\microsoft.codecoverage.17.8.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.csharp\\4.7.0\\microsoft.csharp.4.7.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.entityframeworkcore\\8.0.22\\microsoft.entityframeworkcore.8.0.22.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.entityframeworkcore.abstractions\\8.0.22\\microsoft.entityframeworkcore.abstractions.8.0.22.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.entityframeworkcore.analyzers\\8.0.22\\microsoft.entityframeworkcore.analyzers.8.0.22.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.entityframeworkcore.inmemory\\8.0.22\\microsoft.entityframeworkcore.inmemory.8.0.22.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.entityframeworkcore.relational\\8.0.13\\microsoft.entityframeworkcore.relational.8.0.13.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.apidescription.server\\6.0.5\\microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\10.0.2\\microsoft.extensions.caching.abstractions.10.0.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.caching.memory\\8.0.1\\microsoft.extensions.caching.memory.8.0.1.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.caching.stackexchangeredis\\10.0.2\\microsoft.extensions.caching.stackexchangeredis.10.0.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\8.0.0\\microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\8.0.1\\microsoft.extensions.dependencyinjection.8.0.1.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\10.0.2\\microsoft.extensions.dependencyinjection.abstractions.10.0.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.diagnostics.abstractions\\8.0.1\\microsoft.extensions.diagnostics.abstractions.8.0.1.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.diagnostics.healthchecks\\8.0.0\\microsoft.extensions.diagnostics.healthchecks.8.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.diagnostics.healthchecks.abstractions\\8.0.0\\microsoft.extensions.diagnostics.healthchecks.abstractions.8.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.fileproviders.abstractions\\8.0.0\\microsoft.extensions.fileproviders.abstractions.8.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.hosting.abstractions\\8.0.1\\microsoft.extensions.hosting.abstractions.8.0.1.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.logging\\8.0.1\\microsoft.extensions.logging.8.0.1.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\10.0.2\\microsoft.extensions.logging.abstractions.10.0.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.objectpool\\8.0.11\\microsoft.extensions.objectpool.8.0.11.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.options\\10.0.2\\microsoft.extensions.options.10.0.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.primitives\\10.0.2\\microsoft.extensions.primitives.10.0.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.identitymodel.abstractions\\8.14.0\\microsoft.identitymodel.abstractions.8.14.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.identitymodel.jsonwebtokens\\8.14.0\\microsoft.identitymodel.jsonwebtokens.8.14.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.identitymodel.logging\\8.14.0\\microsoft.identitymodel.logging.8.14.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.identitymodel.protocols\\7.1.2\\microsoft.identitymodel.protocols.7.1.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.identitymodel.protocols.openidconnect\\7.1.2\\microsoft.identitymodel.protocols.openidconnect.7.1.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.identitymodel.tokens\\8.14.0\\microsoft.identitymodel.tokens.8.14.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.net.http.headers\\2.3.0\\microsoft.net.http.headers.2.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.net.test.sdk\\17.8.0\\microsoft.net.test.sdk.17.8.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.netcore.platforms\\1.1.0\\microsoft.netcore.platforms.1.1.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.netcore.targets\\1.1.0\\microsoft.netcore.targets.1.1.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.openapi\\1.6.14\\microsoft.openapi.1.6.14.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.testplatform.objectmodel\\17.8.0\\microsoft.testplatform.objectmodel.17.8.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.testplatform.testhost\\17.8.0\\microsoft.testplatform.testhost.17.8.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.visualstudio.azure.containers.tools.targets\\1.22.1\\microsoft.visualstudio.azure.containers.tools.targets.1.22.1.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.win32.primitives\\4.3.0\\microsoft.win32.primitives.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\moq\\4.20.72\\moq.4.20.72.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\mysqlconnector\\2.3.5\\mysqlconnector.2.3.5.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\netstandard.library\\1.6.1\\netstandard.library.1.6.1.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\newtonsoft.json\\13.0.4\\newtonsoft.json.13.0.4.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\nuget.frameworks\\6.5.0\\nuget.frameworks.6.5.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\pipelines.sockets.unofficial\\2.2.8\\pipelines.sockets.unofficial.2.2.8.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\pomelo.entityframeworkcore.mysql\\8.0.3\\pomelo.entityframeworkcore.mysql.8.0.3.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\rabbitmq.client\\7.1.2\\rabbitmq.client.7.1.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\redlock.net\\2.3.2\\redlock.net.2.3.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.native.system\\4.3.0\\runtime.native.system.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.native.system.io.compression\\4.3.0\\runtime.native.system.io.compression.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.native.system.net.http\\4.3.0\\runtime.native.system.net.http.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.native.system.security.cryptography.apple\\4.3.0\\runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple\\4.3.0\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl\\4.3.0\\runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\stackexchange.redis\\2.9.32\\stackexchange.redis.2.9.32.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\swashbuckle.aspnetcore\\6.6.2\\swashbuckle.aspnetcore.6.6.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\swashbuckle.aspnetcore.swagger\\6.6.2\\swashbuckle.aspnetcore.swagger.6.6.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\swashbuckle.aspnetcore.swaggergen\\6.6.2\\swashbuckle.aspnetcore.swaggergen.6.6.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\swashbuckle.aspnetcore.swaggerui\\6.6.2\\swashbuckle.aspnetcore.swaggerui.6.6.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.appcontext\\4.3.0\\system.appcontext.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.buffers\\4.6.0\\system.buffers.4.6.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.collections\\4.3.0\\system.collections.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.collections.concurrent\\4.3.0\\system.collections.concurrent.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.console\\4.3.0\\system.console.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.debug\\4.3.0\\system.diagnostics.debug.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.diagnosticsource\\10.0.2\\system.diagnostics.diagnosticsource.10.0.2.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.eventlog\\6.0.0\\system.diagnostics.eventlog.6.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.tools\\4.3.0\\system.diagnostics.tools.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.tracing\\4.3.0\\system.diagnostics.tracing.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.globalization\\4.3.0\\system.globalization.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.globalization.calendars\\4.3.0\\system.globalization.calendars.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.globalization.extensions\\4.3.0\\system.globalization.extensions.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.identitymodel.tokens.jwt\\8.14.0\\system.identitymodel.tokens.jwt.8.14.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.io\\4.3.0\\system.io.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.io.compression\\4.3.0\\system.io.compression.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.io.compression.zipfile\\4.3.0\\system.io.compression.zipfile.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.io.filesystem\\4.3.0\\system.io.filesystem.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.io.filesystem.primitives\\4.3.0\\system.io.filesystem.primitives.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.io.pipelines\\8.0.0\\system.io.pipelines.8.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.linq\\4.3.0\\system.linq.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.linq.expressions\\4.3.0\\system.linq.expressions.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.net.http\\4.3.0\\system.net.http.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.net.primitives\\4.3.0\\system.net.primitives.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.net.sockets\\4.3.0\\system.net.sockets.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.net.websockets.websocketprotocol\\5.1.0\\system.net.websockets.websocketprotocol.5.1.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.objectmodel\\4.3.0\\system.objectmodel.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection\\4.3.0\\system.reflection.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.emit\\4.7.0\\system.reflection.emit.4.7.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.emit.ilgeneration\\4.3.0\\system.reflection.emit.ilgeneration.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.emit.lightweight\\4.3.0\\system.reflection.emit.lightweight.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.extensions\\4.3.0\\system.reflection.extensions.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.metadata\\1.6.0\\system.reflection.metadata.1.6.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.primitives\\4.3.0\\system.reflection.primitives.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.reflection.typeextensions\\4.3.0\\system.reflection.typeextensions.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.resources.resourcemanager\\4.3.0\\system.resources.resourcemanager.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.runtime\\4.3.0\\system.runtime.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.runtime.extensions\\4.3.0\\system.runtime.extensions.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.runtime.handles\\4.3.0\\system.runtime.handles.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.runtime.interopservices\\4.3.0\\system.runtime.interopservices.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.runtime.interopservices.runtimeinformation\\4.3.0\\system.runtime.interopservices.runtimeinformation.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.runtime.numerics\\4.3.0\\system.runtime.numerics.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.algorithms\\4.3.0\\system.security.cryptography.algorithms.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.cng\\4.3.0\\system.security.cryptography.cng.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.csp\\4.3.0\\system.security.cryptography.csp.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.encoding\\4.3.0\\system.security.cryptography.encoding.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.openssl\\4.3.0\\system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.primitives\\4.3.0\\system.security.cryptography.primitives.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.security.cryptography.x509certificates\\4.3.0\\system.security.cryptography.x509certificates.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.text.encoding\\4.3.0\\system.text.encoding.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.text.encoding.extensions\\4.3.0\\system.text.encoding.extensions.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.text.encodings.web\\8.0.0\\system.text.encodings.web.8.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.text.regularexpressions\\4.3.0\\system.text.regularexpressions.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.threading\\4.3.0\\system.threading.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.channels\\8.0.0\\system.threading.channels.8.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.ratelimiting\\8.0.0\\system.threading.ratelimiting.8.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.tasks\\4.3.0\\system.threading.tasks.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.tasks.extensions\\4.3.0\\system.threading.tasks.extensions.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.timer\\4.3.0\\system.threading.timer.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.xml.readerwriter\\4.3.0\\system.xml.readerwriter.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.xml.xdocument\\4.3.0\\system.xml.xdocument.4.3.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\xunit\\2.5.3\\xunit.2.5.3.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\xunit.abstractions\\2.0.3\\xunit.abstractions.2.0.3.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\xunit.analyzers\\1.4.0\\xunit.analyzers.1.4.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\xunit.assert\\2.5.3\\xunit.assert.2.5.3.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\xunit.core\\2.5.3\\xunit.core.2.5.3.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\xunit.extensibility.core\\2.5.3\\xunit.extensibility.core.2.5.3.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\xunit.extensibility.execution\\2.5.3\\xunit.extensibility.execution.2.5.3.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\xunit.runner.visualstudio\\2.5.3\\xunit.runner.visualstudio.2.5.3.nupkg.sha512" + ], + "logs": [] } \ No newline at end of file diff --git a/backend/IM_API/.dockerignore b/backend/IM_API/.dockerignore index fe1152b..4d72b4f 100644 --- a/backend/IM_API/.dockerignore +++ b/backend/IM_API/.dockerignore @@ -1,30 +1,30 @@ -**/.classpath -**/.dockerignore -**/.env -**/.git -**/.gitignore -**/.project -**/.settings -**/.toolstarget -**/.vs -**/.vscode -**/*.*proj.user -**/*.dbmdl -**/*.jfm -**/azds.yaml -**/bin -**/charts -**/docker-compose* -**/Dockerfile* -**/node_modules -**/npm-debug.log -**/obj -**/secrets.dev.yaml -**/values.dev.yaml -LICENSE -README.md -!**/.gitignore -!.git/HEAD -!.git/config -!.git/packed-refs +**/.classpath +**/.dockerignore +**/.env +**/.git +**/.gitignore +**/.project +**/.settings +**/.toolstarget +**/.vs +**/.vscode +**/*.*proj.user +**/*.dbmdl +**/*.jfm +**/azds.yaml +**/bin +**/charts +**/docker-compose* +**/Dockerfile* +**/node_modules +**/npm-debug.log +**/obj +**/secrets.dev.yaml +**/values.dev.yaml +LICENSE +README.md +!**/.gitignore +!.git/HEAD +!.git/config +!.git/packed-refs !.git/refs/heads/** \ No newline at end of file diff --git a/backend/IM_API/.gitignore b/backend/IM_API/.gitignore index 3e16852..0e6ce67 100644 --- a/backend/IM_API/.gitignore +++ b/backend/IM_API/.gitignore @@ -1,3 +1,3 @@ -bin/ -obj/ +bin/ +obj/ .vs/ \ No newline at end of file diff --git a/backend/IM_API/Aggregate/FriendRequestAggregate.cs b/backend/IM_API/Aggregate/FriendRequestAggregate.cs index a5bfb43..bd48d2e 100644 --- a/backend/IM_API/Aggregate/FriendRequestAggregate.cs +++ b/backend/IM_API/Aggregate/FriendRequestAggregate.cs @@ -1,20 +1,20 @@ -using IM_API.Models; - -namespace IM_API.Aggregate -{ - public class FriendRequestAggregate - { - public Friend Friend { get; private set; } - public FriendRequest FriendRequest { get; private set; } - public FriendRequestAggregate() { } - public FriendRequestAggregate(Friend friend,FriendRequest friendRequest) - { - Friend = friend; - FriendRequest = friendRequest; - } - public void Accept(string? remarkName = null) - { - - } - } -} +using IM_API.Models; + +namespace IM_API.Aggregate +{ + public class FriendRequestAggregate + { + public Friend Friend { get; private set; } + public FriendRequest FriendRequest { get; private set; } + public FriendRequestAggregate() { } + public FriendRequestAggregate(Friend friend,FriendRequest friendRequest) + { + Friend = friend; + FriendRequest = friendRequest; + } + public void Accept(string? remarkName = null) + { + + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/FriendAddHandler/FriendAddConversationHandler.cs b/backend/IM_API/Application/EventHandlers/FriendAddHandler/FriendAddConversationHandler.cs index e621e48..8bc260a 100644 --- a/backend/IM_API/Application/EventHandlers/FriendAddHandler/FriendAddConversationHandler.cs +++ b/backend/IM_API/Application/EventHandlers/FriendAddHandler/FriendAddConversationHandler.cs @@ -1,23 +1,23 @@ -using IM_API.Domain.Events; -using IM_API.Interface.Services; -using MassTransit; - -namespace IM_API.Application.EventHandlers.FriendAddHandler -{ - public class FriendAddConversationHandler : IConsumer - { - private readonly IConversationService _cService; - public FriendAddConversationHandler(IConversationService cService) - { - _cService = cService; - } - - public async Task Consume(ConsumeContext context) - { - var @event = context.Message; - await _cService.MakeConversationAsync(@event.RequestUserId, @event.ResponseUserId, Models.ChatType.PRIVATE); - await _cService.MakeConversationAsync(@event.ResponseUserId, @event.RequestUserId, Models.ChatType.PRIVATE); - - } - } -} +using IM_API.Domain.Events; +using IM_API.Interface.Services; +using MassTransit; + +namespace IM_API.Application.EventHandlers.FriendAddHandler +{ + public class FriendAddConversationHandler : IConsumer + { + private readonly IConversationService _cService; + public FriendAddConversationHandler(IConversationService cService) + { + _cService = cService; + } + + public async Task Consume(ConsumeContext context) + { + var @event = context.Message; + await _cService.MakeConversationAsync(@event.RequestUserId, @event.ResponseUserId, Models.ChatType.PRIVATE); + await _cService.MakeConversationAsync(@event.ResponseUserId, @event.RequestUserId, Models.ChatType.PRIVATE); + + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/FriendAddHandler/FriendAddDBHandler.cs b/backend/IM_API/Application/EventHandlers/FriendAddHandler/FriendAddDBHandler.cs index 052cdd5..403990b 100644 --- a/backend/IM_API/Application/EventHandlers/FriendAddHandler/FriendAddDBHandler.cs +++ b/backend/IM_API/Application/EventHandlers/FriendAddHandler/FriendAddDBHandler.cs @@ -1,29 +1,29 @@ -using IM_API.Domain.Events; -using IM_API.Interface.Services; -using MassTransit; - -namespace IM_API.Application.EventHandlers.FriendAddHandler -{ - public class FriendAddDBHandler : IConsumer - { - private readonly IFriendSerivce _friendService; - private readonly ILogger _logger; - public FriendAddDBHandler(IFriendSerivce friendService, ILogger logger) - { - _friendService = friendService; - _logger = logger; - } - - public async Task Consume(ConsumeContext context) - { - var @event = context.Message; - - //为请求发起人添加好友记录 - await _friendService.MakeFriendshipAsync( - @event.RequestUserId, @event.ResponseUserId, @event.RequestInfo.RemarkName); - //为接收人添加好友记录 - await _friendService.MakeFriendshipAsync( - @event.ResponseUserId, @event.RequestUserId, @event.requestUserRemarkname); - } - } -} +using IM_API.Domain.Events; +using IM_API.Interface.Services; +using MassTransit; + +namespace IM_API.Application.EventHandlers.FriendAddHandler +{ + public class FriendAddDBHandler : IConsumer + { + private readonly IFriendSerivce _friendService; + private readonly ILogger _logger; + public FriendAddDBHandler(IFriendSerivce friendService, ILogger logger) + { + _friendService = friendService; + _logger = logger; + } + + public async Task Consume(ConsumeContext context) + { + var @event = context.Message; + + //为请求发起人添加好友记录 + await _friendService.MakeFriendshipAsync( + @event.RequestUserId, @event.ResponseUserId, @event.RequestInfo.RemarkName); + //为接收人添加好友记录 + await _friendService.MakeFriendshipAsync( + @event.ResponseUserId, @event.RequestUserId, @event.requestUserRemarkname); + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/FriendAddHandler/FriendAddSignalRHandler.cs b/backend/IM_API/Application/EventHandlers/FriendAddHandler/FriendAddSignalRHandler.cs index e692035..77e1ca8 100644 --- a/backend/IM_API/Application/EventHandlers/FriendAddHandler/FriendAddSignalRHandler.cs +++ b/backend/IM_API/Application/EventHandlers/FriendAddHandler/FriendAddSignalRHandler.cs @@ -1,37 +1,37 @@ -using IM_API.Domain.Events; -using IM_API.Dtos; -using IM_API.Hubs; -using IM_API.Interface.Services; -using IM_API.Models; -using MassTransit; -using Microsoft.AspNetCore.SignalR; - -namespace IM_API.Application.EventHandlers.FriendAddHandler -{ - public class FriendAddSignalRHandler : IConsumer - { - private readonly IHubContext _chathub; - public FriendAddSignalRHandler(IHubContext chathub) - { - _chathub = chathub; - } - - public async Task Consume(ConsumeContext context) - { - var @event = context.Message; - var usersList = new List { - @event.RequestUserId.ToString(), @event.ResponseUserId.ToString() - }; - var res = new HubResponse("Event", new MessageBaseDto() - { - ChatType = ChatType.PRIVATE, - Content = "您有新的好友关系已添加", - //MsgId = @event.EventId.ToString(), - ReceiverId = @event.ResponseUserId, - SenderId = @event.RequestUserId, - TimeStamp = DateTime.Now - }); - await _chathub.Clients.Users(usersList).SendAsync("ReceiveMessage", res); - } - } -} +using IM_API.Domain.Events; +using IM_API.Dtos; +using IM_API.Hubs; +using IM_API.Interface.Services; +using IM_API.Models; +using MassTransit; +using Microsoft.AspNetCore.SignalR; + +namespace IM_API.Application.EventHandlers.FriendAddHandler +{ + public class FriendAddSignalRHandler : IConsumer + { + private readonly IHubContext _chathub; + public FriendAddSignalRHandler(IHubContext chathub) + { + _chathub = chathub; + } + + public async Task Consume(ConsumeContext context) + { + var @event = context.Message; + var usersList = new List { + @event.RequestUserId.ToString(), @event.ResponseUserId.ToString() + }; + var res = new HubResponse("Event", new MessageBaseDto() + { + ChatType = ChatType.PRIVATE, + Content = "您有新的好友关系已添加", + //MsgId = @event.EventId.ToString(), + ReceiverId = @event.ResponseUserId, + SenderId = @event.RequestUserId, + TimeStamp = DateTime.Now + }); + await _chathub.Clients.Users(usersList).SendAsync("ReceiveMessage", res); + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/GroupInviteActionUpdateHandler/RequestDbHandler.cs b/backend/IM_API/Application/EventHandlers/GroupInviteActionUpdateHandler/RequestDbHandler.cs index c5c7620..1268419 100644 --- a/backend/IM_API/Application/EventHandlers/GroupInviteActionUpdateHandler/RequestDbHandler.cs +++ b/backend/IM_API/Application/EventHandlers/GroupInviteActionUpdateHandler/RequestDbHandler.cs @@ -1,24 +1,24 @@ -using IM_API.Domain.Events; -using IM_API.Interface.Services; -using MassTransit; - -namespace IM_API.Application.EventHandlers.GroupInviteActionUpdateHandler -{ - public class RequestDbHandler : IConsumer - { - private readonly IGroupService _groupService; - public RequestDbHandler(IGroupService groupService) - { - _groupService = groupService; - } - - public async Task Consume(ConsumeContext context) - { - var @event = context.Message; - if(@event.Action == Models.GroupInviteState.Passed) - { - await _groupService.MakeGroupRequestAsync(@event.UserId, @event.InviteUserId,@event.GroupId); - } - } - } -} +using IM_API.Domain.Events; +using IM_API.Interface.Services; +using MassTransit; + +namespace IM_API.Application.EventHandlers.GroupInviteActionUpdateHandler +{ + public class RequestDbHandler : IConsumer + { + private readonly IGroupService _groupService; + public RequestDbHandler(IGroupService groupService) + { + _groupService = groupService; + } + + public async Task Consume(ConsumeContext context) + { + var @event = context.Message; + if(@event.Action == Models.GroupInviteState.Passed) + { + await _groupService.MakeGroupRequestAsync(@event.UserId, @event.InviteUserId,@event.GroupId); + } + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/GroupInviteActionUpdateHandler/SignalRHandler.cs b/backend/IM_API/Application/EventHandlers/GroupInviteActionUpdateHandler/SignalRHandler.cs index 7c09dc1..a934a7b 100644 --- a/backend/IM_API/Application/EventHandlers/GroupInviteActionUpdateHandler/SignalRHandler.cs +++ b/backend/IM_API/Application/EventHandlers/GroupInviteActionUpdateHandler/SignalRHandler.cs @@ -1,34 +1,34 @@ -using IM_API.Domain.Events; -using IM_API.Dtos; -using IM_API.Hubs; -using IM_API.VOs.Group; -using MassTransit; -using Microsoft.AspNetCore.SignalR; - -namespace IM_API.Application.EventHandlers.GroupInviteActionUpdateHandler -{ - public class SignalRHandler : IConsumer - { - private IHubContext _hub; - public SignalRHandler(IHubContext hub) - { - _hub = hub; - } - - public async Task Consume(ConsumeContext context) - { - var @event = context.Message; - var msg = new HubResponse("Event", new GroupInviteActionUpdateVo - { - Action = @event.Action, - GroupId = @event.GroupId, - InvitedUserId = @event.UserId, - InviteUserId = @event.InviteUserId, - InviteId = @event.InviteId - }); - - await _hub.Clients.Users([@event.UserId.ToString(), @event.InviteUserId.ToString()]) - .SendAsync("ReceiveMessage",msg); - } - } -} +using IM_API.Domain.Events; +using IM_API.Dtos; +using IM_API.Hubs; +using IM_API.VOs.Group; +using MassTransit; +using Microsoft.AspNetCore.SignalR; + +namespace IM_API.Application.EventHandlers.GroupInviteActionUpdateHandler +{ + public class SignalRHandler : IConsumer + { + private IHubContext _hub; + public SignalRHandler(IHubContext hub) + { + _hub = hub; + } + + public async Task Consume(ConsumeContext context) + { + var @event = context.Message; + var msg = new HubResponse("Event", new GroupInviteActionUpdateVo + { + Action = @event.Action, + GroupId = @event.GroupId, + InvitedUserId = @event.UserId, + InviteUserId = @event.InviteUserId, + InviteId = @event.InviteId + }); + + await _hub.Clients.Users([@event.UserId.ToString(), @event.InviteUserId.ToString()]) + .SendAsync("ReceiveMessage",msg); + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/GroupInviteHandler/GroupInviteSignalRHandler.cs b/backend/IM_API/Application/EventHandlers/GroupInviteHandler/GroupInviteSignalRHandler.cs index fc49076..f7c2e2f 100644 --- a/backend/IM_API/Application/EventHandlers/GroupInviteHandler/GroupInviteSignalRHandler.cs +++ b/backend/IM_API/Application/EventHandlers/GroupInviteHandler/GroupInviteSignalRHandler.cs @@ -1,26 +1,26 @@ -using IM_API.Domain.Events; -using IM_API.Dtos; -using IM_API.Hubs; -using IM_API.VOs.Group; -using MassTransit; -using Microsoft.AspNetCore.SignalR; - -namespace IM_API.Application.EventHandlers.GroupInviteHandler -{ - public class GroupInviteSignalRHandler : IConsumer - { - private readonly IHubContext _hub; - public GroupInviteSignalRHandler(IHubContext hub) - { - _hub = hub; - } - - public async Task Consume(ConsumeContext context) - { - var @event = context.Message; - var list = @event.Ids.Select(id => id.ToString()).ToArray(); - var msg = new HubResponse("Event", new GroupInviteVo { GroupId = @event.GroupId, UserId = @event.UserId }); - await _hub.Clients.Users(list).SendAsync("ReceiveMessage", msg); - } - } -} +using IM_API.Domain.Events; +using IM_API.Dtos; +using IM_API.Hubs; +using IM_API.VOs.Group; +using MassTransit; +using Microsoft.AspNetCore.SignalR; + +namespace IM_API.Application.EventHandlers.GroupInviteHandler +{ + public class GroupInviteSignalRHandler : IConsumer + { + private readonly IHubContext _hub; + public GroupInviteSignalRHandler(IHubContext hub) + { + _hub = hub; + } + + public async Task Consume(ConsumeContext context) + { + var @event = context.Message; + var list = @event.Ids.Select(id => id.ToString()).ToArray(); + var msg = new HubResponse("Event", new GroupInviteVo { GroupId = @event.GroupId, UserId = @event.UserId }); + await _hub.Clients.Users(list).SendAsync("ReceiveMessage", msg); + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/GroupJoinHandler/GroupJoinConversationHandler.cs b/backend/IM_API/Application/EventHandlers/GroupJoinHandler/GroupJoinConversationHandler.cs index 6992475..4e928f2 100644 --- a/backend/IM_API/Application/EventHandlers/GroupJoinHandler/GroupJoinConversationHandler.cs +++ b/backend/IM_API/Application/EventHandlers/GroupJoinHandler/GroupJoinConversationHandler.cs @@ -1,21 +1,21 @@ -using IM_API.Domain.Events; -using IM_API.Interface.Services; -using MassTransit; - -namespace IM_API.Application.EventHandlers.GroupJoinHandler -{ - public class GroupJoinConversationHandler : IConsumer - { - private IConversationService _conversationService; - public GroupJoinConversationHandler(IConversationService conversationService) - { - _conversationService = conversationService; - } - - public async Task Consume(ConsumeContext context) - { - var @event = context.Message; - await _conversationService.MakeConversationAsync(@event.UserId, @event.GroupId, Models.ChatType.GROUP); - } - } -} +using IM_API.Domain.Events; +using IM_API.Interface.Services; +using MassTransit; + +namespace IM_API.Application.EventHandlers.GroupJoinHandler +{ + public class GroupJoinConversationHandler : IConsumer + { + private IConversationService _conversationService; + public GroupJoinConversationHandler(IConversationService conversationService) + { + _conversationService = conversationService; + } + + public async Task Consume(ConsumeContext context) + { + var @event = context.Message; + await _conversationService.MakeConversationAsync(@event.UserId, @event.GroupId, Models.ChatType.GROUP); + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/GroupJoinHandler/GroupJoinDbHandler.cs b/backend/IM_API/Application/EventHandlers/GroupJoinHandler/GroupJoinDbHandler.cs index a4ba4d2..7bfaccb 100644 --- a/backend/IM_API/Application/EventHandlers/GroupJoinHandler/GroupJoinDbHandler.cs +++ b/backend/IM_API/Application/EventHandlers/GroupJoinHandler/GroupJoinDbHandler.cs @@ -1,22 +1,22 @@ -using IM_API.Domain.Events; -using IM_API.Interface.Services; -using MassTransit; - -namespace IM_API.Application.EventHandlers.GroupJoinHandler -{ - public class GroupJoinDbHandler : IConsumer - { - private readonly IGroupService _groupService; - public GroupJoinDbHandler(IGroupService groupService) - { - _groupService = groupService; - } - - public async Task Consume(ConsumeContext context) - { - await _groupService.MakeGroupMemberAsync(context.Message.UserId, - context.Message.GroupId, context.Message.IsCreated ? - Models.GroupMemberRole.Master : Models.GroupMemberRole.Normal); - } - } -} +using IM_API.Domain.Events; +using IM_API.Interface.Services; +using MassTransit; + +namespace IM_API.Application.EventHandlers.GroupJoinHandler +{ + public class GroupJoinDbHandler : IConsumer + { + private readonly IGroupService _groupService; + public GroupJoinDbHandler(IGroupService groupService) + { + _groupService = groupService; + } + + public async Task Consume(ConsumeContext context) + { + await _groupService.MakeGroupMemberAsync(context.Message.UserId, + context.Message.GroupId, context.Message.IsCreated ? + Models.GroupMemberRole.Master : Models.GroupMemberRole.Normal); + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/GroupJoinHandler/GroupJoinSignalrHandler.cs b/backend/IM_API/Application/EventHandlers/GroupJoinHandler/GroupJoinSignalrHandler.cs index deb7493..05a772d 100644 --- a/backend/IM_API/Application/EventHandlers/GroupJoinHandler/GroupJoinSignalrHandler.cs +++ b/backend/IM_API/Application/EventHandlers/GroupJoinHandler/GroupJoinSignalrHandler.cs @@ -1,45 +1,45 @@ -using IM_API.Domain.Events; -using IM_API.Dtos; -using IM_API.Hubs; -using IM_API.Tools; -using IM_API.VOs.Group; -using MassTransit; -using Microsoft.AspNetCore.SignalR; -using StackExchange.Redis; - -namespace IM_API.Application.EventHandlers.GroupJoinHandler -{ - public class GroupJoinSignalrHandler : IConsumer - { - private readonly IHubContext _hub; - private readonly IDatabase _redis; - public GroupJoinSignalrHandler(IHubContext hub, IConnectionMultiplexer connectionMultiplexer) - { - _hub = hub; - _redis = connectionMultiplexer.GetDatabase(); - } - - public async Task Consume(ConsumeContext context) - { - var @event = context.Message; - string stramKey = StreamKeyBuilder.Group(@event.GroupId); - //将用户加入群组通知 - var list = await _redis.SetMembersAsync(RedisKeys.GetConnectionIdKey(@event.UserId.ToString())); - if(list != null && list.Length > 0) - { - var tasks = list.Select(connectionId => - _hub.Groups.AddToGroupAsync(connectionId!, stramKey) - ).ToList(); - - await Task.WhenAll(tasks); - } - //发送通知给群成员 - var msg = new GroupJoinVo - { - GroupId = @event.GroupId, - UserId = @event.UserId - }; - await _hub.Clients.Group(stramKey).SendAsync("ReceiveMessage",new HubResponse("Event",msg)); - } - } -} +using IM_API.Domain.Events; +using IM_API.Dtos; +using IM_API.Hubs; +using IM_API.Tools; +using IM_API.VOs.Group; +using MassTransit; +using Microsoft.AspNetCore.SignalR; +using StackExchange.Redis; + +namespace IM_API.Application.EventHandlers.GroupJoinHandler +{ + public class GroupJoinSignalrHandler : IConsumer + { + private readonly IHubContext _hub; + private readonly IDatabase _redis; + public GroupJoinSignalrHandler(IHubContext hub, IConnectionMultiplexer connectionMultiplexer) + { + _hub = hub; + _redis = connectionMultiplexer.GetDatabase(); + } + + public async Task Consume(ConsumeContext context) + { + var @event = context.Message; + string stramKey = StreamKeyBuilder.Group(@event.GroupId); + //将用户加入群组通知 + var list = await _redis.SetMembersAsync(RedisKeys.GetConnectionIdKey(@event.UserId.ToString())); + if(list != null && list.Length > 0) + { + var tasks = list.Select(connectionId => + _hub.Groups.AddToGroupAsync(connectionId!, stramKey) + ).ToList(); + + await Task.WhenAll(tasks); + } + //发送通知给群成员 + var msg = new GroupJoinVo + { + GroupId = @event.GroupId, + UserId = @event.UserId + }; + await _hub.Clients.Group(stramKey).SendAsync("ReceiveMessage",new HubResponse("Event",msg)); + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/GroupRequestHandler/GroupRequestSignalRHandler.cs b/backend/IM_API/Application/EventHandlers/GroupRequestHandler/GroupRequestSignalRHandler.cs index 69f0351..29d0454 100644 --- a/backend/IM_API/Application/EventHandlers/GroupRequestHandler/GroupRequestSignalRHandler.cs +++ b/backend/IM_API/Application/EventHandlers/GroupRequestHandler/GroupRequestSignalRHandler.cs @@ -1,17 +1,17 @@ -using IM_API.Domain.Events; -using IM_API.Hubs; -using MassTransit; -using Microsoft.AspNetCore.SignalR; - -namespace IM_API.Application.EventHandlers.GroupRequestHandler -{ - public class GroupRequestSignalRHandler(IHubContext hubContext) : IConsumer - { - private readonly IHubContext _hub = hubContext; - - public async Task Consume(ConsumeContext context) - { - - } - } -} +using IM_API.Domain.Events; +using IM_API.Hubs; +using MassTransit; +using Microsoft.AspNetCore.SignalR; + +namespace IM_API.Application.EventHandlers.GroupRequestHandler +{ + public class GroupRequestSignalRHandler(IHubContext hubContext) : IConsumer + { + private readonly IHubContext _hub = hubContext; + + public async Task Consume(ConsumeContext context) + { + + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/GroupRequestHandler/NextEventHandler.cs b/backend/IM_API/Application/EventHandlers/GroupRequestHandler/NextEventHandler.cs index 8e19129..bd9ee8f 100644 --- a/backend/IM_API/Application/EventHandlers/GroupRequestHandler/NextEventHandler.cs +++ b/backend/IM_API/Application/EventHandlers/GroupRequestHandler/NextEventHandler.cs @@ -1,31 +1,31 @@ -using IM_API.Domain.Events; -using MassTransit; - -namespace IM_API.Application.EventHandlers.GroupRequestHandler -{ - public class NextEventHandler : IConsumer - { - private readonly IPublishEndpoint _endpoint; - public NextEventHandler(IPublishEndpoint endpoint) - { - _endpoint = endpoint; - } - - public async Task Consume(ConsumeContext context) - { - var @event = context.Message; - if(@event.Action == Models.GroupRequestState.Passed) - { - await _endpoint.Publish(new GroupJoinEvent - { - AggregateId = @event.AggregateId, - OccurredAt = @event.OccurredAt, - EventId = Guid.NewGuid(), - GroupId = @event.GroupId, - OperatorId = @event.OperatorId, - UserId = @event.UserId - }); - } - } - } -} +using IM_API.Domain.Events; +using MassTransit; + +namespace IM_API.Application.EventHandlers.GroupRequestHandler +{ + public class NextEventHandler : IConsumer + { + private readonly IPublishEndpoint _endpoint; + public NextEventHandler(IPublishEndpoint endpoint) + { + _endpoint = endpoint; + } + + public async Task Consume(ConsumeContext context) + { + var @event = context.Message; + if(@event.Action == Models.GroupRequestState.Passed) + { + await _endpoint.Publish(new GroupJoinEvent + { + AggregateId = @event.AggregateId, + OccurredAt = @event.OccurredAt, + EventId = Guid.NewGuid(), + GroupId = @event.GroupId, + OperatorId = @event.OperatorId, + UserId = @event.UserId + }); + } + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/GroupRequestUpdateHandler/NextEventHandler.cs b/backend/IM_API/Application/EventHandlers/GroupRequestUpdateHandler/NextEventHandler.cs index 4bbcb8e..6dc49e7 100644 --- a/backend/IM_API/Application/EventHandlers/GroupRequestUpdateHandler/NextEventHandler.cs +++ b/backend/IM_API/Application/EventHandlers/GroupRequestUpdateHandler/NextEventHandler.cs @@ -1,31 +1,31 @@ -using IM_API.Domain.Events; -using MassTransit; - -namespace IM_API.Application.EventHandlers.GroupRequestUpdateHandler -{ - public class NextEventHandler : IConsumer - { - private readonly IPublishEndpoint _endpoint; - public NextEventHandler(IPublishEndpoint endpoint) - { - _endpoint = endpoint; - } - - public async Task Consume(ConsumeContext context) - { - var @event = context.Message; - if(@event.Action == Models.GroupRequestState.Passed) - { - await _endpoint.Publish(new GroupJoinEvent - { - AggregateId = @event.AggregateId, - OccurredAt = @event.OccurredAt, - EventId = Guid.NewGuid(), - GroupId = @event.GroupId, - OperatorId = @event.OperatorId, - UserId = @event.UserId - }); - } - } - } -} +using IM_API.Domain.Events; +using MassTransit; + +namespace IM_API.Application.EventHandlers.GroupRequestUpdateHandler +{ + public class NextEventHandler : IConsumer + { + private readonly IPublishEndpoint _endpoint; + public NextEventHandler(IPublishEndpoint endpoint) + { + _endpoint = endpoint; + } + + public async Task Consume(ConsumeContext context) + { + var @event = context.Message; + if(@event.Action == Models.GroupRequestState.Passed) + { + await _endpoint.Publish(new GroupJoinEvent + { + AggregateId = @event.AggregateId, + OccurredAt = @event.OccurredAt, + EventId = Guid.NewGuid(), + GroupId = @event.GroupId, + OperatorId = @event.OperatorId, + UserId = @event.UserId + }); + } + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/GroupRequestUpdateHandler/RequestUpdateSignalrHandler.cs b/backend/IM_API/Application/EventHandlers/GroupRequestUpdateHandler/RequestUpdateSignalrHandler.cs index 3692545..3b4e20a 100644 --- a/backend/IM_API/Application/EventHandlers/GroupRequestUpdateHandler/RequestUpdateSignalrHandler.cs +++ b/backend/IM_API/Application/EventHandlers/GroupRequestUpdateHandler/RequestUpdateSignalrHandler.cs @@ -1,29 +1,29 @@ -using IM_API.Domain.Events; -using IM_API.Dtos; -using IM_API.Hubs; -using IM_API.VOs.Group; -using MassTransit; -using Microsoft.AspNetCore.SignalR; - -namespace IM_API.Application.EventHandlers.GroupRequestUpdateHandler -{ - public class RequestUpdateSignalrHandler : IConsumer - { - private readonly IHubContext _hub; - public RequestUpdateSignalrHandler(IHubContext hub) - { - _hub = hub; - } - - public async Task Consume(ConsumeContext context) - { - var msg = new HubResponse("Event", new GroupRequestUpdateVo - { - GroupId = context.Message.GroupId, - RequestId = context.Message.RequestId, - UserId = context.Message.UserId - }); - await _hub.Clients.User(context.Message.UserId.ToString()).SendAsync("ReceiveMessage", msg); - } - } -} +using IM_API.Domain.Events; +using IM_API.Dtos; +using IM_API.Hubs; +using IM_API.VOs.Group; +using MassTransit; +using Microsoft.AspNetCore.SignalR; + +namespace IM_API.Application.EventHandlers.GroupRequestUpdateHandler +{ + public class RequestUpdateSignalrHandler : IConsumer + { + private readonly IHubContext _hub; + public RequestUpdateSignalrHandler(IHubContext hub) + { + _hub = hub; + } + + public async Task Consume(ConsumeContext context) + { + var msg = new HubResponse("Event", new GroupRequestUpdateVo + { + GroupId = context.Message.GroupId, + RequestId = context.Message.RequestId, + UserId = context.Message.UserId + }); + await _hub.Clients.User(context.Message.UserId.ToString()).SendAsync("ReceiveMessage", msg); + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/MessageCreatedHandler/ConversationEventHandler.cs b/backend/IM_API/Application/EventHandlers/MessageCreatedHandler/ConversationEventHandler.cs index 60c18da..9a51daf 100644 --- a/backend/IM_API/Application/EventHandlers/MessageCreatedHandler/ConversationEventHandler.cs +++ b/backend/IM_API/Application/EventHandlers/MessageCreatedHandler/ConversationEventHandler.cs @@ -1,66 +1,66 @@ -using AutoMapper; -using IM_API.Application.Interfaces; -using IM_API.Domain.Events; -using IM_API.Dtos; -using IM_API.Exceptions; -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.Services; -using IM_API.Tools; -using MassTransit; -using Microsoft.EntityFrameworkCore; -using Newtonsoft.Json; - -namespace IM_API.Application.EventHandlers.MessageCreatedHandler -{ - public class ConversationEventHandler : IConsumer - { - private readonly IConversationService _conversationService; - private readonly ILogger _logger; - private readonly IUserService _userSerivce; - private readonly IGroupService _groupService; - public ConversationEventHandler( - IConversationService conversationService, - ILogger logger, - IUserService userService, - IGroupService groupService - ) - { - _conversationService = conversationService; - _logger = logger; - _userSerivce = userService; - _groupService = groupService; - } - - public async Task Consume(ConsumeContext context) - { - var @event = context.Message; - if (@event.ChatType == ChatType.GROUP) - { - var userinfo = await _userSerivce.GetUserInfoAsync(@event.MsgSenderId); - await _groupService.UpdateGroupConversationAsync(new Dtos.Group.GroupUpdateConversationDto - { - GroupId = @event.MsgRecipientId, - LastMessage = @event.MessageContent, - LastSenderName = userinfo.NickName, - LastUpdateTime = @event.MessageCreated, - MaxSequenceId = @event.SequenceId - }); - } - else - { - await _conversationService.UpdateConversationAfterSentAsync(new Dtos.Conversation.UpdateConversationDto - { - LastMessage = @event.MessageContent, - LastSequenceId = @event.SequenceId, - ReceiptId = @event.MsgRecipientId, - SenderId = @event.MsgSenderId, - StreamKey = @event.StreamKey, - DateTime = @event.MessageCreated - }); - } - - } - - } -} +using AutoMapper; +using IM_API.Application.Interfaces; +using IM_API.Domain.Events; +using IM_API.Dtos; +using IM_API.Exceptions; +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.Services; +using IM_API.Tools; +using MassTransit; +using Microsoft.EntityFrameworkCore; +using Newtonsoft.Json; + +namespace IM_API.Application.EventHandlers.MessageCreatedHandler +{ + public class ConversationEventHandler : IConsumer + { + private readonly IConversationService _conversationService; + private readonly ILogger _logger; + private readonly IUserService _userSerivce; + private readonly IGroupService _groupService; + public ConversationEventHandler( + IConversationService conversationService, + ILogger logger, + IUserService userService, + IGroupService groupService + ) + { + _conversationService = conversationService; + _logger = logger; + _userSerivce = userService; + _groupService = groupService; + } + + public async Task Consume(ConsumeContext context) + { + var @event = context.Message; + if (@event.ChatType == ChatType.GROUP) + { + var userinfo = await _userSerivce.GetUserInfoAsync(@event.MsgSenderId); + await _groupService.UpdateGroupConversationAsync(new Dtos.Group.GroupUpdateConversationDto + { + GroupId = @event.MsgRecipientId, + LastMessage = @event.MessageContent, + LastSenderName = userinfo.NickName, + LastUpdateTime = @event.MessageCreated, + MaxSequenceId = @event.SequenceId + }); + } + else + { + await _conversationService.UpdateConversationAfterSentAsync(new Dtos.Conversation.UpdateConversationDto + { + LastMessage = @event.MessageContent, + LastSequenceId = @event.SequenceId, + ReceiptId = @event.MsgRecipientId, + SenderId = @event.MsgSenderId, + StreamKey = @event.StreamKey, + DateTime = @event.MessageCreated + }); + } + + } + + } +} diff --git a/backend/IM_API/Application/EventHandlers/MessageCreatedHandler/MessageCreatedDbHandler.cs b/backend/IM_API/Application/EventHandlers/MessageCreatedHandler/MessageCreatedDbHandler.cs index d926a81..ee1d19e 100644 --- a/backend/IM_API/Application/EventHandlers/MessageCreatedHandler/MessageCreatedDbHandler.cs +++ b/backend/IM_API/Application/EventHandlers/MessageCreatedHandler/MessageCreatedDbHandler.cs @@ -1,26 +1,26 @@ -using IM_API.Domain.Events; -using MassTransit; -using IM_API.Interface.Services; -using AutoMapper; -using IM_API.Models; - -namespace IM_API.Application.EventHandlers.MessageCreatedHandler -{ - public class MessageCreatedDbHandler : IConsumer - { - private readonly IMessageSevice _messageService; - public readonly IMapper _mapper; - public MessageCreatedDbHandler(IMessageSevice messageSevice, IMapper mapper) - { - _messageService = messageSevice; - _mapper = mapper; - } - - public async Task Consume(ConsumeContext context) - { - var @event = context.Message; - var msg = _mapper.Map(@event); - await _messageService.MakeMessageAsync(msg); - } - } -} +using IM_API.Domain.Events; +using MassTransit; +using IM_API.Interface.Services; +using AutoMapper; +using IM_API.Models; + +namespace IM_API.Application.EventHandlers.MessageCreatedHandler +{ + public class MessageCreatedDbHandler : IConsumer + { + private readonly IMessageSevice _messageService; + public readonly IMapper _mapper; + public MessageCreatedDbHandler(IMessageSevice messageSevice, IMapper mapper) + { + _messageService = messageSevice; + _mapper = mapper; + } + + public async Task Consume(ConsumeContext context) + { + var @event = context.Message; + var msg = _mapper.Map(@event); + await _messageService.MakeMessageAsync(msg); + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/MessageCreatedHandler/SignalREventHandler.cs b/backend/IM_API/Application/EventHandlers/MessageCreatedHandler/SignalREventHandler.cs index 8166f2f..564c3f9 100644 --- a/backend/IM_API/Application/EventHandlers/MessageCreatedHandler/SignalREventHandler.cs +++ b/backend/IM_API/Application/EventHandlers/MessageCreatedHandler/SignalREventHandler.cs @@ -1,48 +1,48 @@ -using AutoMapper; -using IM_API.Application.Interfaces; -using IM_API.Domain.Events; -using IM_API.Dtos; -using IM_API.Hubs; -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.Tools; -using IM_API.VOs.Message; -using MassTransit; -using Microsoft.AspNetCore.SignalR; - -namespace IM_API.Application.EventHandlers.MessageCreatedHandler -{ - public class SignalREventHandler : IConsumer - { - private readonly IHubContext _hub; - private readonly IMapper _mapper; - private readonly IUserService _userService; - public SignalREventHandler(IHubContext hub, IMapper mapper,IUserService userService) - { - _hub = hub; - _mapper = mapper; - _userService = userService; - } - - public async Task Consume(ConsumeContext context) - { - Console.ForegroundColor = ConsoleColor.Red; - var @event = context.Message; - try - { - var entity = _mapper.Map(@event); - var messageBaseVo = _mapper.Map(entity); - var senderinfo = await _userService.GetUserInfoAsync(@event.MsgSenderId); - messageBaseVo.SenderName = senderinfo.NickName; - messageBaseVo.SenderAvatar = senderinfo.Avatar ?? ""; - await _hub.Clients.Group(@event.StreamKey).SendAsync("ReceiveMessage", new HubResponse("Event", messageBaseVo)); - } - catch (Exception ex) - { - Console.WriteLine($"[SignalR] 发送失败: {ex.Message}"); - Console.ResetColor(); - throw; - } - } - } -} +using AutoMapper; +using IM_API.Application.Interfaces; +using IM_API.Domain.Events; +using IM_API.Dtos; +using IM_API.Hubs; +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.Tools; +using IM_API.VOs.Message; +using MassTransit; +using Microsoft.AspNetCore.SignalR; + +namespace IM_API.Application.EventHandlers.MessageCreatedHandler +{ + public class SignalREventHandler : IConsumer + { + private readonly IHubContext _hub; + private readonly IMapper _mapper; + private readonly IUserService _userService; + public SignalREventHandler(IHubContext hub, IMapper mapper,IUserService userService) + { + _hub = hub; + _mapper = mapper; + _userService = userService; + } + + public async Task Consume(ConsumeContext context) + { + Console.ForegroundColor = ConsoleColor.Red; + var @event = context.Message; + try + { + var entity = _mapper.Map(@event); + var messageBaseVo = _mapper.Map(entity); + var senderinfo = await _userService.GetUserInfoAsync(@event.MsgSenderId); + messageBaseVo.SenderName = senderinfo.NickName; + messageBaseVo.SenderAvatar = senderinfo.Avatar ?? ""; + await _hub.Clients.Group(@event.StreamKey).SendAsync("ReceiveMessage", new HubResponse("Event", messageBaseVo)); + } + catch (Exception ex) + { + Console.WriteLine($"[SignalR] 发送失败: {ex.Message}"); + Console.ResetColor(); + throw; + } + } + } +} diff --git a/backend/IM_API/Application/EventHandlers/RequestFriendHandler/RequestFriendSignalRHandler.cs b/backend/IM_API/Application/EventHandlers/RequestFriendHandler/RequestFriendSignalRHandler.cs index e39be9d..743767a 100644 --- a/backend/IM_API/Application/EventHandlers/RequestFriendHandler/RequestFriendSignalRHandler.cs +++ b/backend/IM_API/Application/EventHandlers/RequestFriendHandler/RequestFriendSignalRHandler.cs @@ -1,37 +1,37 @@ -using IM_API.Domain.Events; -using IM_API.Dtos; -using IM_API.Dtos.Friend; -using IM_API.Hubs; -using IM_API.Interface.Services; -using MassTransit; -using Microsoft.AspNetCore.SignalR; - -namespace IM_API.Application.EventHandlers.RequestFriendHandler -{ - public class RequestFriendSignalRHandler:IConsumer - { - private readonly IHubContext _hub; - private readonly IUserService _userService; - public RequestFriendSignalRHandler(IHubContext hubContext, IUserService userService) - { - _hub = hubContext; - _userService = userService; - } - - public async Task Consume(ConsumeContext context) - { - var @event = context.Message; - var userInfo = await _userService.GetUserInfoAsync(@event.FromUserId); - var res = new HubResponse("Event", new FriendRequestResDto() - { - RequestUser = @event.FromUserId, - ResponseUser = @event.ToUserId, - Created = DateTime.UtcNow, - Description = @event.Description, - Avatar = userInfo.Avatar, - NickName = userInfo.NickName - }); - await _hub.Clients.User(@event.ToUserId.ToString()).SendAsync("ReceiveMessage", res); - } - } -} +using IM_API.Domain.Events; +using IM_API.Dtos; +using IM_API.Dtos.Friend; +using IM_API.Hubs; +using IM_API.Interface.Services; +using MassTransit; +using Microsoft.AspNetCore.SignalR; + +namespace IM_API.Application.EventHandlers.RequestFriendHandler +{ + public class RequestFriendSignalRHandler:IConsumer + { + private readonly IHubContext _hub; + private readonly IUserService _userService; + public RequestFriendSignalRHandler(IHubContext hubContext, IUserService userService) + { + _hub = hubContext; + _userService = userService; + } + + public async Task Consume(ConsumeContext context) + { + var @event = context.Message; + var userInfo = await _userService.GetUserInfoAsync(@event.FromUserId); + var res = new HubResponse("Event", new FriendRequestResDto() + { + RequestUser = @event.FromUserId, + ResponseUser = @event.ToUserId, + Created = DateTime.UtcNow, + Description = @event.Description, + Avatar = userInfo.Avatar, + NickName = userInfo.NickName + }); + await _hub.Clients.User(@event.ToUserId.ToString()).SendAsync("ReceiveMessage", res); + } + } +} diff --git a/backend/IM_API/Application/Interfaces/IEventBus.cs b/backend/IM_API/Application/Interfaces/IEventBus.cs index a2d67eb..839c9e4 100644 --- a/backend/IM_API/Application/Interfaces/IEventBus.cs +++ b/backend/IM_API/Application/Interfaces/IEventBus.cs @@ -1,9 +1,9 @@ -using IM_API.Domain.Interfaces; - -namespace IM_API.Application.Interfaces -{ - public interface IEventBus - { - Task PublishAsync(TEvent @event) where TEvent : IEvent; - } -} +using IM_API.Domain.Interfaces; + +namespace IM_API.Application.Interfaces +{ + public interface IEventBus + { + Task PublishAsync(TEvent @event) where TEvent : IEvent; + } +} diff --git a/backend/IM_API/Application/Interfaces/IEventHandler.cs b/backend/IM_API/Application/Interfaces/IEventHandler.cs index 7c6eb47..d959ea4 100644 --- a/backend/IM_API/Application/Interfaces/IEventHandler.cs +++ b/backend/IM_API/Application/Interfaces/IEventHandler.cs @@ -1,9 +1,9 @@ -using IM_API.Domain.Interfaces; - -namespace IM_API.Application.Interfaces -{ - public interface IEventHandler where TEvent : IEvent - { - Task Handle(TEvent @event); - } -} +using IM_API.Domain.Interfaces; + +namespace IM_API.Application.Interfaces +{ + public interface IEventHandler where TEvent : IEvent + { + Task Handle(TEvent @event); + } +} diff --git a/backend/IM_API/Configs/MQConfig.cs b/backend/IM_API/Configs/MQConfig.cs index bcac5d6..1527f81 100644 --- a/backend/IM_API/Configs/MQConfig.cs +++ b/backend/IM_API/Configs/MQConfig.cs @@ -1,65 +1,65 @@ -using AutoMapper; -using IM_API.Application.EventHandlers.FriendAddHandler; -using IM_API.Application.EventHandlers.GroupInviteActionUpdateHandler; -using IM_API.Application.EventHandlers.GroupInviteHandler; -using IM_API.Application.EventHandlers.GroupJoinHandler; -using IM_API.Application.EventHandlers.GroupRequestHandler; -using IM_API.Application.EventHandlers.GroupRequestUpdateHandler; -using IM_API.Application.EventHandlers.MessageCreatedHandler; -using IM_API.Application.EventHandlers.RequestFriendHandler; -using IM_API.Configs.Options; -using IM_API.Domain.Events; -using MassTransit; -using MySqlConnector; - -namespace IM_API.Configs -{ - public static class MQConfig - { - public static IServiceCollection AddRabbitMQ(this IServiceCollection services, RabbitMQOptions options) - { - services.AddMassTransit(x => - { - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.AddConsumer(); - x.UsingRabbitMq((ctx,cfg) => - { - cfg.Host(options.Host, "/", h => - { - h.Username(options.Username); - h.Password(options.Password); - }); - cfg.ConfigureEndpoints(ctx); - cfg.UseMessageRetry(r => - { - r.Handle(); - r.Handle(); - r.Ignore(); - r.Exponential(5, TimeSpan.FromSeconds(1), TimeSpan.FromSeconds(60), TimeSpan.FromSeconds(2)); - }); - cfg.ConfigureEndpoints(ctx); - }); - }); - - - return services; - } - } - - -} +using AutoMapper; +using IM_API.Application.EventHandlers.FriendAddHandler; +using IM_API.Application.EventHandlers.GroupInviteActionUpdateHandler; +using IM_API.Application.EventHandlers.GroupInviteHandler; +using IM_API.Application.EventHandlers.GroupJoinHandler; +using IM_API.Application.EventHandlers.GroupRequestHandler; +using IM_API.Application.EventHandlers.GroupRequestUpdateHandler; +using IM_API.Application.EventHandlers.MessageCreatedHandler; +using IM_API.Application.EventHandlers.RequestFriendHandler; +using IM_API.Configs.Options; +using IM_API.Domain.Events; +using MassTransit; +using MySqlConnector; + +namespace IM_API.Configs +{ + public static class MQConfig + { + public static IServiceCollection AddRabbitMQ(this IServiceCollection services, RabbitMQOptions options) + { + services.AddMassTransit(x => + { + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.AddConsumer(); + x.UsingRabbitMq((ctx,cfg) => + { + cfg.Host(options.Host, "/", h => + { + h.Username(options.Username); + h.Password(options.Password); + }); + cfg.ConfigureEndpoints(ctx); + cfg.UseMessageRetry(r => + { + r.Handle(); + r.Handle(); + r.Ignore(); + r.Exponential(5, TimeSpan.FromSeconds(1), TimeSpan.FromSeconds(60), TimeSpan.FromSeconds(2)); + }); + cfg.ConfigureEndpoints(ctx); + }); + }); + + + return services; + } + } + + +} diff --git a/backend/IM_API/Configs/MapperConfig.cs b/backend/IM_API/Configs/MapperConfig.cs index 9ba80cc..def0ff5 100644 --- a/backend/IM_API/Configs/MapperConfig.cs +++ b/backend/IM_API/Configs/MapperConfig.cs @@ -1,176 +1,176 @@ -using AutoMapper; -using IM_API.Domain.Events; -using IM_API.Dtos; -using IM_API.Dtos.Auth; -using IM_API.Dtos.Friend; -using IM_API.Dtos.Group; -using IM_API.Dtos.User; -using IM_API.Models; -using IM_API.Tools; -using IM_API.VOs.Conversation; -using IM_API.VOs.Message; - -namespace IM_API.Configs -{ - public class MapperConfig:Profile - { - public MapperConfig() - { - CreateMap(); - //用户信息更新模型转换 - CreateMap() - .ForMember(dest => dest.Updated,opt => opt.MapFrom(src => DateTime.Now)) - .ForAllMembers(opts => opts.Condition((src,dest,srcMember) => srcMember != null)); - //用户注册模型转换 - CreateMap() - .ForMember(dest => dest.Username,opt => opt.MapFrom(src => src.Username)) - .ForMember(dest => dest.Password,opt => opt.MapFrom(src => src.Password)) - .ForMember(dest => dest.Avatar,opt => opt.MapFrom(src => "https://ts1.tc.mm.bing.net/th/id/OIP-C.dl0WpkTP6E2J4FnhDC_jHwAAAA?rs=1&pid=ImgDetMain&o=7&rm=3")) - .ForMember(dest => dest.StatusEnum,opt => opt.MapFrom(src => UserStatus.Normal)) - .ForMember(dest => dest.OnlineStatusEnum,opt => opt.MapFrom(src => UserOnlineStatus.Offline)) - .ForMember(dest => dest.NickName,opt => opt.MapFrom(src => src.NickName??"默认用户")) - .ForMember(dest => dest.Created,opt => opt.MapFrom(src => DateTime.Now)) - .ForMember(dest => dest.IsDeleted,opt => opt.MapFrom(src => 0)) - ; - //好友信息模型转换 - CreateMap() - .ForMember(dest => dest.UserInfo, opt => opt.MapFrom(src => src.FriendNavigation)) - .ForMember(dest => dest.Avatar, opt => opt.MapFrom(src => src.FriendNavigation.Avatar)) - ; - //好友请求通过后新增好友关系 - CreateMap() - .ForMember(dest => dest.UserId , opt => opt.MapFrom(src => src.FromUserId)) - .ForMember(dest => dest.FriendId , opt => opt.MapFrom(src => src.ToUserId)) - .ForMember(dest => dest.StatusEnum , opt =>opt.MapFrom(src => FriendStatus.Pending)) - .ForMember(dest => dest.RemarkName , opt => opt.MapFrom(src => src.RemarkName)) - .ForMember(dest => dest.Created , opt => opt.MapFrom(src => DateTime.Now)) - ; - //发起好友请求转换请求对象 - CreateMap() - .ForMember(dest => dest.RequestUser , opt => opt.MapFrom(src => src.FromUserId)) - .ForMember(dest => dest.ResponseUser , opt => opt.MapFrom(src => src.ToUserId)) - .ForMember(dest => dest.Created , opt => opt.MapFrom(src => DateTime.Now)) - .ForMember(dest => dest.StateEnum , opt => opt.MapFrom(src => FriendRequestState.Pending)) - .ForMember(dest => dest.Description , opt => opt.MapFrom(src => src.Description)) - ; - - CreateMap() - .ForMember(dest => dest.ToUserId, opt => opt.MapFrom(src => src.ResponseUser)) - .ForMember(dest => dest.FromUserId, opt => opt.MapFrom(src => src.RequestUser)) - .ForMember(dest => dest.RemarkName, opt => opt.MapFrom(src => src.RemarkName)) - .ForMember(dest => dest.Description, opt => opt.MapFrom(src => src.Description)) - ; - //消息模型转换 - CreateMap() - .ForMember(dest => dest.Type , opt => opt.MapFrom(src => src.MsgTypeEnum)) - .ForMember(dest => dest.MsgId , opt => opt.MapFrom(src => src.ClientMsgId)) - .ForMember(dest => dest.SenderId , opt => opt.MapFrom(src => src.Sender)) - .ForMember(dest => dest.ChatType , opt => opt.MapFrom(src => src.ChatTypeEnum)) - .ForMember(dest => dest.ReceiverId, opt => opt.MapFrom(src => src.Recipient)) - .ForMember(dest => dest.Content, opt => opt.MapFrom(src => src.Content)) - .ForMember(dest => dest.TimeStamp, opt => opt.MapFrom(src => src.Created)) - .ForMember(dest => dest.SequenceId, opt => opt.MapFrom(src => src.SequenceId)) - ; - CreateMap() - .ForMember(dest => dest.Sender, opt => opt.MapFrom(src => src.SenderId)) - .ForMember(dest => dest.ChatTypeEnum,opt => opt.MapFrom(src => src.ChatType)) - .ForMember(dest => dest.MsgTypeEnum, opt => opt.MapFrom(src => src.Type)) - .ForMember(dest => dest.Created, opt => opt.MapFrom(src => src.TimeStamp)) - .ForMember(dest => dest.Content, opt => opt.MapFrom(src => src.Content)) - .ForMember(dest => dest.Recipient, opt => opt.MapFrom(src => src.ReceiverId)) - .ForMember(dest => dest.StreamKey, opt => opt.Ignore() ) - .ForMember(dest => dest.StateEnum, opt => opt.MapFrom(src => MessageState.Sent)) - .ForMember(dest => dest.ChatType, opt => opt.Ignore()) - .ForMember(dest => dest.MsgType, opt => opt.Ignore()) - .ForMember(dest => dest.ClientMsgId, opt => opt.MapFrom(src => src.MsgId)) - ; - - //会话对象深拷贝 - CreateMap() - .ForMember(dest => dest.Id, opt => opt.Ignore()) - .ForMember(dest => dest.UserId, opt => opt.Ignore()) - .ForMember(dest => dest.TargetId, opt => opt.Ignore()) - .ForMember(dest => dest.ChatType, opt => opt.Ignore()) - .ForMember(dest => dest.StreamKey, opt => opt.Ignore()) - ; - - //消息对象转消息创建事件对象 - CreateMap() - .ForMember(dest => dest.MessageMsgType, opt => opt.MapFrom(src => src.MsgTypeEnum)) - .ForMember(dest => dest.ChatType, opt => opt.MapFrom(src => src.ChatTypeEnum)) - .ForMember(dest => dest.MessageContent, opt => opt.MapFrom(src => src.Content)) - .ForMember(dest => dest.State, opt => opt.MapFrom(src => src.StateEnum)) - .ForMember(dest => dest.MessageCreated, opt => opt.MapFrom(src => src.Created)) - .ForMember(dest => dest.MsgRecipientId, opt => opt.MapFrom(src => src.Recipient)) - .ForMember(dest => dest.MsgSenderId, opt => opt.MapFrom(src => src.Sender)) - .ForMember(dest => dest.EventId, opt => opt.MapFrom(src => Guid.NewGuid())) - .ForMember(dest => dest.AggregateId, opt => opt.MapFrom(src => src.Sender.ToString())) - .ForMember(dest => dest.OccurredAt , opt => opt.MapFrom(src => DateTime.Now)) - .ForMember(dest => dest.OperatorId, opt => opt.MapFrom(src => src.Sender)) - .ForMember(dest => dest.StreamKey, opt => opt.MapFrom(src => src.StreamKey)) - ; - - CreateMap() - .ForMember(dest => dest.SequenceId, opt => opt.MapFrom(src => src.SequenceId)) - .ForMember(dest => dest.ClientMsgId, opt => opt.MapFrom(src => src.ClientMsgId)) - .ForMember(dest => dest.StateEnum, opt => opt.MapFrom(src => src.State)) - .ForMember(dest => dest.ChatTypeEnum, opt => opt.MapFrom(src => src.ChatType)) - .ForMember(dest => dest.Content, opt => opt.MapFrom(src => src.MessageContent)) - .ForMember(dest => dest.Created, opt => opt.MapFrom(src => src.MessageCreated)) - .ForMember(dest => dest.MsgTypeEnum, opt => opt.MapFrom(src => src.MessageMsgType)) - .ForMember(dest => dest.Recipient, opt => opt.MapFrom(src => src.MsgRecipientId)) - .ForMember(dest => dest.Sender, opt => opt.MapFrom(src => src.MsgSenderId)) - .ForMember(dest => dest.StreamKey, opt => opt.MapFrom(src => src.StreamKey)) - .ForMember(dest => dest.ChatType, opt => opt.Ignore()) - .ForMember(dest => dest.State, opt => opt.Ignore()) - .ForMember(dest => dest.MsgType, opt => opt.Ignore()); - - //消息发送事件转换会话对象 - CreateMap() - //.ForMember(dest => dest.LastReadMessageId, opt => opt.MapFrom(src => src.MessageId)) - .ForMember(dest => dest.LastMessage, opt => opt.MapFrom(src => src.MessageContent)) - .ForMember(dest => dest.ChatType, opt => opt.MapFrom(src => src.ChatType)) - .ForMember(dest => dest.UserId, opt => opt.MapFrom(src => src.MsgSenderId)) - .ForMember(dest => dest.TargetId, opt => opt.MapFrom(src => src.MsgRecipientId)) - .ForMember(dest => dest.UnreadCount, opt => opt.MapFrom(src => 0)) - .ForMember(dest => dest.StreamKey, opt => opt.MapFrom(src => src.StreamKey)) - .ForMember(dest => dest.LastMessageTime, opt => opt.MapFrom(src => DateTime.Now)) - ; - - //创建会话对象 - CreateMap() - .ForMember(dest => dest.Id, opt => opt.MapFrom(src => src.Id)) - .ForMember(dest => dest.LastMessage, opt => opt.MapFrom(src => src.LastMessage)) - .ForMember(dest => dest.LastSequenceId, opt => opt.MapFrom(src => src.LastReadSequenceId)) - .ForMember(dest => dest.ChatType, opt => opt.MapFrom(src => src.ChatTypeEnum)) - .ForMember(dest => dest.DateTime, opt => opt.MapFrom(src => src.LastMessageTime)) - .ForMember(dest => dest.TargetId, opt => opt.MapFrom(src => src.TargetId)) - .ForMember(dest => dest.UnreadCount, opt => opt.MapFrom(src => src.UnreadCount)) - .ForMember(dest => dest.UserId, opt => opt.MapFrom(src => src.UserId)); - - CreateMap() - .ForMember(dest => dest.TargetAvatar, opt => opt.MapFrom(src => src.FriendNavigation.Avatar)) - .ForMember(dest => dest.TargetName, opt => opt.MapFrom(src => src.RemarkName)); - - CreateMap() - .ForMember(dest => dest.TargetAvatar, opt => opt.MapFrom(src => src.Avatar)) - .ForMember(dest => dest.TargetName, opt => opt.MapFrom(src => src.Name)); - - - //群模型转换 - CreateMap() - .ForMember(dest => dest.Status, opt => opt.MapFrom(src => src.StatusEnum)) - .ForMember(dest => dest.AllMembersBanned, opt => opt.MapFrom(src => src.AllMembersBannedEnum)) - .ForMember(dest => dest.Auhority, opt => opt.MapFrom(src => src.AuhorityEnum)); - - CreateMap() - .ForMember(dest => dest.Name, opt => opt.MapFrom(src => src.Name)) - .ForMember(dest => dest.Avatar, opt => opt.MapFrom(src => src.Avatar)) - .ForMember(dest => dest.Created, opt => opt.MapFrom(src => DateTime.Now)) - .ForMember(dest => dest.AllMembersBannedEnum, opt => opt.MapFrom(src => GroupAllMembersBanned.ALLOWED)) - .ForMember(dest => dest.AuhorityEnum, opt => opt.MapFrom(src => GroupAuhority.REQUIRE_CONSENT)) - .ForMember(dest => dest.StatusEnum, opt => opt.MapFrom(src => GroupStatus.Normal)) - ; - } - } -} +using AutoMapper; +using IM_API.Domain.Events; +using IM_API.Dtos; +using IM_API.Dtos.Auth; +using IM_API.Dtos.Friend; +using IM_API.Dtos.Group; +using IM_API.Dtos.User; +using IM_API.Models; +using IM_API.Tools; +using IM_API.VOs.Conversation; +using IM_API.VOs.Message; + +namespace IM_API.Configs +{ + public class MapperConfig:Profile + { + public MapperConfig() + { + CreateMap(); + //用户信息更新模型转换 + CreateMap() + .ForMember(dest => dest.Updated,opt => opt.MapFrom(src => DateTime.Now)) + .ForAllMembers(opts => opts.Condition((src,dest,srcMember) => srcMember != null)); + //用户注册模型转换 + CreateMap() + .ForMember(dest => dest.Username,opt => opt.MapFrom(src => src.Username)) + .ForMember(dest => dest.Password,opt => opt.MapFrom(src => src.Password)) + .ForMember(dest => dest.Avatar,opt => opt.MapFrom(src => "https://ts1.tc.mm.bing.net/th/id/OIP-C.dl0WpkTP6E2J4FnhDC_jHwAAAA?rs=1&pid=ImgDetMain&o=7&rm=3")) + .ForMember(dest => dest.StatusEnum,opt => opt.MapFrom(src => UserStatus.Normal)) + .ForMember(dest => dest.OnlineStatusEnum,opt => opt.MapFrom(src => UserOnlineStatus.Offline)) + .ForMember(dest => dest.NickName,opt => opt.MapFrom(src => src.NickName??"默认用户")) + .ForMember(dest => dest.Created,opt => opt.MapFrom(src => DateTime.Now)) + .ForMember(dest => dest.IsDeleted,opt => opt.MapFrom(src => 0)) + ; + //好友信息模型转换 + CreateMap() + .ForMember(dest => dest.UserInfo, opt => opt.MapFrom(src => src.FriendNavigation)) + .ForMember(dest => dest.Avatar, opt => opt.MapFrom(src => src.FriendNavigation.Avatar)) + ; + //好友请求通过后新增好友关系 + CreateMap() + .ForMember(dest => dest.UserId , opt => opt.MapFrom(src => src.FromUserId)) + .ForMember(dest => dest.FriendId , opt => opt.MapFrom(src => src.ToUserId)) + .ForMember(dest => dest.StatusEnum , opt =>opt.MapFrom(src => FriendStatus.Pending)) + .ForMember(dest => dest.RemarkName , opt => opt.MapFrom(src => src.RemarkName)) + .ForMember(dest => dest.Created , opt => opt.MapFrom(src => DateTime.Now)) + ; + //发起好友请求转换请求对象 + CreateMap() + .ForMember(dest => dest.RequestUser , opt => opt.MapFrom(src => src.FromUserId)) + .ForMember(dest => dest.ResponseUser , opt => opt.MapFrom(src => src.ToUserId)) + .ForMember(dest => dest.Created , opt => opt.MapFrom(src => DateTime.Now)) + .ForMember(dest => dest.StateEnum , opt => opt.MapFrom(src => FriendRequestState.Pending)) + .ForMember(dest => dest.Description , opt => opt.MapFrom(src => src.Description)) + ; + + CreateMap() + .ForMember(dest => dest.ToUserId, opt => opt.MapFrom(src => src.ResponseUser)) + .ForMember(dest => dest.FromUserId, opt => opt.MapFrom(src => src.RequestUser)) + .ForMember(dest => dest.RemarkName, opt => opt.MapFrom(src => src.RemarkName)) + .ForMember(dest => dest.Description, opt => opt.MapFrom(src => src.Description)) + ; + //消息模型转换 + CreateMap() + .ForMember(dest => dest.Type , opt => opt.MapFrom(src => src.MsgTypeEnum)) + .ForMember(dest => dest.MsgId , opt => opt.MapFrom(src => src.ClientMsgId)) + .ForMember(dest => dest.SenderId , opt => opt.MapFrom(src => src.Sender)) + .ForMember(dest => dest.ChatType , opt => opt.MapFrom(src => src.ChatTypeEnum)) + .ForMember(dest => dest.ReceiverId, opt => opt.MapFrom(src => src.Recipient)) + .ForMember(dest => dest.Content, opt => opt.MapFrom(src => src.Content)) + .ForMember(dest => dest.TimeStamp, opt => opt.MapFrom(src => src.Created)) + .ForMember(dest => dest.SequenceId, opt => opt.MapFrom(src => src.SequenceId)) + ; + CreateMap() + .ForMember(dest => dest.Sender, opt => opt.MapFrom(src => src.SenderId)) + .ForMember(dest => dest.ChatTypeEnum,opt => opt.MapFrom(src => src.ChatType)) + .ForMember(dest => dest.MsgTypeEnum, opt => opt.MapFrom(src => src.Type)) + .ForMember(dest => dest.Created, opt => opt.MapFrom(src => src.TimeStamp)) + .ForMember(dest => dest.Content, opt => opt.MapFrom(src => src.Content)) + .ForMember(dest => dest.Recipient, opt => opt.MapFrom(src => src.ReceiverId)) + .ForMember(dest => dest.StreamKey, opt => opt.Ignore() ) + .ForMember(dest => dest.StateEnum, opt => opt.MapFrom(src => MessageState.Sent)) + .ForMember(dest => dest.ChatType, opt => opt.Ignore()) + .ForMember(dest => dest.MsgType, opt => opt.Ignore()) + .ForMember(dest => dest.ClientMsgId, opt => opt.MapFrom(src => src.MsgId)) + ; + + //会话对象深拷贝 + CreateMap() + .ForMember(dest => dest.Id, opt => opt.Ignore()) + .ForMember(dest => dest.UserId, opt => opt.Ignore()) + .ForMember(dest => dest.TargetId, opt => opt.Ignore()) + .ForMember(dest => dest.ChatType, opt => opt.Ignore()) + .ForMember(dest => dest.StreamKey, opt => opt.Ignore()) + ; + + //消息对象转消息创建事件对象 + CreateMap() + .ForMember(dest => dest.MessageMsgType, opt => opt.MapFrom(src => src.MsgTypeEnum)) + .ForMember(dest => dest.ChatType, opt => opt.MapFrom(src => src.ChatTypeEnum)) + .ForMember(dest => dest.MessageContent, opt => opt.MapFrom(src => src.Content)) + .ForMember(dest => dest.State, opt => opt.MapFrom(src => src.StateEnum)) + .ForMember(dest => dest.MessageCreated, opt => opt.MapFrom(src => src.Created)) + .ForMember(dest => dest.MsgRecipientId, opt => opt.MapFrom(src => src.Recipient)) + .ForMember(dest => dest.MsgSenderId, opt => opt.MapFrom(src => src.Sender)) + .ForMember(dest => dest.EventId, opt => opt.MapFrom(src => Guid.NewGuid())) + .ForMember(dest => dest.AggregateId, opt => opt.MapFrom(src => src.Sender.ToString())) + .ForMember(dest => dest.OccurredAt , opt => opt.MapFrom(src => DateTime.Now)) + .ForMember(dest => dest.OperatorId, opt => opt.MapFrom(src => src.Sender)) + .ForMember(dest => dest.StreamKey, opt => opt.MapFrom(src => src.StreamKey)) + ; + + CreateMap() + .ForMember(dest => dest.SequenceId, opt => opt.MapFrom(src => src.SequenceId)) + .ForMember(dest => dest.ClientMsgId, opt => opt.MapFrom(src => src.ClientMsgId)) + .ForMember(dest => dest.StateEnum, opt => opt.MapFrom(src => src.State)) + .ForMember(dest => dest.ChatTypeEnum, opt => opt.MapFrom(src => src.ChatType)) + .ForMember(dest => dest.Content, opt => opt.MapFrom(src => src.MessageContent)) + .ForMember(dest => dest.Created, opt => opt.MapFrom(src => src.MessageCreated)) + .ForMember(dest => dest.MsgTypeEnum, opt => opt.MapFrom(src => src.MessageMsgType)) + .ForMember(dest => dest.Recipient, opt => opt.MapFrom(src => src.MsgRecipientId)) + .ForMember(dest => dest.Sender, opt => opt.MapFrom(src => src.MsgSenderId)) + .ForMember(dest => dest.StreamKey, opt => opt.MapFrom(src => src.StreamKey)) + .ForMember(dest => dest.ChatType, opt => opt.Ignore()) + .ForMember(dest => dest.State, opt => opt.Ignore()) + .ForMember(dest => dest.MsgType, opt => opt.Ignore()); + + //消息发送事件转换会话对象 + CreateMap() + //.ForMember(dest => dest.LastReadMessageId, opt => opt.MapFrom(src => src.MessageId)) + .ForMember(dest => dest.LastMessage, opt => opt.MapFrom(src => src.MessageContent)) + .ForMember(dest => dest.ChatType, opt => opt.MapFrom(src => src.ChatType)) + .ForMember(dest => dest.UserId, opt => opt.MapFrom(src => src.MsgSenderId)) + .ForMember(dest => dest.TargetId, opt => opt.MapFrom(src => src.MsgRecipientId)) + .ForMember(dest => dest.UnreadCount, opt => opt.MapFrom(src => 0)) + .ForMember(dest => dest.StreamKey, opt => opt.MapFrom(src => src.StreamKey)) + .ForMember(dest => dest.LastMessageTime, opt => opt.MapFrom(src => DateTime.Now)) + ; + + //创建会话对象 + CreateMap() + .ForMember(dest => dest.Id, opt => opt.MapFrom(src => src.Id)) + .ForMember(dest => dest.LastMessage, opt => opt.MapFrom(src => src.LastMessage)) + .ForMember(dest => dest.LastSequenceId, opt => opt.MapFrom(src => src.LastReadSequenceId)) + .ForMember(dest => dest.ChatType, opt => opt.MapFrom(src => src.ChatTypeEnum)) + .ForMember(dest => dest.DateTime, opt => opt.MapFrom(src => src.LastMessageTime)) + .ForMember(dest => dest.TargetId, opt => opt.MapFrom(src => src.TargetId)) + .ForMember(dest => dest.UnreadCount, opt => opt.MapFrom(src => src.UnreadCount)) + .ForMember(dest => dest.UserId, opt => opt.MapFrom(src => src.UserId)); + + CreateMap() + .ForMember(dest => dest.TargetAvatar, opt => opt.MapFrom(src => src.FriendNavigation.Avatar)) + .ForMember(dest => dest.TargetName, opt => opt.MapFrom(src => src.RemarkName)); + + CreateMap() + .ForMember(dest => dest.TargetAvatar, opt => opt.MapFrom(src => src.Avatar)) + .ForMember(dest => dest.TargetName, opt => opt.MapFrom(src => src.Name)); + + + //群模型转换 + CreateMap() + .ForMember(dest => dest.Status, opt => opt.MapFrom(src => src.StatusEnum)) + .ForMember(dest => dest.AllMembersBanned, opt => opt.MapFrom(src => src.AllMembersBannedEnum)) + .ForMember(dest => dest.Auhority, opt => opt.MapFrom(src => src.AuhorityEnum)); + + CreateMap() + .ForMember(dest => dest.Name, opt => opt.MapFrom(src => src.Name)) + .ForMember(dest => dest.Avatar, opt => opt.MapFrom(src => src.Avatar)) + .ForMember(dest => dest.Created, opt => opt.MapFrom(src => DateTime.Now)) + .ForMember(dest => dest.AllMembersBannedEnum, opt => opt.MapFrom(src => GroupAllMembersBanned.ALLOWED)) + .ForMember(dest => dest.AuhorityEnum, opt => opt.MapFrom(src => GroupAuhority.REQUIRE_CONSENT)) + .ForMember(dest => dest.StatusEnum, opt => opt.MapFrom(src => GroupStatus.Normal)) + ; + } + } +} diff --git a/backend/IM_API/Configs/Options/ConnectionOptions.cs b/backend/IM_API/Configs/Options/ConnectionOptions.cs index 53e1d3b..ac733f8 100644 --- a/backend/IM_API/Configs/Options/ConnectionOptions.cs +++ b/backend/IM_API/Configs/Options/ConnectionOptions.cs @@ -1,8 +1,8 @@ -namespace IM_API.Configs.Options -{ - public class ConnectionOptions - { - public string DefaultConnection { get; set; } - public string Redis { get; set; } - } -} +namespace IM_API.Configs.Options +{ + public class ConnectionOptions + { + public string DefaultConnection { get; set; } + public string Redis { get; set; } + } +} diff --git a/backend/IM_API/Configs/Options/RabbitMQOptions.cs b/backend/IM_API/Configs/Options/RabbitMQOptions.cs index 045cb1d..5556a31 100644 --- a/backend/IM_API/Configs/Options/RabbitMQOptions.cs +++ b/backend/IM_API/Configs/Options/RabbitMQOptions.cs @@ -1,10 +1,10 @@ -namespace IM_API.Configs.Options -{ - public class RabbitMQOptions - { - public string Host { get; set; } - public int Port { get; set; } - public string Username { get; set; } - public string Password { get; set; } - } -} +namespace IM_API.Configs.Options +{ + public class RabbitMQOptions + { + public string Host { get; set; } + public int Port { get; set; } + public string Username { get; set; } + public string Password { get; set; } + } +} diff --git a/backend/IM_API/Configs/ServiceCollectionExtensions.cs b/backend/IM_API/Configs/ServiceCollectionExtensions.cs index 4823103..931a544 100644 --- a/backend/IM_API/Configs/ServiceCollectionExtensions.cs +++ b/backend/IM_API/Configs/ServiceCollectionExtensions.cs @@ -1,64 +1,64 @@ -using IM_API.Application.EventHandlers; -using IM_API.Application.Interfaces; -using IM_API.Domain.Events; -using IM_API.Dtos; -using IM_API.Infrastructure.EventBus; -using IM_API.Interface.Services; -using IM_API.Services; -using IM_API.Tools; -using Microsoft.AspNetCore.Http.HttpResults; -using Microsoft.AspNetCore.Mvc; -using RedLockNet; -using RedLockNet.SERedis; -using RedLockNet.SERedis.Configuration; -using StackExchange.Redis; - -namespace IM_API.Configs -{ - public static class ServiceCollectionExtensions - { - public static IServiceCollection AddAllService(this IServiceCollection services, IConfiguration configuration) - { - - services.AddAutoMapper(typeof(MapperConfig)); - services.AddScoped(); - services.AddScoped(); - services.AddScoped(); - services.AddScoped(); - services.AddScoped(); - services.AddScoped(); - services.AddScoped(); - services.AddScoped(); - services.AddScoped(); - services.AddSingleton(); - services.AddSingleton(); - services.AddSingleton(sp => - { - var connection = sp.GetRequiredService(); - // 这里可以配置多个 Redis 节点提高安全性,单机运行传一个即可 - return RedLockFactory.Create(new List { new RedLockMultiplexer(connection) }); - }); - return services; - } - public static IServiceCollection AddModelValidation(this IServiceCollection services, IConfiguration configuration) - { - services.Configure(options => - { - options.InvalidModelStateResponseFactory = context => - { - var errors = context.ModelState - .Where(e => e.Value.Errors.Count > 0) - .Select(e => new - { - Field = e.Key, - Message = e.Value.Errors.First().ErrorMessage - }); - Console.WriteLine(errors); - return new BadRequestObjectResult(new BaseResponse(CodeDefine.PARAMETER_ERROR.Code, errors.First().Message)); - }; - }); - return services; - } - - } -} +using IM_API.Application.EventHandlers; +using IM_API.Application.Interfaces; +using IM_API.Domain.Events; +using IM_API.Dtos; +using IM_API.Infrastructure.EventBus; +using IM_API.Interface.Services; +using IM_API.Services; +using IM_API.Tools; +using Microsoft.AspNetCore.Http.HttpResults; +using Microsoft.AspNetCore.Mvc; +using RedLockNet; +using RedLockNet.SERedis; +using RedLockNet.SERedis.Configuration; +using StackExchange.Redis; + +namespace IM_API.Configs +{ + public static class ServiceCollectionExtensions + { + public static IServiceCollection AddAllService(this IServiceCollection services, IConfiguration configuration) + { + + services.AddAutoMapper(typeof(MapperConfig)); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddSingleton(); + services.AddSingleton(); + services.AddSingleton(sp => + { + var connection = sp.GetRequiredService(); + // 这里可以配置多个 Redis 节点提高安全性,单机运行传一个即可 + return RedLockFactory.Create(new List { new RedLockMultiplexer(connection) }); + }); + return services; + } + public static IServiceCollection AddModelValidation(this IServiceCollection services, IConfiguration configuration) + { + services.Configure(options => + { + options.InvalidModelStateResponseFactory = context => + { + var errors = context.ModelState + .Where(e => e.Value.Errors.Count > 0) + .Select(e => new + { + Field = e.Key, + Message = e.Value.Errors.First().ErrorMessage + }); + Console.WriteLine(errors); + return new BadRequestObjectResult(new BaseResponse(CodeDefine.PARAMETER_ERROR.Code, errors.First().Message)); + }; + }); + return services; + } + + } +} diff --git a/backend/IM_API/Controllers/AuthController.cs b/backend/IM_API/Controllers/AuthController.cs index 5d17d89..44be0a1 100644 --- a/backend/IM_API/Controllers/AuthController.cs +++ b/backend/IM_API/Controllers/AuthController.cs @@ -1,82 +1,82 @@ -using AutoMapper; -using IM_API.Dtos; -using IM_API.Dtos.Auth; -using IM_API.Dtos.User; -using IM_API.Interface.Services; -using IM_API.Tools; -using IM_API.VOs.Auth; -using Microsoft.AspNetCore.Http; -using Microsoft.AspNetCore.Http.HttpResults; -using Microsoft.AspNetCore.Mvc; -using System.Diagnostics; - -namespace IM_API.Controllers -{ - [Route("api/[controller]/[action]")] - [ApiController] - public class AuthController : ControllerBase - { - private readonly ILogger _logger; - private readonly IAuthService _authService; - private readonly IUserService _userService; - private readonly IJWTService _jwtService; - private readonly IRefreshTokenService _refreshTokenService; - private readonly IConfiguration _configuration; - private IMapper _mapper; - public AuthController(ILogger logger, IAuthService authService, - IJWTService jwtService, IRefreshTokenService refreshTokenService, - IConfiguration configuration,IUserService userService, - IMapper mapper - ) - { - _logger = logger; - _authService = authService; - _jwtService = jwtService; - _refreshTokenService = refreshTokenService; - _configuration = configuration; - _userService = userService; - _mapper = mapper; - } - [HttpPost] - public async Task Login(LoginRequestDto dto) - { - Stopwatch sw = Stopwatch.StartNew(); - var user = await _authService.LoginAsync(dto); - _logger.LogInformation("服务耗时: {ms}ms", sw.ElapsedMilliseconds); - var userInfo = _mapper.Map(user); - _logger.LogInformation("序列化耗时: {ms}ms", sw.ElapsedMilliseconds); - //生成凭证 - (string token,DateTime expiresAt) = _jwtService.CreateAccessTokenForUser(user.Id,user.Username,"user"); - _logger.LogInformation("Token生成耗时: {ms}ms", sw.ElapsedMilliseconds); - //生成刷新凭证 - - string refreshToken = await _refreshTokenService.CreateRefreshTokenAsync(user.Id); - _logger.LogInformation("RefreshToken生成耗时: {ms}ms", sw.ElapsedMilliseconds); - var res = new BaseResponse(new LoginVo(userInfo,token,refreshToken, expiresAt)); - _logger.LogInformation("总耗时: {ms}ms", sw.ElapsedMilliseconds); - return Ok(res); - } - [HttpPost] - public async Task Register(RegisterRequestDto dto) - { - var userInfo = await _authService.RegisterAsync(dto); - var res = new BaseResponse(userInfo); - return Ok(res); - } - [HttpPost] - [ProducesResponseType(typeof(BaseResponse),StatusCodes.Status200OK)] - public async Task Refresh(RefreshDto dto) - { - (bool ok,int userId) = await _refreshTokenService.ValidateRefreshTokenAsync(dto.refreshToken); - if (!ok) - { - var err = new BaseResponse(CodeDefine.AUTH_FAILED); - return Unauthorized(err); - } - var userinfo = await _userService.GetUserInfoAsync(userId); - (string token,DateTime expiresAt) = _jwtService.CreateAccessTokenForUser(userinfo.Id,userinfo.Username,"user"); - var res = new BaseResponse(new LoginVo(userinfo,token, dto.refreshToken, expiresAt)); - return Ok(res); - } - } -} +using AutoMapper; +using IM_API.Dtos; +using IM_API.Dtos.Auth; +using IM_API.Dtos.User; +using IM_API.Interface.Services; +using IM_API.Tools; +using IM_API.VOs.Auth; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Http.HttpResults; +using Microsoft.AspNetCore.Mvc; +using System.Diagnostics; + +namespace IM_API.Controllers +{ + [Route("api/[controller]/[action]")] + [ApiController] + public class AuthController : ControllerBase + { + private readonly ILogger _logger; + private readonly IAuthService _authService; + private readonly IUserService _userService; + private readonly IJWTService _jwtService; + private readonly IRefreshTokenService _refreshTokenService; + private readonly IConfiguration _configuration; + private IMapper _mapper; + public AuthController(ILogger logger, IAuthService authService, + IJWTService jwtService, IRefreshTokenService refreshTokenService, + IConfiguration configuration,IUserService userService, + IMapper mapper + ) + { + _logger = logger; + _authService = authService; + _jwtService = jwtService; + _refreshTokenService = refreshTokenService; + _configuration = configuration; + _userService = userService; + _mapper = mapper; + } + [HttpPost] + public async Task Login(LoginRequestDto dto) + { + Stopwatch sw = Stopwatch.StartNew(); + var user = await _authService.LoginAsync(dto); + _logger.LogInformation("服务耗时: {ms}ms", sw.ElapsedMilliseconds); + var userInfo = _mapper.Map(user); + _logger.LogInformation("序列化耗时: {ms}ms", sw.ElapsedMilliseconds); + //生成凭证 + (string token,DateTime expiresAt) = _jwtService.CreateAccessTokenForUser(user.Id,user.Username,"user"); + _logger.LogInformation("Token生成耗时: {ms}ms", sw.ElapsedMilliseconds); + //生成刷新凭证 + + string refreshToken = await _refreshTokenService.CreateRefreshTokenAsync(user.Id); + _logger.LogInformation("RefreshToken生成耗时: {ms}ms", sw.ElapsedMilliseconds); + var res = new BaseResponse(new LoginVo(userInfo,token,refreshToken, expiresAt)); + _logger.LogInformation("总耗时: {ms}ms", sw.ElapsedMilliseconds); + return Ok(res); + } + [HttpPost] + public async Task Register(RegisterRequestDto dto) + { + var userInfo = await _authService.RegisterAsync(dto); + var res = new BaseResponse(userInfo); + return Ok(res); + } + [HttpPost] + [ProducesResponseType(typeof(BaseResponse),StatusCodes.Status200OK)] + public async Task Refresh(RefreshDto dto) + { + (bool ok,int userId) = await _refreshTokenService.ValidateRefreshTokenAsync(dto.refreshToken); + if (!ok) + { + var err = new BaseResponse(CodeDefine.AUTH_FAILED); + return Unauthorized(err); + } + var userinfo = await _userService.GetUserInfoAsync(userId); + (string token,DateTime expiresAt) = _jwtService.CreateAccessTokenForUser(userinfo.Id,userinfo.Username,"user"); + var res = new BaseResponse(new LoginVo(userinfo,token, dto.refreshToken, expiresAt)); + return Ok(res); + } + } +} diff --git a/backend/IM_API/Controllers/ConversationController.cs b/backend/IM_API/Controllers/ConversationController.cs index 4b72791..c031c4d 100644 --- a/backend/IM_API/Controllers/ConversationController.cs +++ b/backend/IM_API/Controllers/ConversationController.cs @@ -1,56 +1,56 @@ -using IM_API.Dtos; -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.VOs.Conversation; -using Microsoft.AspNetCore.Authorization; -using Microsoft.AspNetCore.Http; -using Microsoft.AspNetCore.Mvc; -using System.Security.Claims; - -namespace IM_API.Controllers -{ - [Route("api/[controller]/[action]")] - [Authorize] - [ApiController] - public class ConversationController : ControllerBase - { - private readonly IConversationService _conversationSerivice; - private readonly ILogger _logger; - public ConversationController(IConversationService conversationSerivice, ILogger logger) - { - _conversationSerivice = conversationSerivice; - _logger = logger; - } - [HttpGet] - public async Task List() - { - var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - var list = await _conversationSerivice.GetConversationsAsync(int.Parse(userIdStr)); - var res = new BaseResponse>(list); - return Ok(res); - } - [HttpGet] - public async Task Get([FromQuery]int conversationId) - { - var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - var conversation = await _conversationSerivice.GetConversationByIdAsync(int.Parse(userIdStr), conversationId); - var res = new BaseResponse(conversation); - return Ok(res); - } - [HttpPost] - public async Task Clear() - { - var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - await _conversationSerivice.ClearConversationsAsync(int.Parse(userIdStr)); - return Ok(new BaseResponse()); - } - [HttpPost] - public async Task Delete(int cid) - { - await _conversationSerivice.DeleteConversationAsync(cid); - return Ok(new BaseResponse()); - } - - - } -} +using IM_API.Dtos; +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.VOs.Conversation; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; +using System.Security.Claims; + +namespace IM_API.Controllers +{ + [Route("api/[controller]/[action]")] + [Authorize] + [ApiController] + public class ConversationController : ControllerBase + { + private readonly IConversationService _conversationSerivice; + private readonly ILogger _logger; + public ConversationController(IConversationService conversationSerivice, ILogger logger) + { + _conversationSerivice = conversationSerivice; + _logger = logger; + } + [HttpGet] + public async Task List() + { + var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + var list = await _conversationSerivice.GetConversationsAsync(int.Parse(userIdStr)); + var res = new BaseResponse>(list); + return Ok(res); + } + [HttpGet] + public async Task Get([FromQuery]int conversationId) + { + var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + var conversation = await _conversationSerivice.GetConversationByIdAsync(int.Parse(userIdStr), conversationId); + var res = new BaseResponse(conversation); + return Ok(res); + } + [HttpPost] + public async Task Clear() + { + var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + await _conversationSerivice.ClearConversationsAsync(int.Parse(userIdStr)); + return Ok(new BaseResponse()); + } + [HttpPost] + public async Task Delete(int cid) + { + await _conversationSerivice.DeleteConversationAsync(cid); + return Ok(new BaseResponse()); + } + + + } +} diff --git a/backend/IM_API/Controllers/FriendController.cs b/backend/IM_API/Controllers/FriendController.cs index ea8c53f..972a31a 100644 --- a/backend/IM_API/Controllers/FriendController.cs +++ b/backend/IM_API/Controllers/FriendController.cs @@ -1,117 +1,117 @@ -using IM_API.Dtos; -using IM_API.Dtos.Friend; -using IM_API.Interface.Services; -using IM_API.Models; -using Microsoft.AspNetCore.Authorization; -using Microsoft.AspNetCore.Http; -using Microsoft.AspNetCore.Mvc; -using System.Security.Claims; - -namespace IM_API.Controllers -{ - [Authorize] - [Route("api/[controller]/[action]")] - [ApiController] - public class FriendController : ControllerBase - { - private readonly IFriendSerivce _friendService; - private readonly ILogger _logger; - public FriendController(IFriendSerivce friendService, ILogger logger) - { - _friendService = friendService; - _logger = logger; - } - /// - /// 发起好友请求 - /// - /// - /// - [HttpPost] - public async Task Request(FriendRequestDto dto) - { - var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - int userId = int.Parse(userIdStr); - dto.FromUserId = userId; - await _friendService.SendFriendRequestAsync(dto); - var res = new BaseResponse(); - return Ok(res); - } - /// - /// 获取好友请求列表 - /// - /// - /// - /// - /// - /// - [HttpGet] - public async Task Requests(int page,int limit,bool desc) - { - var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - int userId = int.Parse(userIdStr); - var list = await _friendService.GetFriendRequestListAsync(userId,page,limit,desc); - var res = new BaseResponse>(list); - return Ok(res); - } - /// - /// 处理好友请求 - /// - /// - /// - /// - [HttpPost] - public async Task HandleRequest( - [FromQuery]int id, [FromBody]FriendRequestHandleDto dto - ) - { - await _friendService.HandleFriendRequestAsync(new HandleFriendRequestDto() - { - RequestId = id, - RemarkName = dto.RemarkName, - Action = dto.Action - }); - var res = new BaseResponse(); - return Ok(res); - } - /// - /// 获取好友列表 - /// - /// - /// - /// - /// - [HttpGet] - public async Task List(int page,int limit,bool desc) - { - var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - int userId = int.Parse(userIdStr); - var list = await _friendService.GetFriendListAsync(userId,page,limit,desc); - var res = new BaseResponse>(list); - return Ok(res); - } - /// - /// 删除好友 - /// - /// - /// - [HttpPost] - public async Task Delete([FromRoute] int friendId) - { - //TODO: 这里存在安全问题,当用户传入的id与用户无关时也可以删除成功,待修复。 - await _friendService.DeleteFriendAsync(friendId); - return Ok(new BaseResponse()); - } - /// - /// 拉黑好友 - /// - /// - /// - [HttpPost] - public async Task Block([FromRoute] int friendId) - { - //TODO: 这里存在安全问题,当用户传入的id与用户无关时也可以拉黑成功,待修复。 - await _friendService.BlockeFriendAsync(friendId); - return Ok(new BaseResponse()); - } - } -} +using IM_API.Dtos; +using IM_API.Dtos.Friend; +using IM_API.Interface.Services; +using IM_API.Models; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; +using System.Security.Claims; + +namespace IM_API.Controllers +{ + [Authorize] + [Route("api/[controller]/[action]")] + [ApiController] + public class FriendController : ControllerBase + { + private readonly IFriendSerivce _friendService; + private readonly ILogger _logger; + public FriendController(IFriendSerivce friendService, ILogger logger) + { + _friendService = friendService; + _logger = logger; + } + /// + /// 发起好友请求 + /// + /// + /// + [HttpPost] + public async Task Request(FriendRequestDto dto) + { + var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + int userId = int.Parse(userIdStr); + dto.FromUserId = userId; + await _friendService.SendFriendRequestAsync(dto); + var res = new BaseResponse(); + return Ok(res); + } + /// + /// 获取好友请求列表 + /// + /// + /// + /// + /// + /// + [HttpGet] + public async Task Requests(int page,int limit,bool desc) + { + var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + int userId = int.Parse(userIdStr); + var list = await _friendService.GetFriendRequestListAsync(userId,page,limit,desc); + var res = new BaseResponse>(list); + return Ok(res); + } + /// + /// 处理好友请求 + /// + /// + /// + /// + [HttpPost] + public async Task HandleRequest( + [FromQuery]int id, [FromBody]FriendRequestHandleDto dto + ) + { + await _friendService.HandleFriendRequestAsync(new HandleFriendRequestDto() + { + RequestId = id, + RemarkName = dto.RemarkName, + Action = dto.Action + }); + var res = new BaseResponse(); + return Ok(res); + } + /// + /// 获取好友列表 + /// + /// + /// + /// + /// + [HttpGet] + public async Task List(int page,int limit,bool desc) + { + var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + int userId = int.Parse(userIdStr); + var list = await _friendService.GetFriendListAsync(userId,page,limit,desc); + var res = new BaseResponse>(list); + return Ok(res); + } + /// + /// 删除好友 + /// + /// + /// + [HttpPost] + public async Task Delete([FromRoute] int friendId) + { + //TODO: 这里存在安全问题,当用户传入的id与用户无关时也可以删除成功,待修复。 + await _friendService.DeleteFriendAsync(friendId); + return Ok(new BaseResponse()); + } + /// + /// 拉黑好友 + /// + /// + /// + [HttpPost] + public async Task Block([FromRoute] int friendId) + { + //TODO: 这里存在安全问题,当用户传入的id与用户无关时也可以拉黑成功,待修复。 + await _friendService.BlockeFriendAsync(friendId); + return Ok(new BaseResponse()); + } + } +} diff --git a/backend/IM_API/Controllers/GroupController.cs b/backend/IM_API/Controllers/GroupController.cs index 0f7582f..2a084ce 100644 --- a/backend/IM_API/Controllers/GroupController.cs +++ b/backend/IM_API/Controllers/GroupController.cs @@ -1,71 +1,71 @@ -using IM_API.Dtos; -using IM_API.Dtos.Group; -using IM_API.Interface.Services; -using Microsoft.AspNetCore.Authorization; -using Microsoft.AspNetCore.Http; -using Microsoft.AspNetCore.Mvc; -using System.Security.Claims; - -namespace IM_API.Controllers -{ - [Authorize] - [Route("api/[controller]/[action]")] - [ApiController] - public class GroupController : ControllerBase - { - private readonly IGroupService _groupService; - private readonly ILogger _logger; - public GroupController(IGroupService groupService, ILogger logger) - { - _groupService = groupService; - _logger = logger; - } - [HttpGet] - [ProducesResponseType(typeof(BaseResponse>) ,StatusCodes.Status200OK)] - public async Task GetGroups(int page = 1, int limit = 100, bool desc = false) - { - var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - var list = await _groupService.GetGroupListAsync(int.Parse(userIdStr), page, limit, desc); - var res = new BaseResponse>(list); - return Ok(res); - } - - [HttpPost] - [ProducesResponseType(typeof(BaseResponse), StatusCodes.Status200OK)] - public async Task CreateGroup([FromBody]GroupCreateDto groupCreateDto) - { - var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - var groupInfo = await _groupService.CreateGroupAsync(int.Parse(userIdStr), groupCreateDto); - var res = new BaseResponse(groupInfo); - return Ok(res); - } - - [HttpPost] - [ProducesResponseType(typeof(BaseResponse), StatusCodes.Status200OK)] - public async Task HandleGroupInvite([FromBody]HandleGroupInviteDto dto) - { - string userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier)!; - await _groupService.HandleGroupInviteAsync(int.Parse(userIdStr), dto); - var res = new BaseResponse(); - return Ok(res); - } - [HttpPost] - [ProducesResponseType(typeof(BaseResponse), StatusCodes.Status200OK)] - public async Task HandleGroupRequest([FromBody]HandleGroupRequestDto dto) - { - string userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - await _groupService.HandleGroupRequestAsync(int.Parse(userIdStr),dto); - var res = new BaseResponse(); - return Ok(res); - } - [HttpPost] - [ProducesResponseType(typeof(BaseResponse), StatusCodes.Status200OK)] - public async Task InviteUser([FromBody]GroupInviteUserDto dto) - { - string userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - await _groupService.InviteUsersAsync(int.Parse(userIdStr), dto.GroupId, dto.Ids); - var res = new BaseResponse(); - return Ok(res); - } - } -} +using IM_API.Dtos; +using IM_API.Dtos.Group; +using IM_API.Interface.Services; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; +using System.Security.Claims; + +namespace IM_API.Controllers +{ + [Authorize] + [Route("api/[controller]/[action]")] + [ApiController] + public class GroupController : ControllerBase + { + private readonly IGroupService _groupService; + private readonly ILogger _logger; + public GroupController(IGroupService groupService, ILogger logger) + { + _groupService = groupService; + _logger = logger; + } + [HttpGet] + [ProducesResponseType(typeof(BaseResponse>) ,StatusCodes.Status200OK)] + public async Task GetGroups(int page = 1, int limit = 100, bool desc = false) + { + var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + var list = await _groupService.GetGroupListAsync(int.Parse(userIdStr), page, limit, desc); + var res = new BaseResponse>(list); + return Ok(res); + } + + [HttpPost] + [ProducesResponseType(typeof(BaseResponse), StatusCodes.Status200OK)] + public async Task CreateGroup([FromBody]GroupCreateDto groupCreateDto) + { + var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + var groupInfo = await _groupService.CreateGroupAsync(int.Parse(userIdStr), groupCreateDto); + var res = new BaseResponse(groupInfo); + return Ok(res); + } + + [HttpPost] + [ProducesResponseType(typeof(BaseResponse), StatusCodes.Status200OK)] + public async Task HandleGroupInvite([FromBody]HandleGroupInviteDto dto) + { + string userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier)!; + await _groupService.HandleGroupInviteAsync(int.Parse(userIdStr), dto); + var res = new BaseResponse(); + return Ok(res); + } + [HttpPost] + [ProducesResponseType(typeof(BaseResponse), StatusCodes.Status200OK)] + public async Task HandleGroupRequest([FromBody]HandleGroupRequestDto dto) + { + string userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + await _groupService.HandleGroupRequestAsync(int.Parse(userIdStr),dto); + var res = new BaseResponse(); + return Ok(res); + } + [HttpPost] + [ProducesResponseType(typeof(BaseResponse), StatusCodes.Status200OK)] + public async Task InviteUser([FromBody]GroupInviteUserDto dto) + { + string userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + await _groupService.InviteUsersAsync(int.Parse(userIdStr), dto.GroupId, dto.Ids); + var res = new BaseResponse(); + return Ok(res); + } + } +} diff --git a/backend/IM_API/Controllers/MessageController.cs b/backend/IM_API/Controllers/MessageController.cs index be09207..18ec5de 100644 --- a/backend/IM_API/Controllers/MessageController.cs +++ b/backend/IM_API/Controllers/MessageController.cs @@ -1,55 +1,55 @@ -using IM_API.Application.Interfaces; -using IM_API.Domain.Events; -using IM_API.Dtos; -using IM_API.Dtos.Message; -using IM_API.Interface.Services; -using IM_API.VOs.Message; -using Microsoft.AspNetCore.Authorization; -using Microsoft.AspNetCore.Http; -using Microsoft.AspNetCore.Mvc; -using System.ComponentModel.DataAnnotations; -using System.Security.Claims; - -namespace IM_API.Controllers -{ - [Authorize] - [Route("api/[controller]/[action]")] - [ApiController] - public class MessageController : ControllerBase - { - private readonly IMessageSevice _messageService; - private readonly ILogger _logger; - private readonly IEventBus _eventBus; - public MessageController(IMessageSevice messageService, ILogger logger, IEventBus eventBus) - { - _messageService = messageService; - _logger = logger; - _eventBus = eventBus; - } - [HttpPost] - [ProducesResponseType(typeof(BaseResponse), StatusCodes.Status200OK)] - public async Task SendMessage(MessageBaseDto dto) - { - var userIdstr = User.FindFirstValue(ClaimTypes.NameIdentifier); - MessageBaseVo messageBaseVo = new MessageBaseVo(); - if(dto.ChatType == Models.ChatType.PRIVATE) - { - messageBaseVo = await _messageService.SendPrivateMessageAsync(int.Parse(userIdstr), dto.ReceiverId, dto); - } - else - { - messageBaseVo = await _messageService.SendGroupMessageAsync(int.Parse(userIdstr), dto.ReceiverId, dto); - } - return Ok(new BaseResponse(messageBaseVo)); - } - [HttpGet] - [ProducesResponseType(typeof(BaseResponse>), StatusCodes.Status200OK)] - public async Task GetMessageList([FromQuery]MessageQueryDto dto) - { - var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - var msgList = await _messageService.GetMessagesAsync(int.Parse(userIdStr),dto); - var res = new BaseResponse>(msgList); - return Ok(res); - } - } -} +using IM_API.Application.Interfaces; +using IM_API.Domain.Events; +using IM_API.Dtos; +using IM_API.Dtos.Message; +using IM_API.Interface.Services; +using IM_API.VOs.Message; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; +using System.ComponentModel.DataAnnotations; +using System.Security.Claims; + +namespace IM_API.Controllers +{ + [Authorize] + [Route("api/[controller]/[action]")] + [ApiController] + public class MessageController : ControllerBase + { + private readonly IMessageSevice _messageService; + private readonly ILogger _logger; + private readonly IEventBus _eventBus; + public MessageController(IMessageSevice messageService, ILogger logger, IEventBus eventBus) + { + _messageService = messageService; + _logger = logger; + _eventBus = eventBus; + } + [HttpPost] + [ProducesResponseType(typeof(BaseResponse), StatusCodes.Status200OK)] + public async Task SendMessage(MessageBaseDto dto) + { + var userIdstr = User.FindFirstValue(ClaimTypes.NameIdentifier); + MessageBaseVo messageBaseVo = new MessageBaseVo(); + if(dto.ChatType == Models.ChatType.PRIVATE) + { + messageBaseVo = await _messageService.SendPrivateMessageAsync(int.Parse(userIdstr), dto.ReceiverId, dto); + } + else + { + messageBaseVo = await _messageService.SendGroupMessageAsync(int.Parse(userIdstr), dto.ReceiverId, dto); + } + return Ok(new BaseResponse(messageBaseVo)); + } + [HttpGet] + [ProducesResponseType(typeof(BaseResponse>), StatusCodes.Status200OK)] + public async Task GetMessageList([FromQuery]MessageQueryDto dto) + { + var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + var msgList = await _messageService.GetMessagesAsync(int.Parse(userIdStr),dto); + var res = new BaseResponse>(msgList); + return Ok(res); + } + } +} diff --git a/backend/IM_API/Controllers/UserController.cs b/backend/IM_API/Controllers/UserController.cs index f4b4c3a..8aad5de 100644 --- a/backend/IM_API/Controllers/UserController.cs +++ b/backend/IM_API/Controllers/UserController.cs @@ -1,114 +1,114 @@ -using IM_API.Dtos; -using IM_API.Dtos.User; -using IM_API.Interface.Services; -using IM_API.Tools; -using Microsoft.AspNetCore.Authorization; -using Microsoft.AspNetCore.Http; -using Microsoft.AspNetCore.Mvc; -using System.ComponentModel.DataAnnotations; -using System.IdentityModel.Tokens.Jwt; -using System.Security.Claims; - -namespace IM_API.Controllers -{ - [Authorize] - [Route("api/[controller]/[action]")] - [ApiController] - public class UserController : ControllerBase - { - private readonly IUserService _userService; - private readonly ILogger _logger; - public UserController(IUserService userService, ILogger logger) - { - _userService = userService; - _logger = logger; - } - /// - /// 获取当前用户信息 - /// - /// - [HttpGet] - public async Task Me() - { - var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - int userId = int.Parse(userIdStr); - var userinfo = await _userService.GetUserInfoAsync(userId); - var res = new BaseResponse(userinfo); - return Ok(res); - } - /// - /// 修改用户资料 - /// - /// - /// - [HttpPost] - public async Task Profile(UpdateUserDto dto) - { - var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - int userId = int.Parse(userIdStr); - var userinfo = await _userService.UpdateUserAsync(userId, dto); - var res = new BaseResponse(userinfo); - return Ok(res); - - } - /// - /// ID查询用户 - /// - /// - /// - [HttpGet] - public async Task Find(int userId) - { - var userinfo = await _userService.GetUserInfoAsync(userId); - var res = new BaseResponse(userinfo); - return Ok(res); - } - /// - /// 用户名查询用户 - /// - /// - /// - [HttpGet] - public async Task FindByUsername(string username) - { - var userinfo = await _userService.GetUserInfoByUsernameAsync(username); - var res = new BaseResponse(userinfo); - return Ok(res); - } - /// - /// 重置用户密码 - /// - /// - /// - [HttpPost] - public async Task ResetPassword(PasswordResetDto dto) - { - var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - int userId = int.Parse(userIdStr); - await _userService.ResetPasswordAsync(userId, dto.OldPassword, dto.Password); - return Ok(new BaseResponse()); - } - /// - /// 设置在线状态 - /// - /// - /// - [HttpPost] - public async Task SetOnlineStatus(OnlineStatusSetDto dto) - { - var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); - int userId = int.Parse(userIdStr); - await _userService.UpdateOlineStatusAsync(userId, dto.OnlineStatus); - return Ok(new BaseResponse()); - } - - [HttpPost] - [ProducesResponseType(typeof(BaseResponse>), StatusCodes.Status200OK)] - public async Task GetUserList([FromBody][Required]List ids) - { - var users = await _userService.GetUserInfoListAsync(ids); - var res = new BaseResponse>(users); - return Ok(res); - } - } -} +using IM_API.Dtos; +using IM_API.Dtos.User; +using IM_API.Interface.Services; +using IM_API.Tools; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; +using System.ComponentModel.DataAnnotations; +using System.IdentityModel.Tokens.Jwt; +using System.Security.Claims; + +namespace IM_API.Controllers +{ + [Authorize] + [Route("api/[controller]/[action]")] + [ApiController] + public class UserController : ControllerBase + { + private readonly IUserService _userService; + private readonly ILogger _logger; + public UserController(IUserService userService, ILogger logger) + { + _userService = userService; + _logger = logger; + } + /// + /// 获取当前用户信息 + /// + /// + [HttpGet] + public async Task Me() + { + var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + int userId = int.Parse(userIdStr); + var userinfo = await _userService.GetUserInfoAsync(userId); + var res = new BaseResponse(userinfo); + return Ok(res); + } + /// + /// 修改用户资料 + /// + /// + /// + [HttpPost] + public async Task Profile(UpdateUserDto dto) + { + var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + int userId = int.Parse(userIdStr); + var userinfo = await _userService.UpdateUserAsync(userId, dto); + var res = new BaseResponse(userinfo); + return Ok(res); + + } + /// + /// ID查询用户 + /// + /// + /// + [HttpGet] + public async Task Find(int userId) + { + var userinfo = await _userService.GetUserInfoAsync(userId); + var res = new BaseResponse(userinfo); + return Ok(res); + } + /// + /// 用户名查询用户 + /// + /// + /// + [HttpGet] + public async Task FindByUsername(string username) + { + var userinfo = await _userService.GetUserInfoByUsernameAsync(username); + var res = new BaseResponse(userinfo); + return Ok(res); + } + /// + /// 重置用户密码 + /// + /// + /// + [HttpPost] + public async Task ResetPassword(PasswordResetDto dto) + { + var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + int userId = int.Parse(userIdStr); + await _userService.ResetPasswordAsync(userId, dto.OldPassword, dto.Password); + return Ok(new BaseResponse()); + } + /// + /// 设置在线状态 + /// + /// + /// + [HttpPost] + public async Task SetOnlineStatus(OnlineStatusSetDto dto) + { + var userIdStr = User.FindFirstValue(ClaimTypes.NameIdentifier); + int userId = int.Parse(userIdStr); + await _userService.UpdateOlineStatusAsync(userId, dto.OnlineStatus); + return Ok(new BaseResponse()); + } + + [HttpPost] + [ProducesResponseType(typeof(BaseResponse>), StatusCodes.Status200OK)] + public async Task GetUserList([FromBody][Required]List ids) + { + var users = await _userService.GetUserInfoListAsync(ids); + var res = new BaseResponse>(users); + return Ok(res); + } + } +} diff --git a/backend/IM_API/Dockerfile b/backend/IM_API/Dockerfile index 3d03d53..06be2ad 100644 --- a/backend/IM_API/Dockerfile +++ b/backend/IM_API/Dockerfile @@ -1,30 +1,30 @@ -# 请参阅 https://aka.ms/customizecontainer 以了解如何自定义调试容器,以及 Visual Studio 如何使用此 Dockerfile 生成映像以更快地进行调试。 - -# 此阶段用于在快速模式(默认为调试配置)下从 VS 运行时 -FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base -USER $APP_UID -WORKDIR /app -EXPOSE 8080 -EXPOSE 8081 - - -# 此阶段用于生成服务项目 -FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build -ARG BUILD_CONFIGURATION=Release -WORKDIR /src -COPY ["IM_API.csproj", "."] -RUN dotnet restore "./IM_API.csproj" -COPY . . -WORKDIR "/src/." -RUN dotnet build "./IM_API.csproj" -c $BUILD_CONFIGURATION -o /app/build - -# 此阶段用于发布要复制到最终阶段的服务项目 -FROM build AS publish -ARG BUILD_CONFIGURATION=Release -RUN dotnet publish "./IM_API.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false - -# 此阶段在生产中使用,或在常规模式下从 VS 运行时使用(在不使用调试配置时为默认值) -FROM base AS final -WORKDIR /app -COPY --from=publish /app/publish . +# 请参阅 https://aka.ms/customizecontainer 以了解如何自定义调试容器,以及 Visual Studio 如何使用此 Dockerfile 生成映像以更快地进行调试。 + +# 此阶段用于在快速模式(默认为调试配置)下从 VS 运行时 +FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base +USER $APP_UID +WORKDIR /app +EXPOSE 8080 +EXPOSE 8081 + + +# 此阶段用于生成服务项目 +FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build +ARG BUILD_CONFIGURATION=Release +WORKDIR /src +COPY ["IM_API.csproj", "."] +RUN dotnet restore "./IM_API.csproj" +COPY . . +WORKDIR "/src/." +RUN dotnet build "./IM_API.csproj" -c $BUILD_CONFIGURATION -o /app/build + +# 此阶段用于发布要复制到最终阶段的服务项目 +FROM build AS publish +ARG BUILD_CONFIGURATION=Release +RUN dotnet publish "./IM_API.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false + +# 此阶段在生产中使用,或在常规模式下从 VS 运行时使用(在不使用调试配置时为默认值) +FROM base AS final +WORKDIR /app +COPY --from=publish /app/publish . ENTRYPOINT ["dotnet", "IM_API.dll"] \ No newline at end of file diff --git a/backend/IM_API/Domain/Events/DomainEvent.cs b/backend/IM_API/Domain/Events/DomainEvent.cs index 3f2b8df..52ef606 100644 --- a/backend/IM_API/Domain/Events/DomainEvent.cs +++ b/backend/IM_API/Domain/Events/DomainEvent.cs @@ -1,13 +1,13 @@ -using IM_API.Domain.Interfaces; - -namespace IM_API.Domain.Events -{ - public abstract record DomainEvent: IEvent - { - public Guid EventId { get; init; } = Guid.NewGuid(); - public DateTimeOffset OccurredAt { get; init; } = DateTime.Now; - public long OperatorId { get; init; } - public string AggregateId { get; init; } = ""; - public abstract string EventType { get; } - } -} +using IM_API.Domain.Interfaces; + +namespace IM_API.Domain.Events +{ + public abstract record DomainEvent: IEvent + { + public Guid EventId { get; init; } = Guid.NewGuid(); + public DateTimeOffset OccurredAt { get; init; } = DateTime.Now; + public long OperatorId { get; init; } + public string AggregateId { get; init; } = ""; + public abstract string EventType { get; } + } +} diff --git a/backend/IM_API/Domain/Events/FriendAddEvent.cs b/backend/IM_API/Domain/Events/FriendAddEvent.cs index 6724f6c..cc834b1 100644 --- a/backend/IM_API/Domain/Events/FriendAddEvent.cs +++ b/backend/IM_API/Domain/Events/FriendAddEvent.cs @@ -1,25 +1,25 @@ -using IM_API.Dtos.Friend; - -namespace IM_API.Domain.Events -{ - public record FriendAddEvent:DomainEvent - { - public override string EventType => "IM.FRIENDS_FRIEND_ADD"; - /// - /// 发起请求用户 - /// - public int RequestUserId { get; init; } - public string? requestUserRemarkname { get; init; } - /// - /// 接受请求用户 - /// - public int ResponseUserId { get; init; } - - public FriendRequestDto RequestInfo { get; init; } - /// - /// 好友关系创建时间 - /// - public DateTimeOffset Created { get; init; } - - } -} +using IM_API.Dtos.Friend; + +namespace IM_API.Domain.Events +{ + public record FriendAddEvent:DomainEvent + { + public override string EventType => "IM.FRIENDS_FRIEND_ADD"; + /// + /// 发起请求用户 + /// + public int RequestUserId { get; init; } + public string? requestUserRemarkname { get; init; } + /// + /// 接受请求用户 + /// + public int ResponseUserId { get; init; } + + public FriendRequestDto RequestInfo { get; init; } + /// + /// 好友关系创建时间 + /// + public DateTimeOffset Created { get; init; } + + } +} diff --git a/backend/IM_API/Domain/Events/GroupInviteActionUpdateEvent.cs b/backend/IM_API/Domain/Events/GroupInviteActionUpdateEvent.cs index 3368dfe..1b1deac 100644 --- a/backend/IM_API/Domain/Events/GroupInviteActionUpdateEvent.cs +++ b/backend/IM_API/Domain/Events/GroupInviteActionUpdateEvent.cs @@ -1,14 +1,14 @@ -using IM_API.Models; - -namespace IM_API.Domain.Events -{ - public record GroupInviteActionUpdateEvent : DomainEvent - { - public override string EventType => "IM.GROUPS_INVITE_UPDATE"; - public int UserId { get; set; } - public int InviteUserId { get; set; } - public int InviteId { get; set; } - public int GroupId { get; set; } - public GroupInviteState Action { get; set; } - } -} +using IM_API.Models; + +namespace IM_API.Domain.Events +{ + public record GroupInviteActionUpdateEvent : DomainEvent + { + public override string EventType => "IM.GROUPS_INVITE_UPDATE"; + public int UserId { get; set; } + public int InviteUserId { get; set; } + public int InviteId { get; set; } + public int GroupId { get; set; } + public GroupInviteState Action { get; set; } + } +} diff --git a/backend/IM_API/Domain/Events/GroupInviteEvent.cs b/backend/IM_API/Domain/Events/GroupInviteEvent.cs index 3b2ebde..6822875 100644 --- a/backend/IM_API/Domain/Events/GroupInviteEvent.cs +++ b/backend/IM_API/Domain/Events/GroupInviteEvent.cs @@ -1,10 +1,10 @@ -namespace IM_API.Domain.Events -{ - public record GroupInviteEvent : DomainEvent - { - public override string EventType => "IM.GROUPS_INVITE_ADD"; - public required List Ids { get; init; } - public int GroupId { get; init; } - public int UserId { get; init; } - } -} +namespace IM_API.Domain.Events +{ + public record GroupInviteEvent : DomainEvent + { + public override string EventType => "IM.GROUPS_INVITE_ADD"; + public required List Ids { get; init; } + public int GroupId { get; init; } + public int UserId { get; init; } + } +} diff --git a/backend/IM_API/Domain/Events/GroupJoinEvent.cs b/backend/IM_API/Domain/Events/GroupJoinEvent.cs index a73cc3c..4358bb0 100644 --- a/backend/IM_API/Domain/Events/GroupJoinEvent.cs +++ b/backend/IM_API/Domain/Events/GroupJoinEvent.cs @@ -1,10 +1,10 @@ -namespace IM_API.Domain.Events -{ - public record GroupJoinEvent : DomainEvent - { - public override string EventType => "IM.GROUPS_MEMBER_ADD"; - public int UserId { get; set; } - public int GroupId { get; set; } - public bool IsCreated { get; set; } = false; - } -} +namespace IM_API.Domain.Events +{ + public record GroupJoinEvent : DomainEvent + { + public override string EventType => "IM.GROUPS_MEMBER_ADD"; + public int UserId { get; set; } + public int GroupId { get; set; } + public bool IsCreated { get; set; } = false; + } +} diff --git a/backend/IM_API/Domain/Events/GroupRequestEvent.cs b/backend/IM_API/Domain/Events/GroupRequestEvent.cs index ade919d..4ed97a7 100644 --- a/backend/IM_API/Domain/Events/GroupRequestEvent.cs +++ b/backend/IM_API/Domain/Events/GroupRequestEvent.cs @@ -1,15 +1,15 @@ -using IM_API.Dtos.Group; -using IM_API.Models; - -namespace IM_API.Domain.Events -{ - public record GroupRequestEvent : DomainEvent - { - public override string EventType => "IM.GROUPS_GROUP_REQUEST"; - public int GroupId { get; init; } - public int UserId { get; set; } - public string Description { get; set; } - public GroupRequestState Action { get; set; } - - } -} +using IM_API.Dtos.Group; +using IM_API.Models; + +namespace IM_API.Domain.Events +{ + public record GroupRequestEvent : DomainEvent + { + public override string EventType => "IM.GROUPS_GROUP_REQUEST"; + public int GroupId { get; init; } + public int UserId { get; set; } + public string Description { get; set; } + public GroupRequestState Action { get; set; } + + } +} diff --git a/backend/IM_API/Domain/Events/GroupRequestUpdateEvent.cs b/backend/IM_API/Domain/Events/GroupRequestUpdateEvent.cs index 579dbda..60d535b 100644 --- a/backend/IM_API/Domain/Events/GroupRequestUpdateEvent.cs +++ b/backend/IM_API/Domain/Events/GroupRequestUpdateEvent.cs @@ -1,14 +1,14 @@ -using IM_API.Models; - -namespace IM_API.Domain.Events -{ - public record GroupRequestUpdateEvent : DomainEvent - { - public override string EventType => "IM.GROUPS_REQUEST_UPDATE"; - public int UserId { get; set; } - public int GroupId { get; set; } - public int AdminUserId { get; set; } - public int RequestId { get; set; } - public GroupRequestState Action { get; set; } - } -} +using IM_API.Models; + +namespace IM_API.Domain.Events +{ + public record GroupRequestUpdateEvent : DomainEvent + { + public override string EventType => "IM.GROUPS_REQUEST_UPDATE"; + public int UserId { get; set; } + public int GroupId { get; set; } + public int AdminUserId { get; set; } + public int RequestId { get; set; } + public GroupRequestState Action { get; set; } + } +} diff --git a/backend/IM_API/Domain/Events/MessageCreatedEvent.cs b/backend/IM_API/Domain/Events/MessageCreatedEvent.cs index b35e1c0..d43c310 100644 --- a/backend/IM_API/Domain/Events/MessageCreatedEvent.cs +++ b/backend/IM_API/Domain/Events/MessageCreatedEvent.cs @@ -1,23 +1,23 @@ -using IM_API.Dtos; -using IM_API.Models; - -namespace IM_API.Domain.Events -{ - public record MessageCreatedEvent : DomainEvent - { - public override string EventType => "IM.MESSAGE.MESSAGE_CREATED"; - public ChatType ChatType { get; set; } - public MessageMsgType MessageMsgType { get; set; } - public long SequenceId { get; set; } - public string MessageContent { get; set; } - public int MsgSenderId { get; set; } - public int MsgRecipientId { get; set; } - public MessageState State { get; set; } - public DateTimeOffset MessageCreated { get; set; } - public string StreamKey { get; set; } - public Guid ClientMsgId { get; set; } - - - - } -} +using IM_API.Dtos; +using IM_API.Models; + +namespace IM_API.Domain.Events +{ + public record MessageCreatedEvent : DomainEvent + { + public override string EventType => "IM.MESSAGE.MESSAGE_CREATED"; + public ChatType ChatType { get; set; } + public MessageMsgType MessageMsgType { get; set; } + public long SequenceId { get; set; } + public string MessageContent { get; set; } + public int MsgSenderId { get; set; } + public int MsgRecipientId { get; set; } + public MessageState State { get; set; } + public DateTimeOffset MessageCreated { get; set; } + public string StreamKey { get; set; } + public Guid ClientMsgId { get; set; } + + + + } +} diff --git a/backend/IM_API/Domain/Events/RequestFriendEvent.cs b/backend/IM_API/Domain/Events/RequestFriendEvent.cs index 62a80ce..7f9f00c 100644 --- a/backend/IM_API/Domain/Events/RequestFriendEvent.cs +++ b/backend/IM_API/Domain/Events/RequestFriendEvent.cs @@ -1,10 +1,10 @@ -namespace IM_API.Domain.Events -{ - public record RequestFriendEvent : DomainEvent - { - public override string EventType => "IM.FRIENDS_FRIEND_REQUEST"; - public int FromUserId { get; init; } - public int ToUserId { get; init; } - public string Description { get; init; } - } -} +namespace IM_API.Domain.Events +{ + public record RequestFriendEvent : DomainEvent + { + public override string EventType => "IM.FRIENDS_FRIEND_REQUEST"; + public int FromUserId { get; init; } + public int ToUserId { get; init; } + public string Description { get; init; } + } +} diff --git a/backend/IM_API/Domain/Interfaces/IEvent.cs b/backend/IM_API/Domain/Interfaces/IEvent.cs index d3fc5a3..2f5a36b 100644 --- a/backend/IM_API/Domain/Interfaces/IEvent.cs +++ b/backend/IM_API/Domain/Interfaces/IEvent.cs @@ -1,6 +1,6 @@ -namespace IM_API.Domain.Interfaces -{ - public interface IEvent - { - } -} +namespace IM_API.Domain.Interfaces +{ + public interface IEvent + { + } +} diff --git a/backend/IM_API/Dtos/Auth/AuthDto.cs b/backend/IM_API/Dtos/Auth/AuthDto.cs index 27b95a7..41ba716 100644 --- a/backend/IM_API/Dtos/Auth/AuthDto.cs +++ b/backend/IM_API/Dtos/Auth/AuthDto.cs @@ -1,4 +1,4 @@ -namespace IM_API.Dtos.Auth -{ - public record RefreshDto(string refreshToken); -} +namespace IM_API.Dtos.Auth +{ + public record RefreshDto(string refreshToken); +} diff --git a/backend/IM_API/Dtos/Auth/LoginRequestDto.cs b/backend/IM_API/Dtos/Auth/LoginRequestDto.cs index f4d7e0f..a559737 100644 --- a/backend/IM_API/Dtos/Auth/LoginRequestDto.cs +++ b/backend/IM_API/Dtos/Auth/LoginRequestDto.cs @@ -1,17 +1,17 @@ -using IM_API.Tools; -using System.ComponentModel.DataAnnotations; - -namespace IM_API.Dtos.Auth -{ - public class LoginRequestDto - { - [Required(ErrorMessage = "用户名不能为空")] - [StringLength(20, ErrorMessage = "用户名不能超过20字符")] - [RegularExpression(@"^[A-Za-z0-9]+$",ErrorMessage = "用户名只能为英文或数字")] - public string Username { get; set; } - - [Required(ErrorMessage = "密码不能为空")] - [StringLength(50, ErrorMessage = "密码不能超过50字符")] - public string Password { get; set; } - } -} +using IM_API.Tools; +using System.ComponentModel.DataAnnotations; + +namespace IM_API.Dtos.Auth +{ + public class LoginRequestDto + { + [Required(ErrorMessage = "用户名不能为空")] + [StringLength(20, ErrorMessage = "用户名不能超过20字符")] + [RegularExpression(@"^[A-Za-z0-9]+$",ErrorMessage = "用户名只能为英文或数字")] + public string Username { get; set; } + + [Required(ErrorMessage = "密码不能为空")] + [StringLength(50, ErrorMessage = "密码不能超过50字符")] + public string Password { get; set; } + } +} diff --git a/backend/IM_API/Dtos/Auth/RegisterRequestDto.cs b/backend/IM_API/Dtos/Auth/RegisterRequestDto.cs index c32dd87..0499f1a 100644 --- a/backend/IM_API/Dtos/Auth/RegisterRequestDto.cs +++ b/backend/IM_API/Dtos/Auth/RegisterRequestDto.cs @@ -1,19 +1,19 @@ -using System.ComponentModel.DataAnnotations; - -namespace IM_API.Dtos.Auth -{ - public class RegisterRequestDto - { - [Required(ErrorMessage = "用户名不能为空")] - [MaxLength(20, ErrorMessage = "用户名不能超过20字符")] - [RegularExpression(@"^[A-Za-z0-9]+$", ErrorMessage = "用户名只能为英文或数字")] - public string Username { get; set; } - [Required(ErrorMessage = "密码不能为空")] - [MaxLength(50, ErrorMessage = "密码不能超过50字符")] - public string Password { get; set; } - [Required(ErrorMessage = "昵称不能为空")] - [MaxLength(20, ErrorMessage = "昵称不能超过20字符")] - - public string? NickName { get; set; } - } -} +using System.ComponentModel.DataAnnotations; + +namespace IM_API.Dtos.Auth +{ + public class RegisterRequestDto + { + [Required(ErrorMessage = "用户名不能为空")] + [MaxLength(20, ErrorMessage = "用户名不能超过20字符")] + [RegularExpression(@"^[A-Za-z0-9]+$", ErrorMessage = "用户名只能为英文或数字")] + public string Username { get; set; } + [Required(ErrorMessage = "密码不能为空")] + [MaxLength(50, ErrorMessage = "密码不能超过50字符")] + public string Password { get; set; } + [Required(ErrorMessage = "昵称不能为空")] + [MaxLength(20, ErrorMessage = "昵称不能超过20字符")] + + public string? NickName { get; set; } + } +} diff --git a/backend/IM_API/Dtos/BaseResponse.cs b/backend/IM_API/Dtos/BaseResponse.cs index fb34f0f..53fc5cd 100644 --- a/backend/IM_API/Dtos/BaseResponse.cs +++ b/backend/IM_API/Dtos/BaseResponse.cs @@ -1,82 +1,82 @@ -using IM_API.Tools; - -namespace IM_API.Dtos -{ - public class BaseResponse - { - //响应状态码 - public int Code { get; set; } - //响应消息 - public string Message { get; set; } - //响应数据 - public T? Data { get; set; } - /// - /// 默认成功响应返回 - /// - /// - /// - public BaseResponse(string msg,T data) - { - this.Code = 0; - this.Message = msg; - this.Data = data; - } - /// - /// 默认成功响应返回仅数据 - /// - /// - public BaseResponse(T data) - { - this.Code = CodeDefine.SUCCESS.Code; - this.Message = CodeDefine.SUCCESS.Message; - this.Data = data; - } - /// - /// 默认成功响应返回,不带数据 - /// - /// - /// - public BaseResponse(string msg) - { - this.Code = CodeDefine.SUCCESS.Code; - this.Message = msg; - } - /// - /// 非成功响应且带数据 - /// - /// - /// - /// - public BaseResponse(int code, string message, T? data) - { - Code = code; - Message = message; - Data = data; - } - /// - /// 非成功响应且不带数据 - /// - /// - /// - /// - public BaseResponse(int code, string message) - { - Code = code; - Message = message; - } - /// - /// 接受codedefine对象 - /// - /// - public BaseResponse(CodeDefine codeDefine) - { - this.Code = codeDefine.Code; - this.Message = codeDefine.Message; - } - public BaseResponse() - { - this.Code = CodeDefine.SUCCESS.Code; - this.Message = CodeDefine.SUCCESS.Message; - } - } -} +using IM_API.Tools; + +namespace IM_API.Dtos +{ + public class BaseResponse + { + //响应状态码 + public int Code { get; set; } + //响应消息 + public string Message { get; set; } + //响应数据 + public T? Data { get; set; } + /// + /// 默认成功响应返回 + /// + /// + /// + public BaseResponse(string msg,T data) + { + this.Code = 0; + this.Message = msg; + this.Data = data; + } + /// + /// 默认成功响应返回仅数据 + /// + /// + public BaseResponse(T data) + { + this.Code = CodeDefine.SUCCESS.Code; + this.Message = CodeDefine.SUCCESS.Message; + this.Data = data; + } + /// + /// 默认成功响应返回,不带数据 + /// + /// + /// + public BaseResponse(string msg) + { + this.Code = CodeDefine.SUCCESS.Code; + this.Message = msg; + } + /// + /// 非成功响应且带数据 + /// + /// + /// + /// + public BaseResponse(int code, string message, T? data) + { + Code = code; + Message = message; + Data = data; + } + /// + /// 非成功响应且不带数据 + /// + /// + /// + /// + public BaseResponse(int code, string message) + { + Code = code; + Message = message; + } + /// + /// 接受codedefine对象 + /// + /// + public BaseResponse(CodeDefine codeDefine) + { + this.Code = codeDefine.Code; + this.Message = codeDefine.Message; + } + public BaseResponse() + { + this.Code = CodeDefine.SUCCESS.Code; + this.Message = CodeDefine.SUCCESS.Message; + } + } +} diff --git a/backend/IM_API/Dtos/Conversation/ClearConversationsDto.cs b/backend/IM_API/Dtos/Conversation/ClearConversationsDto.cs index fe1067d..30ef2e0 100644 --- a/backend/IM_API/Dtos/Conversation/ClearConversationsDto.cs +++ b/backend/IM_API/Dtos/Conversation/ClearConversationsDto.cs @@ -1,26 +1,26 @@ -namespace IM_API.Dtos.Conversation -{ - public class ClearConversationsDto - { - public int UserId { get; set; } - /// - /// 聊天类型 - /// - public MsgChatType ChatType { get; set; } - /// - /// 目标ID,聊天类型为群则为群id,私聊为用户id - /// - public int TargetId { get; set; } - } - public enum MsgChatType - { - /// - /// 私聊 - /// - single = 0, - /// - /// 私聊 - /// - group = 1 - } -} +namespace IM_API.Dtos.Conversation +{ + public class ClearConversationsDto + { + public int UserId { get; set; } + /// + /// 聊天类型 + /// + public MsgChatType ChatType { get; set; } + /// + /// 目标ID,聊天类型为群则为群id,私聊为用户id + /// + public int TargetId { get; set; } + } + public enum MsgChatType + { + /// + /// 私聊 + /// + single = 0, + /// + /// 私聊 + /// + group = 1 + } +} diff --git a/backend/IM_API/Dtos/Conversation/UpdateConversationDto.cs b/backend/IM_API/Dtos/Conversation/UpdateConversationDto.cs index 8313a12..e4a740f 100644 --- a/backend/IM_API/Dtos/Conversation/UpdateConversationDto.cs +++ b/backend/IM_API/Dtos/Conversation/UpdateConversationDto.cs @@ -1,12 +1,12 @@ -namespace IM_API.Dtos.Conversation -{ - public class UpdateConversationDto - { - public string StreamKey { get; set; } - public int SenderId { get; set; } - public int ReceiptId { get; set; } - public string LastMessage { get; set; } - public long LastSequenceId { get; set; } - public DateTimeOffset DateTime { get; set; } - } -} +namespace IM_API.Dtos.Conversation +{ + public class UpdateConversationDto + { + public string StreamKey { get; set; } + public int SenderId { get; set; } + public int ReceiptId { get; set; } + public string LastMessage { get; set; } + public long LastSequenceId { get; set; } + public DateTimeOffset DateTime { get; set; } + } +} diff --git a/backend/IM_API/Dtos/Friend/FriendDto.cs b/backend/IM_API/Dtos/Friend/FriendDto.cs index f0d5269..3c9f476 100644 --- a/backend/IM_API/Dtos/Friend/FriendDto.cs +++ b/backend/IM_API/Dtos/Friend/FriendDto.cs @@ -1,33 +1,33 @@ -using IM_API.Dtos.User; -using IM_API.Models; -using System.ComponentModel.DataAnnotations; - -namespace IM_API.Dtos.Friend -{ - public record FriendInfoDto - { - public int Id { get; init; } - - public int UserId { get; init; } - - public int FriendId { get; init; } - - public FriendStatus StatusEnum { get; init; } - - public DateTimeOffset Created { get; init; } - - public string RemarkName { get; init; } = string.Empty; - - public string? Avatar { get; init; } - public UserInfoDto UserInfo { get; init; } - } - - public record FriendRequestHandleDto - { - [Required(ErrorMessage = "操作必填")] - public HandleFriendRequestAction Action { get; init; } - - [StringLength(20, ErrorMessage = "备注名最大20个字符")] - public string? RemarkName { get; init; } - } -} +using IM_API.Dtos.User; +using IM_API.Models; +using System.ComponentModel.DataAnnotations; + +namespace IM_API.Dtos.Friend +{ + public record FriendInfoDto + { + public int Id { get; init; } + + public int UserId { get; init; } + + public int FriendId { get; init; } + + public FriendStatus StatusEnum { get; init; } + + public DateTimeOffset Created { get; init; } + + public string RemarkName { get; init; } = string.Empty; + + public string? Avatar { get; init; } + public UserInfoDto UserInfo { get; init; } + } + + public record FriendRequestHandleDto + { + [Required(ErrorMessage = "操作必填")] + public HandleFriendRequestAction Action { get; init; } + + [StringLength(20, ErrorMessage = "备注名最大20个字符")] + public string? RemarkName { get; init; } + } +} diff --git a/backend/IM_API/Dtos/Friend/FriendRequestDto.cs b/backend/IM_API/Dtos/Friend/FriendRequestDto.cs index fdef132..e69db8d 100644 --- a/backend/IM_API/Dtos/Friend/FriendRequestDto.cs +++ b/backend/IM_API/Dtos/Friend/FriendRequestDto.cs @@ -1,15 +1,15 @@ -using System.ComponentModel.DataAnnotations; - -namespace IM_API.Dtos.Friend -{ - public class FriendRequestDto - { - public int? FromUserId { get; set; } - public int ToUserId { get; set; } - [Required(ErrorMessage = "备注名必填")] - [StringLength(20, ErrorMessage = "备注名不能超过20位字符")] - public string? RemarkName { get; set; } - [StringLength(50, ErrorMessage = "描述不能超过50字符")] - public string? Description { get; set; } - } -} +using System.ComponentModel.DataAnnotations; + +namespace IM_API.Dtos.Friend +{ + public class FriendRequestDto + { + public int? FromUserId { get; set; } + public int ToUserId { get; set; } + [Required(ErrorMessage = "备注名必填")] + [StringLength(20, ErrorMessage = "备注名不能超过20位字符")] + public string? RemarkName { get; set; } + [StringLength(50, ErrorMessage = "描述不能超过50字符")] + public string? Description { get; set; } + } +} diff --git a/backend/IM_API/Dtos/Friend/FriendRequestResDto.cs b/backend/IM_API/Dtos/Friend/FriendRequestResDto.cs index 6fcde65..4aeea3d 100644 --- a/backend/IM_API/Dtos/Friend/FriendRequestResDto.cs +++ b/backend/IM_API/Dtos/Friend/FriendRequestResDto.cs @@ -1,36 +1,36 @@ -using IM_API.Models; - -namespace IM_API.Dtos.Friend -{ - public class FriendRequestResDto - { - public int Id { get; set; } - - /// - /// 申请人 - /// - public int RequestUser { get; set; } - - /// - /// 被申请人 - /// - public int ResponseUser { get; set; } - public string Avatar { get; set; } - public string NickName { get; set; } - - /// - /// 申请时间 - /// - public DateTimeOffset Created { get; set; } - - /// - /// 申请附言 - /// - public string? Description { get; set; } - - /// - /// 申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) - /// - public FriendRequestState State { get; set; } - } -} +using IM_API.Models; + +namespace IM_API.Dtos.Friend +{ + public class FriendRequestResDto + { + public int Id { get; set; } + + /// + /// 申请人 + /// + public int RequestUser { get; set; } + + /// + /// 被申请人 + /// + public int ResponseUser { get; set; } + public string Avatar { get; set; } + public string NickName { get; set; } + + /// + /// 申请时间 + /// + public DateTimeOffset Created { get; set; } + + /// + /// 申请附言 + /// + public string? Description { get; set; } + + /// + /// 申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) + /// + public FriendRequestState State { get; set; } + } +} diff --git a/backend/IM_API/Dtos/Friend/HandleFriendRequestDto.cs b/backend/IM_API/Dtos/Friend/HandleFriendRequestDto.cs index afd2d00..cc1733e 100644 --- a/backend/IM_API/Dtos/Friend/HandleFriendRequestDto.cs +++ b/backend/IM_API/Dtos/Friend/HandleFriendRequestDto.cs @@ -1,29 +1,29 @@ -namespace IM_API.Dtos.Friend -{ - public class HandleFriendRequestDto - { - /// - /// 好友请求Id - /// - public int RequestId { get; set; } - /// - /// 处理操作 - /// - public HandleFriendRequestAction Action { get; set; } - /// - /// 好友备注名 - /// - public string? RemarkName { get; set; } - } - public enum HandleFriendRequestAction - { - /// - /// 同意 - /// - Accept = 0, - /// - /// 拒绝 - /// - Reject = 1 - } -} +namespace IM_API.Dtos.Friend +{ + public class HandleFriendRequestDto + { + /// + /// 好友请求Id + /// + public int RequestId { get; set; } + /// + /// 处理操作 + /// + public HandleFriendRequestAction Action { get; set; } + /// + /// 好友备注名 + /// + public string? RemarkName { get; set; } + } + public enum HandleFriendRequestAction + { + /// + /// 同意 + /// + Accept = 0, + /// + /// 拒绝 + /// + Reject = 1 + } +} diff --git a/backend/IM_API/Dtos/Group/GroupCreateDto.cs b/backend/IM_API/Dtos/Group/GroupCreateDto.cs index 32b2941..384cf8f 100644 --- a/backend/IM_API/Dtos/Group/GroupCreateDto.cs +++ b/backend/IM_API/Dtos/Group/GroupCreateDto.cs @@ -1,22 +1,22 @@ -using IM_API.Models; -using System.ComponentModel.DataAnnotations; - -namespace IM_API.Dtos.Group -{ - public class GroupCreateDto - { - /// - /// 群聊名称 - /// - [Required(ErrorMessage = "群名称必填")] - [MaxLength(20, ErrorMessage = "群名称不能大于20字符")] - public string Name { get; set; } = null!; - - /// - /// 群头像 - /// - [Required(ErrorMessage = "群头像必填")] - public string Avatar { get; set; } = null!; - public List? UserIDs { get; set; } - } -} +using IM_API.Models; +using System.ComponentModel.DataAnnotations; + +namespace IM_API.Dtos.Group +{ + public class GroupCreateDto + { + /// + /// 群聊名称 + /// + [Required(ErrorMessage = "群名称必填")] + [MaxLength(20, ErrorMessage = "群名称不能大于20字符")] + public string Name { get; set; } = null!; + + /// + /// 群头像 + /// + [Required(ErrorMessage = "群头像必填")] + public string Avatar { get; set; } = null!; + public List? UserIDs { get; set; } + } +} diff --git a/backend/IM_API/Dtos/Group/GroupInfoDto.cs b/backend/IM_API/Dtos/Group/GroupInfoDto.cs index 3265681..c8f53ec 100644 --- a/backend/IM_API/Dtos/Group/GroupInfoDto.cs +++ b/backend/IM_API/Dtos/Group/GroupInfoDto.cs @@ -1,51 +1,51 @@ -using IM_API.Models; - -namespace IM_API.Dtos.Group -{ - public class GroupInfoDto - { - public int Id { get; set; } - - /// - /// 群聊名称 - /// - public string Name { get; set; } = null!; - - /// - /// 群主 - /// - public int GroupMaster { get; set; } - - /// - /// 群权限 - /// (0:需管理员同意,1:任意人可加群,2:不允许任何人加入) - /// - public GroupAuhority Auhority { get; set; } - - /// - /// 全员禁言(0允许发言,2全员禁言) - /// - public GroupAllMembersBanned AllMembersBanned { get; set; } - - /// - /// 群聊状态 - /// (1:正常,2:封禁) - /// - public GroupStatus Status { get; set; } - - /// - /// 群公告 - /// - public string? Announcement { get; set; } - - /// - /// 群聊创建时间 - /// - public DateTimeOffset Created { get; set; } - - /// - /// 群头像 - /// - public string Avatar { get; set; } = null!; - } -} +using IM_API.Models; + +namespace IM_API.Dtos.Group +{ + public class GroupInfoDto + { + public int Id { get; set; } + + /// + /// 群聊名称 + /// + public string Name { get; set; } = null!; + + /// + /// 群主 + /// + public int GroupMaster { get; set; } + + /// + /// 群权限 + /// (0:需管理员同意,1:任意人可加群,2:不允许任何人加入) + /// + public GroupAuhority Auhority { get; set; } + + /// + /// 全员禁言(0允许发言,2全员禁言) + /// + public GroupAllMembersBanned AllMembersBanned { get; set; } + + /// + /// 群聊状态 + /// (1:正常,2:封禁) + /// + public GroupStatus Status { get; set; } + + /// + /// 群公告 + /// + public string? Announcement { get; set; } + + /// + /// 群聊创建时间 + /// + public DateTimeOffset Created { get; set; } + + /// + /// 群头像 + /// + public string Avatar { get; set; } = null!; + } +} diff --git a/backend/IM_API/Dtos/Group/GroupInviteUserDto.cs b/backend/IM_API/Dtos/Group/GroupInviteUserDto.cs index df1d926..ab15351 100644 --- a/backend/IM_API/Dtos/Group/GroupInviteUserDto.cs +++ b/backend/IM_API/Dtos/Group/GroupInviteUserDto.cs @@ -1,8 +1,8 @@ -namespace IM_API.Dtos.Group -{ - public class GroupInviteUserDto - { - public int GroupId { get; set; } - public List Ids { get; set; } - } -} +namespace IM_API.Dtos.Group +{ + public class GroupInviteUserDto + { + public int GroupId { get; set; } + public List Ids { get; set; } + } +} diff --git a/backend/IM_API/Dtos/Group/GroupUpdateConversationDto.cs b/backend/IM_API/Dtos/Group/GroupUpdateConversationDto.cs index c92dd9c..e327f4d 100644 --- a/backend/IM_API/Dtos/Group/GroupUpdateConversationDto.cs +++ b/backend/IM_API/Dtos/Group/GroupUpdateConversationDto.cs @@ -1,11 +1,11 @@ -namespace IM_API.Dtos.Group -{ - public class GroupUpdateConversationDto - { - public int GroupId { get; set; } - public long MaxSequenceId { get; set; } - public string LastMessage { get; set; } - public string LastSenderName { get; set; } - public DateTimeOffset LastUpdateTime { get; set; } - } -} +namespace IM_API.Dtos.Group +{ + public class GroupUpdateConversationDto + { + public int GroupId { get; set; } + public long MaxSequenceId { get; set; } + public string LastMessage { get; set; } + public string LastSenderName { get; set; } + public DateTimeOffset LastUpdateTime { get; set; } + } +} diff --git a/backend/IM_API/Dtos/Group/HandleGroupInviteDto.cs b/backend/IM_API/Dtos/Group/HandleGroupInviteDto.cs index 038a4bd..f9e359f 100644 --- a/backend/IM_API/Dtos/Group/HandleGroupInviteDto.cs +++ b/backend/IM_API/Dtos/Group/HandleGroupInviteDto.cs @@ -1,10 +1,10 @@ -using IM_API.Models; - -namespace IM_API.Dtos.Group -{ - public class HandleGroupInviteDto - { - public int InviteId { get; set; } - public GroupInviteState Action { get; set; } - } -} +using IM_API.Models; + +namespace IM_API.Dtos.Group +{ + public class HandleGroupInviteDto + { + public int InviteId { get; set; } + public GroupInviteState Action { get; set; } + } +} diff --git a/backend/IM_API/Dtos/Group/HandleGroupRequestDto.cs b/backend/IM_API/Dtos/Group/HandleGroupRequestDto.cs index 566739c..d4abbcd 100644 --- a/backend/IM_API/Dtos/Group/HandleGroupRequestDto.cs +++ b/backend/IM_API/Dtos/Group/HandleGroupRequestDto.cs @@ -1,10 +1,10 @@ -using IM_API.Models; - -namespace IM_API.Dtos.Group -{ - public class HandleGroupRequestDto - { - public int RequestId { get; set; } - public GroupRequestState Action { get; set; } - } -} +using IM_API.Models; + +namespace IM_API.Dtos.Group +{ + public class HandleGroupRequestDto + { + public int RequestId { get; set; } + public GroupRequestState Action { get; set; } + } +} diff --git a/backend/IM_API/Dtos/HubResponse.cs b/backend/IM_API/Dtos/HubResponse.cs index 18c2c0e..423cac4 100644 --- a/backend/IM_API/Dtos/HubResponse.cs +++ b/backend/IM_API/Dtos/HubResponse.cs @@ -1,49 +1,49 @@ -using IM_API.Tools; - -namespace IM_API.Dtos -{ - public class HubResponse - { - public int Code { get; init; } - public string Method { get; init; } - public HubResponseType Type { get; init; } - public string Message { get; init; } - public T? Data { get; init; } - public HubResponse(string method) - { - Code = CodeDefine.SUCCESS.Code; - Message = CodeDefine.SUCCESS.Message; - Type = HubResponseType.ActionStatus; - Method = method; - } - public HubResponse(string method,T data) - { - Code = CodeDefine.SUCCESS.Code; - Message = CodeDefine.SUCCESS.Message; - Type = HubResponseType.ActionStatus; - Data = data; - Method = method; - } - public HubResponse(CodeDefine codedefine,string method) - { - Code = codedefine.Code; - Method = method; - Message = codedefine.Message; - Type = HubResponseType.ActionStatus; - } - public HubResponse(CodeDefine codeDefine, string method, HubResponseType type, T? data) - { - Code = codeDefine.Code; - Method = method; - Type = type; - Message = codeDefine.Message; - Data = data; - } - } - public enum HubResponseType - { - ChatMsg = 1, // 聊天内容 - SystemNotice = 2, // 系统通知(如:申请好友成功) - ActionStatus = 3 // 状态变更(如:对方正在输入、已读回执) - } -} +using IM_API.Tools; + +namespace IM_API.Dtos +{ + public class HubResponse + { + public int Code { get; init; } + public string Method { get; init; } + public HubResponseType Type { get; init; } + public string Message { get; init; } + public T? Data { get; init; } + public HubResponse(string method) + { + Code = CodeDefine.SUCCESS.Code; + Message = CodeDefine.SUCCESS.Message; + Type = HubResponseType.ActionStatus; + Method = method; + } + public HubResponse(string method,T data) + { + Code = CodeDefine.SUCCESS.Code; + Message = CodeDefine.SUCCESS.Message; + Type = HubResponseType.ActionStatus; + Data = data; + Method = method; + } + public HubResponse(CodeDefine codedefine,string method) + { + Code = codedefine.Code; + Method = method; + Message = codedefine.Message; + Type = HubResponseType.ActionStatus; + } + public HubResponse(CodeDefine codeDefine, string method, HubResponseType type, T? data) + { + Code = codeDefine.Code; + Method = method; + Type = type; + Message = codeDefine.Message; + Data = data; + } + } + public enum HubResponseType + { + ChatMsg = 1, // 聊天内容 + SystemNotice = 2, // 系统通知(如:申请好友成功) + ActionStatus = 3 // 状态变更(如:对方正在输入、已读回执) + } +} diff --git a/backend/IM_API/Dtos/Message/MessageQueryDto.cs b/backend/IM_API/Dtos/Message/MessageQueryDto.cs index 607ec1f..f70c28b 100644 --- a/backend/IM_API/Dtos/Message/MessageQueryDto.cs +++ b/backend/IM_API/Dtos/Message/MessageQueryDto.cs @@ -1,18 +1,18 @@ -using System.ComponentModel.DataAnnotations; - -namespace IM_API.Dtos.Message -{ - public class MessageQueryDto - { - [Required(ErrorMessage = "会话ID必填")] - public int ConversationId { get; set; } - - // 锚点序号(如果为空,说明是第一次进聊天框,拉最新的) - public long? Cursor { get; set; } - - // 查询方向:0 - 查旧(Before), 1 - 查新(After) - public int Direction { get; set; } = 0; - - public int Limit { get; set; } = 20; - } -} +using System.ComponentModel.DataAnnotations; + +namespace IM_API.Dtos.Message +{ + public class MessageQueryDto + { + [Required(ErrorMessage = "会话ID必填")] + public int ConversationId { get; set; } + + // 锚点序号(如果为空,说明是第一次进聊天框,拉最新的) + public long? Cursor { get; set; } + + // 查询方向:0 - 查旧(Before), 1 - 查新(After) + public int Direction { get; set; } = 0; + + public int Limit { get; set; } = 20; + } +} diff --git a/backend/IM_API/Dtos/MessageDto.cs b/backend/IM_API/Dtos/MessageDto.cs index 3606c48..09d672e 100644 --- a/backend/IM_API/Dtos/MessageDto.cs +++ b/backend/IM_API/Dtos/MessageDto.cs @@ -1,17 +1,17 @@ -using IM_API.Models; - -namespace IM_API.Dtos -{ - public record MessageBaseDto - { - // 使用 { get; init; } 确保对象创建后不可修改,且支持无参构造 - public MessageMsgType Type { get; init; } = default!; - public ChatType ChatType { get; init; } = default!; - public Guid MsgId { get; init; } - public int SenderId { get; init; } - public int ReceiverId { get; init; } - public string Content { get; init; } = default!; - public DateTimeOffset TimeStamp { get; init; } - public MessageBaseDto() { } - } -} +using IM_API.Models; + +namespace IM_API.Dtos +{ + public record MessageBaseDto + { + // 使用 { get; init; } 确保对象创建后不可修改,且支持无参构造 + public MessageMsgType Type { get; init; } = default!; + public ChatType ChatType { get; init; } = default!; + public Guid MsgId { get; init; } + public int SenderId { get; init; } + public int ReceiverId { get; init; } + public string Content { get; init; } = default!; + public DateTimeOffset TimeStamp { get; init; } + public MessageBaseDto() { } + } +} diff --git a/backend/IM_API/Dtos/SignalRResponseDto.cs b/backend/IM_API/Dtos/SignalRResponseDto.cs index f34f09e..6c0eabb 100644 --- a/backend/IM_API/Dtos/SignalRResponseDto.cs +++ b/backend/IM_API/Dtos/SignalRResponseDto.cs @@ -1,66 +1,66 @@ -using IM_API.Tools; - -namespace IM_API.Dtos -{ - public class SignalRResponseDto - { - public string Type { get; set; } - public string Message { get; set; } - public int Code { get; set; } - public string Status { get; set; } - public SignalRResponseDto(SignalRResponseType type,CodeDefine codeDefine) - { - this.Type = type.ToString(); - this.Code = codeDefine.Code; - this.Message = codeDefine.Message; - this.Status = codeDefine.Message; - } - public SignalRResponseDto(SignalRResponseType type) - { - this.Type = type.ToString(); - this.Code = CodeDefine.SUCCESS.Code; - this.Message = CodeDefine.SUCCESS.Message; - this.Status = CodeDefine.SUCCESS.Message; - } - } - - public enum SignalRResponseType - { - /// - /// 消息 - /// - MESSAGE = 0, - /// - /// 鉴权 - /// - AUTH = 1, - /// - /// 心跳 - /// - HEARTBEAT = 2, - /// - /// 消息回执 - /// - MESSAGE_ACK = 3, - /// - /// 消息撤回 - /// - MESSAGE_RECALL = 4, - /// - /// 好友请求 - /// - FRIEND_REQUEST = 5, - /// - /// 群邀请 - /// - GROUP_INVITE = 6, - /// - /// 系统通知 - /// - SYSTEM_NOTICE = 7, - /// - /// 错误 - /// - ERROR = 8 - } -} +using IM_API.Tools; + +namespace IM_API.Dtos +{ + public class SignalRResponseDto + { + public string Type { get; set; } + public string Message { get; set; } + public int Code { get; set; } + public string Status { get; set; } + public SignalRResponseDto(SignalRResponseType type,CodeDefine codeDefine) + { + this.Type = type.ToString(); + this.Code = codeDefine.Code; + this.Message = codeDefine.Message; + this.Status = codeDefine.Message; + } + public SignalRResponseDto(SignalRResponseType type) + { + this.Type = type.ToString(); + this.Code = CodeDefine.SUCCESS.Code; + this.Message = CodeDefine.SUCCESS.Message; + this.Status = CodeDefine.SUCCESS.Message; + } + } + + public enum SignalRResponseType + { + /// + /// 消息 + /// + MESSAGE = 0, + /// + /// 鉴权 + /// + AUTH = 1, + /// + /// 心跳 + /// + HEARTBEAT = 2, + /// + /// 消息回执 + /// + MESSAGE_ACK = 3, + /// + /// 消息撤回 + /// + MESSAGE_RECALL = 4, + /// + /// 好友请求 + /// + FRIEND_REQUEST = 5, + /// + /// 群邀请 + /// + GROUP_INVITE = 6, + /// + /// 系统通知 + /// + SYSTEM_NOTICE = 7, + /// + /// 错误 + /// + ERROR = 8 + } +} diff --git a/backend/IM_API/Dtos/TestDto.cs b/backend/IM_API/Dtos/TestDto.cs index bd689d6..5447b72 100644 --- a/backend/IM_API/Dtos/TestDto.cs +++ b/backend/IM_API/Dtos/TestDto.cs @@ -1,8 +1,8 @@ -namespace IM_API.Dtos -{ - public class TestDto - { - public int Id { get; set; } - public string Name { get; set; } - } -} +namespace IM_API.Dtos +{ + public class TestDto + { + public int Id { get; set; } + public string Name { get; set; } + } +} diff --git a/backend/IM_API/Dtos/User/UpdateUserDto.cs b/backend/IM_API/Dtos/User/UpdateUserDto.cs index 4ac40f2..c48efa1 100644 --- a/backend/IM_API/Dtos/User/UpdateUserDto.cs +++ b/backend/IM_API/Dtos/User/UpdateUserDto.cs @@ -1,12 +1,12 @@ -using System.ComponentModel.DataAnnotations; - -namespace IM_API.Dtos.User -{ - public class UpdateUserDto - { - [MaxLength(20, ErrorMessage = "昵称不能超过50字符")] - public string? NickName { get; set; } - public string? Avatar { get; set; } - - } -} +using System.ComponentModel.DataAnnotations; + +namespace IM_API.Dtos.User +{ + public class UpdateUserDto + { + [MaxLength(20, ErrorMessage = "昵称不能超过50字符")] + public string? NickName { get; set; } + public string? Avatar { get; set; } + + } +} diff --git a/backend/IM_API/Dtos/User/UserDto.cs b/backend/IM_API/Dtos/User/UserDto.cs index d8a1a57..5191d8d 100644 --- a/backend/IM_API/Dtos/User/UserDto.cs +++ b/backend/IM_API/Dtos/User/UserDto.cs @@ -1,21 +1,21 @@ -using IM_API.Models; -using System.ComponentModel.DataAnnotations; - -namespace IM_API.Dtos.User -{ - public record PasswordResetDto - { - [Required(ErrorMessage = "旧密码不能为空")] - public string OldPassword { get; init; } - - [Required(ErrorMessage = "新密码不能为空")] - [MaxLength(50, ErrorMessage = "密码不能超过50个字符")] - public string Password { get; init; } - } - - public record OnlineStatusSetDto - { - [Required] - public UserOnlineStatus OnlineStatus { get; init; } - } -} +using IM_API.Models; +using System.ComponentModel.DataAnnotations; + +namespace IM_API.Dtos.User +{ + public record PasswordResetDto + { + [Required(ErrorMessage = "旧密码不能为空")] + public string OldPassword { get; init; } + + [Required(ErrorMessage = "新密码不能为空")] + [MaxLength(50, ErrorMessage = "密码不能超过50个字符")] + public string Password { get; init; } + } + + public record OnlineStatusSetDto + { + [Required] + public UserOnlineStatus OnlineStatus { get; init; } + } +} diff --git a/backend/IM_API/Dtos/User/UserInfoDto.cs b/backend/IM_API/Dtos/User/UserInfoDto.cs index e530be6..de64ab7 100644 --- a/backend/IM_API/Dtos/User/UserInfoDto.cs +++ b/backend/IM_API/Dtos/User/UserInfoDto.cs @@ -1,43 +1,43 @@ -using IM_API.Models; -using System.ComponentModel.DataAnnotations; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Dtos.User -{ - public class UserInfoDto - { - public int Id { get; set; } - - /// - /// 唯一用户名 - /// - public string Username { get; set; } - - /// - /// 用户昵称 - /// - public string NickName { get; set; } - /// - /// 用户头像 - /// - public string? Avatar { get; set; } - - /// - /// 用户在线状态 - /// 0(默认):不在线 - /// 1:在线 - /// - public UserOnlineStatus OnlineStatusEnum { get; set; } - - /// - /// 创建时间 - /// - public DateTimeOffset Created { get; set; } - - /// - /// 账户状态 - /// (0:未激活,1:正常,2:封禁) - /// - public UserStatus StatusEnum { get; set; } - } -} +using IM_API.Models; +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Dtos.User +{ + public class UserInfoDto + { + public int Id { get; set; } + + /// + /// 唯一用户名 + /// + public string Username { get; set; } + + /// + /// 用户昵称 + /// + public string NickName { get; set; } + /// + /// 用户头像 + /// + public string? Avatar { get; set; } + + /// + /// 用户在线状态 + /// 0(默认):不在线 + /// 1:在线 + /// + public UserOnlineStatus OnlineStatusEnum { get; set; } + + /// + /// 创建时间 + /// + public DateTimeOffset Created { get; set; } + + /// + /// 账户状态 + /// (0:未激活,1:正常,2:封禁) + /// + public UserStatus StatusEnum { get; set; } + } +} diff --git a/backend/IM_API/Exceptions/BaseException.cs b/backend/IM_API/Exceptions/BaseException.cs index cafaf70..d828045 100644 --- a/backend/IM_API/Exceptions/BaseException.cs +++ b/backend/IM_API/Exceptions/BaseException.cs @@ -1,17 +1,17 @@ -using IM_API.Tools; - -namespace IM_API.Exceptions -{ - public class BaseException:Exception - { - public int Code { get; set; } - - public BaseException(int code,string message) : base(message) { - this.Code = code; - } - public BaseException(CodeDefine codeDefine) : base(codeDefine.Message) - { - this.Code = codeDefine.Code; - } - } -} +using IM_API.Tools; + +namespace IM_API.Exceptions +{ + public class BaseException:Exception + { + public int Code { get; set; } + + public BaseException(int code,string message) : base(message) { + this.Code = code; + } + public BaseException(CodeDefine codeDefine) : base(codeDefine.Message) + { + this.Code = codeDefine.Code; + } + } +} diff --git a/backend/IM_API/Filters/GlobalExceptionFilter.cs b/backend/IM_API/Filters/GlobalExceptionFilter.cs index e1af44e..d9718bd 100644 --- a/backend/IM_API/Filters/GlobalExceptionFilter.cs +++ b/backend/IM_API/Filters/GlobalExceptionFilter.cs @@ -1,39 +1,39 @@ -using IM_API.Dtos; -using IM_API.Exceptions; -using IM_API.Tools; -using Microsoft.AspNetCore.Mvc; -using Microsoft.AspNetCore.Mvc.Filters; - -namespace IM_API.Filters -{ - public class GlobalExceptionFilter : IExceptionFilter - { - private readonly ILogger _logger; - public GlobalExceptionFilter(ILogger logger) - { - _logger = logger; - } - - public void OnException(ExceptionContext context) - { - if(context.Exception is BaseException) - { - _logger.LogWarning(context.Exception, context.Exception.Message); - var exception = (BaseException)context.Exception; - BaseResponse res = new BaseResponse( - code:exception.Code, - message: exception.Message, - data:null - ); - context.Result = new JsonResult(res); - } - else - { - _logger.LogError(context.Exception,context.Exception.Message); - BaseResponse res = new BaseResponse(CodeDefine.SYSTEM_ERROR); - context.Result = new JsonResult(res); - } - context.ExceptionHandled = true; - } - } -} +using IM_API.Dtos; +using IM_API.Exceptions; +using IM_API.Tools; +using Microsoft.AspNetCore.Mvc; +using Microsoft.AspNetCore.Mvc.Filters; + +namespace IM_API.Filters +{ + public class GlobalExceptionFilter : IExceptionFilter + { + private readonly ILogger _logger; + public GlobalExceptionFilter(ILogger logger) + { + _logger = logger; + } + + public void OnException(ExceptionContext context) + { + if(context.Exception is BaseException) + { + _logger.LogWarning(context.Exception, context.Exception.Message); + var exception = (BaseException)context.Exception; + BaseResponse res = new BaseResponse( + code:exception.Code, + message: exception.Message, + data:null + ); + context.Result = new JsonResult(res); + } + else + { + _logger.LogError(context.Exception,context.Exception.Message); + BaseResponse res = new BaseResponse(CodeDefine.SYSTEM_ERROR); + context.Result = new JsonResult(res); + } + context.ExceptionHandled = true; + } + } +} diff --git a/backend/IM_API/Hubs/ChatHub.cs b/backend/IM_API/Hubs/ChatHub.cs index 14bd2b8..f1e7f18 100644 --- a/backend/IM_API/Hubs/ChatHub.cs +++ b/backend/IM_API/Hubs/ChatHub.cs @@ -1,90 +1,90 @@ -using AutoMapper; -using IM_API.Application.Interfaces; -using IM_API.Domain.Events; -using IM_API.Dtos; -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.Tools; -using IM_API.VOs.Message; -using Microsoft.AspNetCore.SignalR; -using StackExchange.Redis; -using System.Security.Claims; - -namespace IM_API.Hubs -{ - public class ChatHub:Hub - { - private IMessageSevice _messageService; - private readonly IConversationService _conversationService; - private readonly IDatabase _redis; - public ChatHub(IMessageSevice messageService, IConversationService conversationService, - IConnectionMultiplexer connectionMultiplexer) - { - _messageService = messageService; - _conversationService = conversationService; - _redis = connectionMultiplexer.GetDatabase(); - } - - public async override Task OnConnectedAsync() - { - if (!Context.User.Identity.IsAuthenticated) - { - Context.Abort(); - return; - } - - //将用户加入已加入聊天的会话组 - string userIdStr = Context.User.FindFirstValue(ClaimTypes.NameIdentifier); - var keys = await _conversationService.GetUserAllStreamKeyAsync(int.Parse(userIdStr)); - foreach (var key in keys) - { - await Groups.AddToGroupAsync(Context.ConnectionId, key); - } - //储存用户对应的连接id - await _redis.SetAddAsync(RedisKeys.GetConnectionIdKey(userIdStr), Context.ConnectionId); - await base.OnConnectedAsync(); - } - - public override async Task OnDisconnectedAsync(Exception? exception) - { - if (!Context.User.Identity.IsAuthenticated) - { - string useridStr = Context.User.FindFirstValue(ClaimTypes.NameIdentifier); - await _redis.SetRemoveAsync(RedisKeys.GetConnectionIdKey(useridStr), Context.ConnectionId); - } - await base.OnDisconnectedAsync(exception); - } - public async Task> SendMessage(MessageBaseDto dto) - { - if (!Context.User.Identity.IsAuthenticated) - { - await Clients.Caller.SendAsync("ReceiveMessage", new BaseResponse(CodeDefine.AUTH_FAILED)); - Context.Abort(); - return new HubResponse(CodeDefine.AUTH_FAILED, "SendMessage"); - } - var userIdStr = Context.User.FindFirstValue(ClaimTypes.NameIdentifier); - MessageBaseVo? msgInfo = null; - if(dto.ChatType == ChatType.PRIVATE) - { - msgInfo = await _messageService.SendPrivateMessageAsync(int.Parse(userIdStr), dto.ReceiverId, dto); - } - else - { - msgInfo = await _messageService.SendGroupMessageAsync(int.Parse(userIdStr), dto.ReceiverId, dto); - } - return new HubResponse("SendMessage", msgInfo); - } - public async Task> ClearUnreadCount(int conversationId) - { - if (!Context.User.Identity.IsAuthenticated) - { - await Clients.Caller.SendAsync("ReceiveMessage", new BaseResponse(CodeDefine.AUTH_FAILED)); - Context.Abort(); - return new HubResponse(CodeDefine.AUTH_FAILED, "ClearUnreadCount"); ; - } - var userIdStr = Context.User.FindFirstValue(ClaimTypes.NameIdentifier); - await _conversationService.ClearUnreadCountAsync(int.Parse(userIdStr), conversationId); - return new HubResponse("ClearUnreadCount"); - } - } -} +using AutoMapper; +using IM_API.Application.Interfaces; +using IM_API.Domain.Events; +using IM_API.Dtos; +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.Tools; +using IM_API.VOs.Message; +using Microsoft.AspNetCore.SignalR; +using StackExchange.Redis; +using System.Security.Claims; + +namespace IM_API.Hubs +{ + public class ChatHub:Hub + { + private IMessageSevice _messageService; + private readonly IConversationService _conversationService; + private readonly IDatabase _redis; + public ChatHub(IMessageSevice messageService, IConversationService conversationService, + IConnectionMultiplexer connectionMultiplexer) + { + _messageService = messageService; + _conversationService = conversationService; + _redis = connectionMultiplexer.GetDatabase(); + } + + public async override Task OnConnectedAsync() + { + if (!Context.User.Identity.IsAuthenticated) + { + Context.Abort(); + return; + } + + //将用户加入已加入聊天的会话组 + string userIdStr = Context.User.FindFirstValue(ClaimTypes.NameIdentifier); + var keys = await _conversationService.GetUserAllStreamKeyAsync(int.Parse(userIdStr)); + foreach (var key in keys) + { + await Groups.AddToGroupAsync(Context.ConnectionId, key); + } + //储存用户对应的连接id + await _redis.SetAddAsync(RedisKeys.GetConnectionIdKey(userIdStr), Context.ConnectionId); + await base.OnConnectedAsync(); + } + + public override async Task OnDisconnectedAsync(Exception? exception) + { + if (!Context.User.Identity.IsAuthenticated) + { + string useridStr = Context.User.FindFirstValue(ClaimTypes.NameIdentifier); + await _redis.SetRemoveAsync(RedisKeys.GetConnectionIdKey(useridStr), Context.ConnectionId); + } + await base.OnDisconnectedAsync(exception); + } + public async Task> SendMessage(MessageBaseDto dto) + { + if (!Context.User.Identity.IsAuthenticated) + { + await Clients.Caller.SendAsync("ReceiveMessage", new BaseResponse(CodeDefine.AUTH_FAILED)); + Context.Abort(); + return new HubResponse(CodeDefine.AUTH_FAILED, "SendMessage"); + } + var userIdStr = Context.User.FindFirstValue(ClaimTypes.NameIdentifier); + MessageBaseVo? msgInfo = null; + if(dto.ChatType == ChatType.PRIVATE) + { + msgInfo = await _messageService.SendPrivateMessageAsync(int.Parse(userIdStr), dto.ReceiverId, dto); + } + else + { + msgInfo = await _messageService.SendGroupMessageAsync(int.Parse(userIdStr), dto.ReceiverId, dto); + } + return new HubResponse("SendMessage", msgInfo); + } + public async Task> ClearUnreadCount(int conversationId) + { + if (!Context.User.Identity.IsAuthenticated) + { + await Clients.Caller.SendAsync("ReceiveMessage", new BaseResponse(CodeDefine.AUTH_FAILED)); + Context.Abort(); + return new HubResponse(CodeDefine.AUTH_FAILED, "ClearUnreadCount"); ; + } + var userIdStr = Context.User.FindFirstValue(ClaimTypes.NameIdentifier); + await _conversationService.ClearUnreadCountAsync(int.Parse(userIdStr), conversationId); + return new HubResponse("ClearUnreadCount"); + } + } +} diff --git a/backend/IM_API/IM_API.csproj b/backend/IM_API/IM_API.csproj index 6361cdc..6e72693 100644 --- a/backend/IM_API/IM_API.csproj +++ b/backend/IM_API/IM_API.csproj @@ -1,36 +1,36 @@ - - - - net8.0 - enable - enable - 3f396849-59bd-435f-a0cb-351ec0559e70 - Linux - . - - - - - - - - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - all - runtime; build; native; contentfiles; analyzers; buildtransitive - - - - - - - - - - - - + + + + net8.0 + enable + enable + 3f396849-59bd-435f-a0cb-351ec0559e70 + Linux + . + + + + + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + + + + + + diff --git a/backend/IM_API/IM_API.csproj.user b/backend/IM_API/IM_API.csproj.user index e5a2ec0..f53a82c 100644 --- a/backend/IM_API/IM_API.csproj.user +++ b/backend/IM_API/IM_API.csproj.user @@ -1,11 +1,11 @@ - - - - http - ApiControllerEmptyScaffolder - root/Common/Api - - - ProjectDebugger - + + + + http + ApiControllerEmptyScaffolder + root/Common/Api + + + ProjectDebugger + \ No newline at end of file diff --git a/backend/IM_API/IM_API.http b/backend/IM_API/IM_API.http index f9d5b75..fce8ec7 100644 --- a/backend/IM_API/IM_API.http +++ b/backend/IM_API/IM_API.http @@ -1,6 +1,6 @@ -@IM_API_HostAddress = http://localhost:5202 - -GET {{IM_API_HostAddress}}/weatherforecast/ -Accept: application/json - -### +@IM_API_HostAddress = http://localhost:5202 + +GET {{IM_API_HostAddress}}/weatherforecast/ +Accept: application/json + +### diff --git a/backend/IM_API/IM_API.sln b/backend/IM_API/IM_API.sln index 7559338..a3c1a7b 100644 --- a/backend/IM_API/IM_API.sln +++ b/backend/IM_API/IM_API.sln @@ -1,31 +1,31 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.14.36408.4 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IM_API", "IM_API.csproj", "{F001642C-3E66-4C2C-9A25-1AE5EE76CE97}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IMTest", "..\IMTest\IMTest.csproj", "{9DB9D44A-2D86-45A2-B651-D976277CF324}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {F001642C-3E66-4C2C-9A25-1AE5EE76CE97}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F001642C-3E66-4C2C-9A25-1AE5EE76CE97}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F001642C-3E66-4C2C-9A25-1AE5EE76CE97}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F001642C-3E66-4C2C-9A25-1AE5EE76CE97}.Release|Any CPU.Build.0 = Release|Any CPU - {9DB9D44A-2D86-45A2-B651-D976277CF324}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {9DB9D44A-2D86-45A2-B651-D976277CF324}.Debug|Any CPU.Build.0 = Debug|Any CPU - {9DB9D44A-2D86-45A2-B651-D976277CF324}.Release|Any CPU.ActiveCfg = Release|Any CPU - {9DB9D44A-2D86-45A2-B651-D976277CF324}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {EC36B0B9-6176-4BC7-BF88-33F923E3E777} - EndGlobalSection -EndGlobal + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.14.36408.4 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IM_API", "IM_API.csproj", "{F001642C-3E66-4C2C-9A25-1AE5EE76CE97}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IMTest", "..\IMTest\IMTest.csproj", "{9DB9D44A-2D86-45A2-B651-D976277CF324}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {F001642C-3E66-4C2C-9A25-1AE5EE76CE97}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F001642C-3E66-4C2C-9A25-1AE5EE76CE97}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F001642C-3E66-4C2C-9A25-1AE5EE76CE97}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F001642C-3E66-4C2C-9A25-1AE5EE76CE97}.Release|Any CPU.Build.0 = Release|Any CPU + {9DB9D44A-2D86-45A2-B651-D976277CF324}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9DB9D44A-2D86-45A2-B651-D976277CF324}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9DB9D44A-2D86-45A2-B651-D976277CF324}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9DB9D44A-2D86-45A2-B651-D976277CF324}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {EC36B0B9-6176-4BC7-BF88-33F923E3E777} + EndGlobalSection +EndGlobal diff --git a/backend/IM_API/Infrastructure/EventBus/InMemoryEventBus.cs b/backend/IM_API/Infrastructure/EventBus/InMemoryEventBus.cs index 45ed2b2..02be426 100644 --- a/backend/IM_API/Infrastructure/EventBus/InMemoryEventBus.cs +++ b/backend/IM_API/Infrastructure/EventBus/InMemoryEventBus.cs @@ -1,32 +1,32 @@ -using IM_API.Application.Interfaces; -using IM_API.Domain.Interfaces; - -namespace IM_API.Infrastructure.EventBus -{ - public class InMemoryEventBus : IEventBus - { - private IServiceProvider _serviceProvider; - private ILogger _logger; - public InMemoryEventBus(IServiceProvider serviceProvider, ILogger logger) - { - _serviceProvider = serviceProvider; - _logger = logger; - } - - public async Task PublishAsync(TEvent @event) where TEvent : IEvent - { - var handlers = _serviceProvider.GetServices>(); - foreach (var handler in handlers) - { - try - { - await handler.Handle(@event); - } - catch(Exception e) - { - _logger.LogError("EventHandler error:"+e.Message, e); - } - } - } - } -} +using IM_API.Application.Interfaces; +using IM_API.Domain.Interfaces; + +namespace IM_API.Infrastructure.EventBus +{ + public class InMemoryEventBus : IEventBus + { + private IServiceProvider _serviceProvider; + private ILogger _logger; + public InMemoryEventBus(IServiceProvider serviceProvider, ILogger logger) + { + _serviceProvider = serviceProvider; + _logger = logger; + } + + public async Task PublishAsync(TEvent @event) where TEvent : IEvent + { + var handlers = _serviceProvider.GetServices>(); + foreach (var handler in handlers) + { + try + { + await handler.Handle(@event); + } + catch(Exception e) + { + _logger.LogError("EventHandler error:"+e.Message, e); + } + } + } + } +} diff --git a/backend/IM_API/Interface/Services/IAuthService.cs b/backend/IM_API/Interface/Services/IAuthService.cs index be275d6..b67a758 100644 --- a/backend/IM_API/Interface/Services/IAuthService.cs +++ b/backend/IM_API/Interface/Services/IAuthService.cs @@ -1,22 +1,22 @@ -using IM_API.Dtos.Auth; -using IM_API.Dtos.User; -using IM_API.Models; - -namespace IM_API.Interface.Services -{ - public interface IAuthService - { - /// - /// 登录 - /// - /// - /// - Task LoginAsync(LoginRequestDto dto); - /// - /// 注册 - /// - /// - /// - Task RegisterAsync(RegisterRequestDto dto); - } -} +using IM_API.Dtos.Auth; +using IM_API.Dtos.User; +using IM_API.Models; + +namespace IM_API.Interface.Services +{ + public interface IAuthService + { + /// + /// 登录 + /// + /// + /// + Task LoginAsync(LoginRequestDto dto); + /// + /// 注册 + /// + /// + /// + Task RegisterAsync(RegisterRequestDto dto); + } +} diff --git a/backend/IM_API/Interface/Services/ICacheService.cs b/backend/IM_API/Interface/Services/ICacheService.cs index 436e606..7713067 100644 --- a/backend/IM_API/Interface/Services/ICacheService.cs +++ b/backend/IM_API/Interface/Services/ICacheService.cs @@ -1,49 +1,49 @@ -using IM_API.Models; - -namespace IM_API.Interface.Services -{ - public interface ICacheService - { - /// - /// 设置缓存 - /// - /// 缓存对象类型 - /// 缓存索引值 - /// 要缓存的对象 - /// 过期时间 - /// - Task SetAsync(string key, T value, TimeSpan? expiration = null); - /// - /// 获取缓存 - /// - /// - /// 缓存索引 - /// - Task GetAsync(string key); - /// - /// 删除缓存 - /// - /// 缓存索引 - /// - Task RemoveAsync(string key); - /// - /// 设置用户缓存 - /// - /// - /// - Task SetUserCacheAsync(User user); - /// - /// 通过用户名获取用户缓存 - /// - /// - /// - Task GetUserCacheAsync(string username); - /// - /// 删除用户缓存 - /// - /// - /// - /// - Task RemoveUserCacheAsync(string username); - } -} +using IM_API.Models; + +namespace IM_API.Interface.Services +{ + public interface ICacheService + { + /// + /// 设置缓存 + /// + /// 缓存对象类型 + /// 缓存索引值 + /// 要缓存的对象 + /// 过期时间 + /// + Task SetAsync(string key, T value, TimeSpan? expiration = null); + /// + /// 获取缓存 + /// + /// + /// 缓存索引 + /// + Task GetAsync(string key); + /// + /// 删除缓存 + /// + /// 缓存索引 + /// + Task RemoveAsync(string key); + /// + /// 设置用户缓存 + /// + /// + /// + Task SetUserCacheAsync(User user); + /// + /// 通过用户名获取用户缓存 + /// + /// + /// + Task GetUserCacheAsync(string username); + /// + /// 删除用户缓存 + /// + /// + /// + /// + Task RemoveUserCacheAsync(string username); + } +} diff --git a/backend/IM_API/Interface/Services/IConversationService.cs b/backend/IM_API/Interface/Services/IConversationService.cs index 5d24fa5..61be9c0 100644 --- a/backend/IM_API/Interface/Services/IConversationService.cs +++ b/backend/IM_API/Interface/Services/IConversationService.cs @@ -1,56 +1,56 @@ -using IM_API.Dtos.Conversation; -using IM_API.Models; -using IM_API.VOs.Conversation; - -namespace IM_API.Interface.Services -{ - public interface IConversationService - { - /// - /// 清除消息会话 - /// - /// - /// - Task ClearConversationsAsync(int userId); - /// - /// 删除单个聊天会话 - /// - /// - /// - Task DeleteConversationAsync(int conversationId); - /// - /// 获取用户当前消息会话 - /// - /// 用户id - /// - Task> GetConversationsAsync(int userId); - /// - /// 获取指定用户的所有推送标识符 - /// - /// - /// - Task> GetUserAllStreamKeyAsync(int userId); - /// - /// 获取单个conversation信息 - /// - /// - /// - Task GetConversationByIdAsync(int userId, int conversationId); - /// - /// 清空未读消息 - /// - /// - /// - /// - Task ClearUnreadCountAsync(int userId, int conversationId); - /// - /// 为用户创建会话 - /// - /// - /// - /// - /// - Task MakeConversationAsync(int userAId, int userBId, ChatType chatType); - Task UpdateConversationAfterSentAsync(UpdateConversationDto dto); - } -} +using IM_API.Dtos.Conversation; +using IM_API.Models; +using IM_API.VOs.Conversation; + +namespace IM_API.Interface.Services +{ + public interface IConversationService + { + /// + /// 清除消息会话 + /// + /// + /// + Task ClearConversationsAsync(int userId); + /// + /// 删除单个聊天会话 + /// + /// + /// + Task DeleteConversationAsync(int conversationId); + /// + /// 获取用户当前消息会话 + /// + /// 用户id + /// + Task> GetConversationsAsync(int userId); + /// + /// 获取指定用户的所有推送标识符 + /// + /// + /// + Task> GetUserAllStreamKeyAsync(int userId); + /// + /// 获取单个conversation信息 + /// + /// + /// + Task GetConversationByIdAsync(int userId, int conversationId); + /// + /// 清空未读消息 + /// + /// + /// + /// + Task ClearUnreadCountAsync(int userId, int conversationId); + /// + /// 为用户创建会话 + /// + /// + /// + /// + /// + Task MakeConversationAsync(int userAId, int userBId, ChatType chatType); + Task UpdateConversationAfterSentAsync(UpdateConversationDto dto); + } +} diff --git a/backend/IM_API/Interface/Services/IFriendSerivce.cs b/backend/IM_API/Interface/Services/IFriendSerivce.cs index b4e29d3..df6b023 100644 --- a/backend/IM_API/Interface/Services/IFriendSerivce.cs +++ b/backend/IM_API/Interface/Services/IFriendSerivce.cs @@ -1,71 +1,71 @@ -using IM_API.Dtos.Friend; -using IM_API.Models; - -namespace IM_API.Interface.Services -{ - public interface IFriendSerivce - { - /// - /// 获取好友列表 - /// - /// 指定用户 - /// 当前页 - /// 分页大小 - /// - Task> GetFriendListAsync(int userId,int page,int limit,bool desc); - /// - /// 新增好友请求 - /// - /// - /// - Task SendFriendRequestAsync(FriendRequestDto friendRequest); - /// - /// 获取好友请求 - /// - /// - /// 是否为接受请求方 - /// - /// - /// - Task> GetFriendRequestListAsync(int userId,int page,int limit, bool desc); - /// - /// 处理好友请求 - /// - /// - /// - Task HandleFriendRequestAsync(HandleFriendRequestDto requestDto); - /// - /// 通过用户Id删除好友关系 - /// - /// 操作用户Id - /// 被删除用户ID - /// - Task DeleteFriendByUserIdAsync(int userId,int toUserId); - /// - /// 通过好友关系Id删除好友关系 - /// - /// 好友关系id - /// - Task DeleteFriendAsync(int friendId); - /// - /// 通过用户Id拉黑好友关系 - /// - /// 操作用户Id - /// 被拉黑用户ID - /// - Task BlockFriendByUserIdAsync(int userId, int toUserId); - /// - /// 通过好友关系Id拉黑好友关系 - /// - /// 好友关系id - /// - Task BlockeFriendAsync(int friendId); - /// - /// 创建好友关系 - /// - /// - /// - /// - Task MakeFriendshipAsync(int userAId, int userBId, string? remarkName); - } -} +using IM_API.Dtos.Friend; +using IM_API.Models; + +namespace IM_API.Interface.Services +{ + public interface IFriendSerivce + { + /// + /// 获取好友列表 + /// + /// 指定用户 + /// 当前页 + /// 分页大小 + /// + Task> GetFriendListAsync(int userId,int page,int limit,bool desc); + /// + /// 新增好友请求 + /// + /// + /// + Task SendFriendRequestAsync(FriendRequestDto friendRequest); + /// + /// 获取好友请求 + /// + /// + /// 是否为接受请求方 + /// + /// + /// + Task> GetFriendRequestListAsync(int userId,int page,int limit, bool desc); + /// + /// 处理好友请求 + /// + /// + /// + Task HandleFriendRequestAsync(HandleFriendRequestDto requestDto); + /// + /// 通过用户Id删除好友关系 + /// + /// 操作用户Id + /// 被删除用户ID + /// + Task DeleteFriendByUserIdAsync(int userId,int toUserId); + /// + /// 通过好友关系Id删除好友关系 + /// + /// 好友关系id + /// + Task DeleteFriendAsync(int friendId); + /// + /// 通过用户Id拉黑好友关系 + /// + /// 操作用户Id + /// 被拉黑用户ID + /// + Task BlockFriendByUserIdAsync(int userId, int toUserId); + /// + /// 通过好友关系Id拉黑好友关系 + /// + /// 好友关系id + /// + Task BlockeFriendAsync(int friendId); + /// + /// 创建好友关系 + /// + /// + /// + /// + Task MakeFriendshipAsync(int userAId, int userBId, string? remarkName); + } +} diff --git a/backend/IM_API/Interface/Services/IGroupService.cs b/backend/IM_API/Interface/Services/IGroupService.cs index 1b80b62..ad788f5 100644 --- a/backend/IM_API/Interface/Services/IGroupService.cs +++ b/backend/IM_API/Interface/Services/IGroupService.cs @@ -1,55 +1,55 @@ -using IM_API.Dtos.Group; -using IM_API.Models; - -namespace IM_API.Interface.Services -{ - public interface IGroupService - { - /// - /// 邀请好友入群 - /// - /// 操作者ID - /// 群ID - /// 邀请的用户列表 - /// - Task InviteUsersAsync(int userId,int groupId, List userIds); - /// - /// 加入群聊 - /// - /// 操作者ID - /// 群ID - /// - Task JoinGroupAsync(int userId,int groupId); - /// - /// 创建群聊 - /// - /// 操作者ID - /// 群信息 - /// 邀请用户列表 - /// - Task CreateGroupAsync(int userId, GroupCreateDto groupCreateDto); - /// - /// 删除群 - /// - /// 操作者ID - /// 群ID - /// - Task DeleteGroupAsync(int userId, int groupId); - /// - /// 获取当前用户群列表 - /// - /// 操作者ID - /// - /// - /// - /// - Task> GetGroupListAsync(int userId, int page, int limit, bool desc); - - Task UpdateGroupConversationAsync(GroupUpdateConversationDto dto); - - Task HandleGroupInviteAsync(int userid, HandleGroupInviteDto dto); - Task HandleGroupRequestAsync(int userid, HandleGroupRequestDto dto); - Task MakeGroupRequestAsync(int userId,int? adminUserId,int groupId); - Task MakeGroupMemberAsync(int userId, int groupId, GroupMemberRole? role); - } -} +using IM_API.Dtos.Group; +using IM_API.Models; + +namespace IM_API.Interface.Services +{ + public interface IGroupService + { + /// + /// 邀请好友入群 + /// + /// 操作者ID + /// 群ID + /// 邀请的用户列表 + /// + Task InviteUsersAsync(int userId,int groupId, List userIds); + /// + /// 加入群聊 + /// + /// 操作者ID + /// 群ID + /// + Task JoinGroupAsync(int userId,int groupId); + /// + /// 创建群聊 + /// + /// 操作者ID + /// 群信息 + /// 邀请用户列表 + /// + Task CreateGroupAsync(int userId, GroupCreateDto groupCreateDto); + /// + /// 删除群 + /// + /// 操作者ID + /// 群ID + /// + Task DeleteGroupAsync(int userId, int groupId); + /// + /// 获取当前用户群列表 + /// + /// 操作者ID + /// + /// + /// + /// + Task> GetGroupListAsync(int userId, int page, int limit, bool desc); + + Task UpdateGroupConversationAsync(GroupUpdateConversationDto dto); + + Task HandleGroupInviteAsync(int userid, HandleGroupInviteDto dto); + Task HandleGroupRequestAsync(int userid, HandleGroupRequestDto dto); + Task MakeGroupRequestAsync(int userId,int? adminUserId,int groupId); + Task MakeGroupMemberAsync(int userId, int groupId, GroupMemberRole? role); + } +} diff --git a/backend/IM_API/Interface/Services/IJWTService.cs b/backend/IM_API/Interface/Services/IJWTService.cs index 202d444..2211e62 100644 --- a/backend/IM_API/Interface/Services/IJWTService.cs +++ b/backend/IM_API/Interface/Services/IJWTService.cs @@ -1,21 +1,21 @@ -using System.Security.Claims; - -namespace IM_API.Interface.Services -{ - public interface IJWTService - { - /// - /// 生成用户凭证 - /// - /// 负载 - /// 过期时间 - /// - string GenerateAccessToken(IEnumerable claims, DateTime expiresAt); - /// - /// 创建用户凭证 - /// - /// - /// - (string token, DateTime expiresAt) CreateAccessTokenForUser(int userId,string username,string role); - } -} +using System.Security.Claims; + +namespace IM_API.Interface.Services +{ + public interface IJWTService + { + /// + /// 生成用户凭证 + /// + /// 负载 + /// 过期时间 + /// + string GenerateAccessToken(IEnumerable claims, DateTime expiresAt); + /// + /// 创建用户凭证 + /// + /// + /// + (string token, DateTime expiresAt) CreateAccessTokenForUser(int userId,string username,string role); + } +} diff --git a/backend/IM_API/Interface/Services/IMessageSevice.cs b/backend/IM_API/Interface/Services/IMessageSevice.cs index 3f82049..d9f6978 100644 --- a/backend/IM_API/Interface/Services/IMessageSevice.cs +++ b/backend/IM_API/Interface/Services/IMessageSevice.cs @@ -1,53 +1,53 @@ -using IM_API.Dtos; -using IM_API.Dtos.Message; -using IM_API.Models; -using IM_API.VOs.Message; - -namespace IM_API.Interface.Services -{ - public interface IMessageSevice - { - /// - /// 发送私聊消息 - /// - /// 发送人id - /// 接收人 - /// - /// - Task SendPrivateMessageAsync(int senderId,int receiverId,MessageBaseDto dto); - /// - /// 发送群聊消息 - /// - /// 发送人id - /// 接收群id - /// - /// - Task SendGroupMessageAsync(int senderId,int groupId,MessageBaseDto dto); - /// - /// 消息入库 - /// - /// - /// - Task MakeMessageAsync(Message message); - /// - /// 获取历史消息列表 - /// - /// 会话id(用于获取指定用户间聊天消息) - /// 消息id - /// 获取消息数量 - /// - Task> GetMessagesAsync(int userId,MessageQueryDto dto); - /// - /// 获取未读消息数 - /// - /// - /// - Task GetUnreadCountAsync(int userId); - Task> GetUnreadMessagesAsync(int userId); - Task MarkAsReadAsync(int userId,long messageId); - Task MarkConversationAsReadAsync(int userId,int? userBId,int? groupId); - Task RecallMessageAsync(int userId,int messageId); - - - } -} +using IM_API.Dtos; +using IM_API.Dtos.Message; +using IM_API.Models; +using IM_API.VOs.Message; + +namespace IM_API.Interface.Services +{ + public interface IMessageSevice + { + /// + /// 发送私聊消息 + /// + /// 发送人id + /// 接收人 + /// + /// + Task SendPrivateMessageAsync(int senderId,int receiverId,MessageBaseDto dto); + /// + /// 发送群聊消息 + /// + /// 发送人id + /// 接收群id + /// + /// + Task SendGroupMessageAsync(int senderId,int groupId,MessageBaseDto dto); + /// + /// 消息入库 + /// + /// + /// + Task MakeMessageAsync(Message message); + /// + /// 获取历史消息列表 + /// + /// 会话id(用于获取指定用户间聊天消息) + /// 消息id + /// 获取消息数量 + /// + Task> GetMessagesAsync(int userId,MessageQueryDto dto); + /// + /// 获取未读消息数 + /// + /// + /// + Task GetUnreadCountAsync(int userId); + Task> GetUnreadMessagesAsync(int userId); + Task MarkAsReadAsync(int userId,long messageId); + Task MarkConversationAsReadAsync(int userId,int? userBId,int? groupId); + Task RecallMessageAsync(int userId,int messageId); + + + } +} diff --git a/backend/IM_API/Interface/Services/IRefreshTokenService.cs b/backend/IM_API/Interface/Services/IRefreshTokenService.cs index 3133fc9..b544dd6 100644 --- a/backend/IM_API/Interface/Services/IRefreshTokenService.cs +++ b/backend/IM_API/Interface/Services/IRefreshTokenService.cs @@ -1,27 +1,27 @@ -namespace IM_API.Interface.Services -{ - public interface IRefreshTokenService - { - /// - /// 创建刷新令牌 - /// - /// - /// - /// - Task CreateRefreshTokenAsync(int userId, CancellationToken ct = default); - /// - /// 验证刷新令牌 - /// - /// 刷新令牌 - /// - /// - Task<(bool ok, int userId)> ValidateRefreshTokenAsync(string token, CancellationToken ct = default); - /// - /// 删除更新令牌 - /// - /// 刷新令牌 - /// - /// - Task RevokeRefreshTokenAsync(string token, CancellationToken ct = default); - } -} +namespace IM_API.Interface.Services +{ + public interface IRefreshTokenService + { + /// + /// 创建刷新令牌 + /// + /// + /// + /// + Task CreateRefreshTokenAsync(int userId, CancellationToken ct = default); + /// + /// 验证刷新令牌 + /// + /// 刷新令牌 + /// + /// + Task<(bool ok, int userId)> ValidateRefreshTokenAsync(string token, CancellationToken ct = default); + /// + /// 删除更新令牌 + /// + /// 刷新令牌 + /// + /// + Task RevokeRefreshTokenAsync(string token, CancellationToken ct = default); + } +} diff --git a/backend/IM_API/Interface/Services/ISequenceIdService.cs b/backend/IM_API/Interface/Services/ISequenceIdService.cs index f18fe58..5360d0e 100644 --- a/backend/IM_API/Interface/Services/ISequenceIdService.cs +++ b/backend/IM_API/Interface/Services/ISequenceIdService.cs @@ -1,12 +1,12 @@ -namespace IM_API.Interface.Services -{ - public interface ISequenceIdService - { - /// - /// 创建消息序号 - /// - /// 聊天唯一标识/param> - /// - Task GetNextSquenceIdAsync(string streamKey); - } -} +namespace IM_API.Interface.Services +{ + public interface ISequenceIdService + { + /// + /// 创建消息序号 + /// + /// 聊天唯一标识/param> + /// + Task GetNextSquenceIdAsync(string streamKey); + } +} diff --git a/backend/IM_API/Interface/Services/IUserService.cs b/backend/IM_API/Interface/Services/IUserService.cs index 68a5d38..065a226 100644 --- a/backend/IM_API/Interface/Services/IUserService.cs +++ b/backend/IM_API/Interface/Services/IUserService.cs @@ -1,45 +1,45 @@ -using IM_API.Dtos.User; -using IM_API.Models; - -namespace IM_API.Interface.Services -{ - public interface IUserService - { - /// - /// 获取用户信息 - /// - /// - /// - Task GetUserInfoAsync(int userId); - /// - /// 用户名查找用户 - /// - /// - /// - Task GetUserInfoByUsernameAsync(string username); - /// - /// 更新用户信息 - /// - /// - /// - Task UpdateUserAsync(int userId, UpdateUserDto dto); - /// - /// 重置用户密码 - /// - /// - /// - Task ResetPasswordAsync(int userId, string oldPassword, string password); - /// - /// 更新用户在线状态 - /// - /// - /// - Task UpdateOlineStatusAsync(int userId, UserOnlineStatus onlineStatus); - /// - /// 批量获取用户信息 - /// - /// 用户id列表 - /// - Task> GetUserInfoListAsync(List ids); - } -} +using IM_API.Dtos.User; +using IM_API.Models; + +namespace IM_API.Interface.Services +{ + public interface IUserService + { + /// + /// 获取用户信息 + /// + /// + /// + Task GetUserInfoAsync(int userId); + /// + /// 用户名查找用户 + /// + /// + /// + Task GetUserInfoByUsernameAsync(string username); + /// + /// 更新用户信息 + /// + /// + /// + Task UpdateUserAsync(int userId, UpdateUserDto dto); + /// + /// 重置用户密码 + /// + /// + /// + Task ResetPasswordAsync(int userId, string oldPassword, string password); + /// + /// 更新用户在线状态 + /// + /// + /// + Task UpdateOlineStatusAsync(int userId, UserOnlineStatus onlineStatus); + /// + /// 批量获取用户信息 + /// + /// 用户id列表 + /// + Task> GetUserInfoListAsync(List ids); + } +} diff --git a/backend/IM_API/Migrations/20260204140029_InitialCreate.Designer.cs b/backend/IM_API/Migrations/20260204140029_InitialCreate.Designer.cs index 387b874..00654b7 100644 --- a/backend/IM_API/Migrations/20260204140029_InitialCreate.Designer.cs +++ b/backend/IM_API/Migrations/20260204140029_InitialCreate.Designer.cs @@ -1,1094 +1,1094 @@ -// -using System; -using IM_API.Models; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Metadata; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace IM_API.Migrations -{ - [DbContext(typeof(ImContext))] - [Migration("20260204140029_InitialCreate")] - partial class InitialCreate - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .UseCollation("latin1_swedish_ci") - .HasAnnotation("ProductVersion", "8.0.21") - .HasAnnotation("Relational:MaxIdentifierLength", 64); - - MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); - MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("状态(0:正常,2:封禁) "); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("更新时间 "); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RoleId" }, "RoleId"); - - b.ToTable("admins", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("int(11)"); - - b.Property("LastMessage") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("最后一条最新消息"); - - b.Property("LastMessageTime") - .HasColumnType("datetime") - .HasComment("最后一条消息发送时间"); - - b.Property("LastReadMessageId") - .HasColumnType("int(11)") - .HasColumnName("lastReadMessageId") - .HasComment("最后一条未读消息ID "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.Property("TargetId") - .HasColumnType("int(11)") - .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); - - b.Property("UnreadCount") - .HasColumnType("int(11)") - .HasComment("未读消息数 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid"); - - b.HasIndex(new[] { "LastReadMessageId" }, "lastMessageId"); - - b.ToTable("conversations", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); - - b.Property("LastLogin") - .HasColumnType("datetime") - .HasComment("最后一次登录 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("设备所属用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid") - .HasDatabaseName("Userid1"); - - b.ToTable("devices", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("MessageId") - .HasColumnType("int(11)") - .HasComment("关联消息ID "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("文件名 "); - - b.Property("Size") - .HasColumnType("int(11)") - .HasComment("文件大小(单位:KB) "); - - b.Property("Type") - .IsRequired() - .HasMaxLength(10) - .HasColumnType("varchar(10)") - .HasComment("文件类型 "); - - b.Property("Url") - .IsRequired() - .HasMaxLength(100) - .HasColumnType("varchar(100)") - .HasColumnName("URL") - .HasComment("文件储存URL "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "MessageId" }, "Messageld"); - - b.ToTable("files", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("好友头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("好友关系创建时间"); - - b.Property("FriendId") - .HasColumnType("int(11)") - .HasComment("用户2ID"); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("好友备注名"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户ID"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID"); - - b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); - - b.HasIndex(new[] { "FriendId" }, "用户2id"); - - b.ToTable("friends", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("申请时间 "); - - b.Property("Description") - .HasColumnType("text") - .HasComment("申请附言 "); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("备注"); - - b.Property("RequestUser") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.Property("ResponseUser") - .HasColumnType("int(11)") - .HasComment("被申请人 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RequestUser" }, "RequestUser"); - - b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); - - b.ToTable("friend_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("AllMembersBanned") - .HasColumnType("tinyint(4)") - .HasComment("全员禁言(0允许发言,2全员禁言)"); - - b.Property("Announcement") - .HasColumnType("text") - .HasComment("群公告"); - - b.Property("Auhority") - .HasColumnType("tinyint(4)") - .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); - - b.Property("Avatar") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("群头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("群聊创建时间"); - - b.Property("GroupMaster") - .HasColumnType("int(11)") - .HasComment("群主"); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("群聊名称"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("群聊状态\r\n(1:正常,2:封禁)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID1"); - - b.ToTable("groups", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("InviteUser") - .HasColumnType("int(11)") - .HasComment("邀请用户"); - - b.Property("InvitedUser") - .HasColumnType("int(11)") - .HasComment("被邀请用户"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId"); - - b.HasIndex(new[] { "InviteUser" }, "InviteUser"); - - b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); - - b.ToTable("group_invite", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("加入群聊时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("Role") - .HasColumnType("tinyint(4)") - .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户编号"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "Groupld"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID2"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld1"); - - b.ToTable("group_member", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("入群附言"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号\r\n"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId") - .HasDatabaseName("GroupId1"); - - b.ToTable("group_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(通Devices/DType) "); - - b.Property("Logined") - .HasColumnType("datetime") - .HasComment("登录时间 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("登录用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld2"); - - b.ToTable("login_log", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("tinyint(4)") - .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("消息内容 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("发送时间 "); - - b.Property("GroupMemberId") - .HasColumnType("int(11)") - .HasComment("若为群消息则表示具体的成员id"); - - b.Property("MsgType") - .HasColumnType("tinyint(4)") - .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); - - b.Property("Recipient") - .HasColumnType("int(11)") - .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); - - b.Property("Sender") - .HasColumnType("int(11)") - .HasComment("发送者 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("消息状态(0:已发送,1:已撤回) "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Sender" }, "Sender"); - - b.ToTable("messages", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("通知内容"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Ntype") - .HasColumnType("tinyint(4)") - .HasColumnName("NType") - .HasComment("通知类型(0:文本)"); - - b.Property("Title") - .IsRequired() - .HasMaxLength(40) - .HasColumnType("varchar(40)") - .HasComment("通知标题"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("接收人(为空为全体通知)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld3"); - - b.ToTable("notifications", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Code") - .HasColumnType("int(11)") - .HasComment("权限编码 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("权限名称 "); - - b.Property("Ptype") - .HasColumnType("int(11)") - .HasColumnName("PType") - .HasComment("权限类型(0:增,1:删,2:改,3:查) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("permissions", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.Property("Id") - .HasColumnType("int(11)") - .HasColumnName("ID"); - - b.Property("PermissionId") - .HasColumnType("int(11)") - .HasComment("权限 "); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "PermissionId" }, "Permissionld"); - - b.HasIndex(new[] { "RoleId" }, "Roleld"); - - b.ToTable("permissionarole", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("角色描述 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("角色名称 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("roles", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("用户头像链接"); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("创建时间"); - - b.Property("IsDeleted") - .HasColumnType("tinyint(4)") - .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); - - b.Property("NickName") - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户昵称"); - - b.Property("OnlineStatus") - .HasColumnType("tinyint(4)") - .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("Status") - .ValueGeneratedOnAdd() - .HasColumnType("tinyint(4)") - .HasDefaultValueSql("'1'") - .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("修改时间"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("唯一用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID3"); - - b.HasIndex(new[] { "Username" }, "Username") - .IsUnique(); - - b.ToTable("users", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Admins") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("admins_ibfk_1"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.HasOne("IM_API.Models.Message", "LastReadMessage") - .WithMany("Conversations") - .HasForeignKey("LastReadMessageId") - .HasConstraintName("conversations_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("Conversations") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("conversations_ibfk_1"); - - b.Navigation("LastReadMessage"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Devices") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("devices_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.HasOne("IM_API.Models.Message", "Message") - .WithMany("Files") - .HasForeignKey("MessageId") - .IsRequired() - .HasConstraintName("files_ibfk_1"); - - b.Navigation("Message"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.HasOne("IM_API.Models.User", "FriendNavigation") - .WithMany("FriendFriendNavigations") - .HasForeignKey("FriendId") - .IsRequired() - .HasConstraintName("用户2id"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("FriendUsers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("用户id"); - - b.Navigation("FriendNavigation"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.HasOne("IM_API.Models.User", "RequestUserNavigation") - .WithMany("FriendRequestRequestUserNavigations") - .HasForeignKey("RequestUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "ResponseUserNavigation") - .WithMany("FriendRequestResponseUserNavigations") - .HasForeignKey("ResponseUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_2"); - - b.Navigation("RequestUserNavigation"); - - b.Navigation("ResponseUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.HasOne("IM_API.Models.User", "GroupMasterNavigation") - .WithMany("Groups") - .HasForeignKey("GroupMaster") - .IsRequired() - .HasConstraintName("groups_ibfk_1"); - - b.Navigation("GroupMasterNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupInvites") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_invite_ibfk_2"); - - b.HasOne("IM_API.Models.User", "InviteUserNavigation") - .WithMany("GroupInviteInviteUserNavigations") - .HasForeignKey("InviteUser") - .HasConstraintName("group_invite_ibfk_1"); - - b.HasOne("IM_API.Models.User", "InvitedUserNavigation") - .WithMany("GroupInviteInvitedUserNavigations") - .HasForeignKey("InvitedUser") - .HasConstraintName("group_invite_ibfk_3"); - - b.Navigation("Group"); - - b.Navigation("InviteUserNavigation"); - - b.Navigation("InvitedUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupMembers") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_member_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("GroupMembers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("group_member_ibfk_1"); - - b.Navigation("Group"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "GroupNavigation") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_2"); - - b.Navigation("Group"); - - b.Navigation("GroupNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("LoginLogs") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("login_log_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.HasOne("IM_API.Models.User", "SenderNavigation") - .WithMany("Messages") - .HasForeignKey("Sender") - .IsRequired() - .HasConstraintName("messages_ibfk_1"); - - b.Navigation("SenderNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Notifications") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("notifications_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.HasOne("IM_API.Models.Permission", "Permission") - .WithMany("Permissionaroles") - .HasForeignKey("PermissionId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_2"); - - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Permissionaroles") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_1"); - - b.Navigation("Permission"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Navigation("GroupInvites"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Navigation("Conversations"); - - b.Navigation("Files"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Navigation("Admins"); - - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Navigation("Conversations"); - - b.Navigation("Devices"); - - b.Navigation("FriendFriendNavigations"); - - b.Navigation("FriendRequestRequestUserNavigations"); - - b.Navigation("FriendRequestResponseUserNavigations"); - - b.Navigation("FriendUsers"); - - b.Navigation("GroupInviteInviteUserNavigations"); - - b.Navigation("GroupInviteInvitedUserNavigations"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - - b.Navigation("Groups"); - - b.Navigation("LoginLogs"); - - b.Navigation("Messages"); - - b.Navigation("Notifications"); - }); -#pragma warning restore 612, 618 - } - } -} +// +using System; +using IM_API.Models; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace IM_API.Migrations +{ + [DbContext(typeof(ImContext))] + [Migration("20260204140029_InitialCreate")] + partial class InitialCreate + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .UseCollation("latin1_swedish_ci") + .HasAnnotation("ProductVersion", "8.0.21") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); + MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("状态(0:正常,2:封禁) "); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("更新时间 "); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RoleId" }, "RoleId"); + + b.ToTable("admins", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("int(11)"); + + b.Property("LastMessage") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("最后一条最新消息"); + + b.Property("LastMessageTime") + .HasColumnType("datetime") + .HasComment("最后一条消息发送时间"); + + b.Property("LastReadMessageId") + .HasColumnType("int(11)") + .HasColumnName("lastReadMessageId") + .HasComment("最后一条未读消息ID "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.Property("TargetId") + .HasColumnType("int(11)") + .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); + + b.Property("UnreadCount") + .HasColumnType("int(11)") + .HasComment("未读消息数 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid"); + + b.HasIndex(new[] { "LastReadMessageId" }, "lastMessageId"); + + b.ToTable("conversations", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); + + b.Property("LastLogin") + .HasColumnType("datetime") + .HasComment("最后一次登录 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("设备所属用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid") + .HasDatabaseName("Userid1"); + + b.ToTable("devices", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("MessageId") + .HasColumnType("int(11)") + .HasComment("关联消息ID "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("文件名 "); + + b.Property("Size") + .HasColumnType("int(11)") + .HasComment("文件大小(单位:KB) "); + + b.Property("Type") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("varchar(10)") + .HasComment("文件类型 "); + + b.Property("Url") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasColumnName("URL") + .HasComment("文件储存URL "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "MessageId" }, "Messageld"); + + b.ToTable("files", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("好友头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("好友关系创建时间"); + + b.Property("FriendId") + .HasColumnType("int(11)") + .HasComment("用户2ID"); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("好友备注名"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户ID"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID"); + + b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); + + b.HasIndex(new[] { "FriendId" }, "用户2id"); + + b.ToTable("friends", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("申请时间 "); + + b.Property("Description") + .HasColumnType("text") + .HasComment("申请附言 "); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("备注"); + + b.Property("RequestUser") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.Property("ResponseUser") + .HasColumnType("int(11)") + .HasComment("被申请人 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RequestUser" }, "RequestUser"); + + b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); + + b.ToTable("friend_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("AllMembersBanned") + .HasColumnType("tinyint(4)") + .HasComment("全员禁言(0允许发言,2全员禁言)"); + + b.Property("Announcement") + .HasColumnType("text") + .HasComment("群公告"); + + b.Property("Auhority") + .HasColumnType("tinyint(4)") + .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); + + b.Property("Avatar") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("群头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("群聊创建时间"); + + b.Property("GroupMaster") + .HasColumnType("int(11)") + .HasComment("群主"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("群聊名称"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("群聊状态\r\n(1:正常,2:封禁)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID1"); + + b.ToTable("groups", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("InviteUser") + .HasColumnType("int(11)") + .HasComment("邀请用户"); + + b.Property("InvitedUser") + .HasColumnType("int(11)") + .HasComment("被邀请用户"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId"); + + b.HasIndex(new[] { "InviteUser" }, "InviteUser"); + + b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); + + b.ToTable("group_invite", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("加入群聊时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("Role") + .HasColumnType("tinyint(4)") + .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户编号"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "Groupld"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID2"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld1"); + + b.ToTable("group_member", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("入群附言"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号\r\n"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId") + .HasDatabaseName("GroupId1"); + + b.ToTable("group_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(通Devices/DType) "); + + b.Property("Logined") + .HasColumnType("datetime") + .HasComment("登录时间 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("登录用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld2"); + + b.ToTable("login_log", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("tinyint(4)") + .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("消息内容 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("发送时间 "); + + b.Property("GroupMemberId") + .HasColumnType("int(11)") + .HasComment("若为群消息则表示具体的成员id"); + + b.Property("MsgType") + .HasColumnType("tinyint(4)") + .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); + + b.Property("Recipient") + .HasColumnType("int(11)") + .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); + + b.Property("Sender") + .HasColumnType("int(11)") + .HasComment("发送者 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("消息状态(0:已发送,1:已撤回) "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Sender" }, "Sender"); + + b.ToTable("messages", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("通知内容"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Ntype") + .HasColumnType("tinyint(4)") + .HasColumnName("NType") + .HasComment("通知类型(0:文本)"); + + b.Property("Title") + .IsRequired() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasComment("通知标题"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("接收人(为空为全体通知)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld3"); + + b.ToTable("notifications", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Code") + .HasColumnType("int(11)") + .HasComment("权限编码 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("权限名称 "); + + b.Property("Ptype") + .HasColumnType("int(11)") + .HasColumnName("PType") + .HasComment("权限类型(0:增,1:删,2:改,3:查) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("permissions", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.Property("Id") + .HasColumnType("int(11)") + .HasColumnName("ID"); + + b.Property("PermissionId") + .HasColumnType("int(11)") + .HasComment("权限 "); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "PermissionId" }, "Permissionld"); + + b.HasIndex(new[] { "RoleId" }, "Roleld"); + + b.ToTable("permissionarole", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("角色描述 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("角色名称 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("roles", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("用户头像链接"); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("创建时间"); + + b.Property("IsDeleted") + .HasColumnType("tinyint(4)") + .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); + + b.Property("NickName") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户昵称"); + + b.Property("OnlineStatus") + .HasColumnType("tinyint(4)") + .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("Status") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(4)") + .HasDefaultValueSql("'1'") + .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("修改时间"); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("唯一用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID3"); + + b.HasIndex(new[] { "Username" }, "Username") + .IsUnique(); + + b.ToTable("users", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Admins") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("admins_ibfk_1"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.HasOne("IM_API.Models.Message", "LastReadMessage") + .WithMany("Conversations") + .HasForeignKey("LastReadMessageId") + .HasConstraintName("conversations_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("Conversations") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("conversations_ibfk_1"); + + b.Navigation("LastReadMessage"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Devices") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("devices_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.HasOne("IM_API.Models.Message", "Message") + .WithMany("Files") + .HasForeignKey("MessageId") + .IsRequired() + .HasConstraintName("files_ibfk_1"); + + b.Navigation("Message"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.HasOne("IM_API.Models.User", "FriendNavigation") + .WithMany("FriendFriendNavigations") + .HasForeignKey("FriendId") + .IsRequired() + .HasConstraintName("用户2id"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("FriendUsers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("用户id"); + + b.Navigation("FriendNavigation"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.HasOne("IM_API.Models.User", "RequestUserNavigation") + .WithMany("FriendRequestRequestUserNavigations") + .HasForeignKey("RequestUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "ResponseUserNavigation") + .WithMany("FriendRequestResponseUserNavigations") + .HasForeignKey("ResponseUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_2"); + + b.Navigation("RequestUserNavigation"); + + b.Navigation("ResponseUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.HasOne("IM_API.Models.User", "GroupMasterNavigation") + .WithMany("Groups") + .HasForeignKey("GroupMaster") + .IsRequired() + .HasConstraintName("groups_ibfk_1"); + + b.Navigation("GroupMasterNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupInvites") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_invite_ibfk_2"); + + b.HasOne("IM_API.Models.User", "InviteUserNavigation") + .WithMany("GroupInviteInviteUserNavigations") + .HasForeignKey("InviteUser") + .HasConstraintName("group_invite_ibfk_1"); + + b.HasOne("IM_API.Models.User", "InvitedUserNavigation") + .WithMany("GroupInviteInvitedUserNavigations") + .HasForeignKey("InvitedUser") + .HasConstraintName("group_invite_ibfk_3"); + + b.Navigation("Group"); + + b.Navigation("InviteUserNavigation"); + + b.Navigation("InvitedUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupMembers") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_member_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("GroupMembers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("group_member_ibfk_1"); + + b.Navigation("Group"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "GroupNavigation") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_2"); + + b.Navigation("Group"); + + b.Navigation("GroupNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("LoginLogs") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("login_log_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.HasOne("IM_API.Models.User", "SenderNavigation") + .WithMany("Messages") + .HasForeignKey("Sender") + .IsRequired() + .HasConstraintName("messages_ibfk_1"); + + b.Navigation("SenderNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Notifications") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("notifications_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.HasOne("IM_API.Models.Permission", "Permission") + .WithMany("Permissionaroles") + .HasForeignKey("PermissionId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_2"); + + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Permissionaroles") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_1"); + + b.Navigation("Permission"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Navigation("GroupInvites"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Navigation("Conversations"); + + b.Navigation("Files"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Navigation("Admins"); + + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Navigation("Conversations"); + + b.Navigation("Devices"); + + b.Navigation("FriendFriendNavigations"); + + b.Navigation("FriendRequestRequestUserNavigations"); + + b.Navigation("FriendRequestResponseUserNavigations"); + + b.Navigation("FriendUsers"); + + b.Navigation("GroupInviteInviteUserNavigations"); + + b.Navigation("GroupInviteInvitedUserNavigations"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + + b.Navigation("Groups"); + + b.Navigation("LoginLogs"); + + b.Navigation("Messages"); + + b.Navigation("Notifications"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/backend/IM_API/Migrations/20260204140029_InitialCreate.cs b/backend/IM_API/Migrations/20260204140029_InitialCreate.cs index 2ba062e..0782db0 100644 --- a/backend/IM_API/Migrations/20260204140029_InitialCreate.cs +++ b/backend/IM_API/Migrations/20260204140029_InitialCreate.cs @@ -1,73 +1,73 @@ -using System; -using Microsoft.EntityFrameworkCore.Metadata; -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace IM_API.Migrations -{ - /// - public partial class InitialCreate : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropTable( - name: "admins"); - - migrationBuilder.DropTable( - name: "conversations"); - - migrationBuilder.DropTable( - name: "devices"); - - migrationBuilder.DropTable( - name: "files"); - - migrationBuilder.DropTable( - name: "friend_request"); - - migrationBuilder.DropTable( - name: "friends"); - - migrationBuilder.DropTable( - name: "group_invite"); - - migrationBuilder.DropTable( - name: "group_member"); - - migrationBuilder.DropTable( - name: "group_request"); - - migrationBuilder.DropTable( - name: "login_log"); - - migrationBuilder.DropTable( - name: "notifications"); - - migrationBuilder.DropTable( - name: "permissionarole"); - - migrationBuilder.DropTable( - name: "messages"); - - migrationBuilder.DropTable( - name: "groups"); - - migrationBuilder.DropTable( - name: "roles"); - - migrationBuilder.DropTable( - name: "permissions"); - - migrationBuilder.DropTable( - name: "users"); - } - } -} +using System; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace IM_API.Migrations +{ + /// + public partial class InitialCreate : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "admins"); + + migrationBuilder.DropTable( + name: "conversations"); + + migrationBuilder.DropTable( + name: "devices"); + + migrationBuilder.DropTable( + name: "files"); + + migrationBuilder.DropTable( + name: "friend_request"); + + migrationBuilder.DropTable( + name: "friends"); + + migrationBuilder.DropTable( + name: "group_invite"); + + migrationBuilder.DropTable( + name: "group_member"); + + migrationBuilder.DropTable( + name: "group_request"); + + migrationBuilder.DropTable( + name: "login_log"); + + migrationBuilder.DropTable( + name: "notifications"); + + migrationBuilder.DropTable( + name: "permissionarole"); + + migrationBuilder.DropTable( + name: "messages"); + + migrationBuilder.DropTable( + name: "groups"); + + migrationBuilder.DropTable( + name: "roles"); + + migrationBuilder.DropTable( + name: "permissions"); + + migrationBuilder.DropTable( + name: "users"); + } + } +} diff --git a/backend/IM_API/Migrations/20260204140708_change_file.Designer.cs b/backend/IM_API/Migrations/20260204140708_change_file.Designer.cs index 608a65f..3a369c7 100644 --- a/backend/IM_API/Migrations/20260204140708_change_file.Designer.cs +++ b/backend/IM_API/Migrations/20260204140708_change_file.Designer.cs @@ -1,1094 +1,1094 @@ -// -using System; -using IM_API.Models; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Metadata; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace IM_API.Migrations -{ - [DbContext(typeof(ImContext))] - [Migration("20260204140708_change_file")] - partial class change_file - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .UseCollation("latin1_swedish_ci") - .HasAnnotation("ProductVersion", "8.0.21") - .HasAnnotation("Relational:MaxIdentifierLength", 64); - - MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); - MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("状态(0:正常,2:封禁) "); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("更新时间 "); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RoleId" }, "RoleId"); - - b.ToTable("admins", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("int(11)"); - - b.Property("LastMessage") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("最后一条最新消息"); - - b.Property("LastMessageTime") - .HasColumnType("datetime") - .HasComment("最后一条消息发送时间"); - - b.Property("LastReadMessageId") - .HasColumnType("int(11)") - .HasColumnName("lastReadMessageId") - .HasComment("最后一条未读消息ID "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.Property("TargetId") - .HasColumnType("int(11)") - .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); - - b.Property("UnreadCount") - .HasColumnType("int(11)") - .HasComment("未读消息数 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid"); - - b.HasIndex(new[] { "LastReadMessageId" }, "lastMessageId"); - - b.ToTable("conversations", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); - - b.Property("LastLogin") - .HasColumnType("datetime") - .HasComment("最后一次登录 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("设备所属用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid") - .HasDatabaseName("Userid1"); - - b.ToTable("devices", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("FileType") - .IsRequired() - .HasMaxLength(10) - .HasColumnType("varchar(10)") - .HasComment("文件类型 "); - - b.Property("MessageId") - .HasColumnType("int(11)") - .HasComment("关联消息ID "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("文件名 "); - - b.Property("Size") - .HasColumnType("int(11)") - .HasComment("文件大小(单位:KB) "); - - b.Property("Url") - .IsRequired() - .HasMaxLength(100) - .HasColumnType("varchar(100)") - .HasColumnName("URL") - .HasComment("文件储存URL "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "MessageId" }, "Messageld"); - - b.ToTable("files", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("好友头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("好友关系创建时间"); - - b.Property("FriendId") - .HasColumnType("int(11)") - .HasComment("用户2ID"); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("好友备注名"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户ID"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID"); - - b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); - - b.HasIndex(new[] { "FriendId" }, "用户2id"); - - b.ToTable("friends", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("申请时间 "); - - b.Property("Description") - .HasColumnType("text") - .HasComment("申请附言 "); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("备注"); - - b.Property("RequestUser") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.Property("ResponseUser") - .HasColumnType("int(11)") - .HasComment("被申请人 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RequestUser" }, "RequestUser"); - - b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); - - b.ToTable("friend_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("AllMembersBanned") - .HasColumnType("tinyint(4)") - .HasComment("全员禁言(0允许发言,2全员禁言)"); - - b.Property("Announcement") - .HasColumnType("text") - .HasComment("群公告"); - - b.Property("Auhority") - .HasColumnType("tinyint(4)") - .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); - - b.Property("Avatar") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("群头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("群聊创建时间"); - - b.Property("GroupMaster") - .HasColumnType("int(11)") - .HasComment("群主"); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("群聊名称"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("群聊状态\r\n(1:正常,2:封禁)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID1"); - - b.ToTable("groups", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("InviteUser") - .HasColumnType("int(11)") - .HasComment("邀请用户"); - - b.Property("InvitedUser") - .HasColumnType("int(11)") - .HasComment("被邀请用户"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId"); - - b.HasIndex(new[] { "InviteUser" }, "InviteUser"); - - b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); - - b.ToTable("group_invite", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("加入群聊时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("Role") - .HasColumnType("tinyint(4)") - .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户编号"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "Groupld"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID2"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld1"); - - b.ToTable("group_member", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("入群附言"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号\r\n"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId") - .HasDatabaseName("GroupId1"); - - b.ToTable("group_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(通Devices/DType) "); - - b.Property("Logined") - .HasColumnType("datetime") - .HasComment("登录时间 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("登录用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld2"); - - b.ToTable("login_log", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("tinyint(4)") - .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("消息内容 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("发送时间 "); - - b.Property("GroupMemberId") - .HasColumnType("int(11)") - .HasComment("若为群消息则表示具体的成员id"); - - b.Property("MsgType") - .HasColumnType("tinyint(4)") - .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); - - b.Property("Recipient") - .HasColumnType("int(11)") - .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); - - b.Property("Sender") - .HasColumnType("int(11)") - .HasComment("发送者 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("消息状态(0:已发送,1:已撤回) "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Sender" }, "Sender"); - - b.ToTable("messages", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("通知内容"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Ntype") - .HasColumnType("tinyint(4)") - .HasColumnName("NType") - .HasComment("通知类型(0:文本)"); - - b.Property("Title") - .IsRequired() - .HasMaxLength(40) - .HasColumnType("varchar(40)") - .HasComment("通知标题"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("接收人(为空为全体通知)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld3"); - - b.ToTable("notifications", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Code") - .HasColumnType("int(11)") - .HasComment("权限编码 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("权限名称 "); - - b.Property("Ptype") - .HasColumnType("int(11)") - .HasColumnName("PType") - .HasComment("权限类型(0:增,1:删,2:改,3:查) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("permissions", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.Property("Id") - .HasColumnType("int(11)") - .HasColumnName("ID"); - - b.Property("PermissionId") - .HasColumnType("int(11)") - .HasComment("权限 "); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "PermissionId" }, "Permissionld"); - - b.HasIndex(new[] { "RoleId" }, "Roleld"); - - b.ToTable("permissionarole", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("角色描述 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("角色名称 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("roles", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("用户头像链接"); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("创建时间"); - - b.Property("IsDeleted") - .HasColumnType("tinyint(4)") - .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); - - b.Property("NickName") - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户昵称"); - - b.Property("OnlineStatus") - .HasColumnType("tinyint(4)") - .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("Status") - .ValueGeneratedOnAdd() - .HasColumnType("tinyint(4)") - .HasDefaultValueSql("'1'") - .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("修改时间"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("唯一用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID3"); - - b.HasIndex(new[] { "Username" }, "Username") - .IsUnique(); - - b.ToTable("users", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Admins") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("admins_ibfk_1"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.HasOne("IM_API.Models.Message", "LastReadMessage") - .WithMany("Conversations") - .HasForeignKey("LastReadMessageId") - .HasConstraintName("conversations_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("Conversations") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("conversations_ibfk_1"); - - b.Navigation("LastReadMessage"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Devices") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("devices_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.HasOne("IM_API.Models.Message", "Message") - .WithMany("Files") - .HasForeignKey("MessageId") - .IsRequired() - .HasConstraintName("files_ibfk_1"); - - b.Navigation("Message"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.HasOne("IM_API.Models.User", "FriendNavigation") - .WithMany("FriendFriendNavigations") - .HasForeignKey("FriendId") - .IsRequired() - .HasConstraintName("用户2id"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("FriendUsers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("用户id"); - - b.Navigation("FriendNavigation"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.HasOne("IM_API.Models.User", "RequestUserNavigation") - .WithMany("FriendRequestRequestUserNavigations") - .HasForeignKey("RequestUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "ResponseUserNavigation") - .WithMany("FriendRequestResponseUserNavigations") - .HasForeignKey("ResponseUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_2"); - - b.Navigation("RequestUserNavigation"); - - b.Navigation("ResponseUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.HasOne("IM_API.Models.User", "GroupMasterNavigation") - .WithMany("Groups") - .HasForeignKey("GroupMaster") - .IsRequired() - .HasConstraintName("groups_ibfk_1"); - - b.Navigation("GroupMasterNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupInvites") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_invite_ibfk_2"); - - b.HasOne("IM_API.Models.User", "InviteUserNavigation") - .WithMany("GroupInviteInviteUserNavigations") - .HasForeignKey("InviteUser") - .HasConstraintName("group_invite_ibfk_1"); - - b.HasOne("IM_API.Models.User", "InvitedUserNavigation") - .WithMany("GroupInviteInvitedUserNavigations") - .HasForeignKey("InvitedUser") - .HasConstraintName("group_invite_ibfk_3"); - - b.Navigation("Group"); - - b.Navigation("InviteUserNavigation"); - - b.Navigation("InvitedUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupMembers") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_member_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("GroupMembers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("group_member_ibfk_1"); - - b.Navigation("Group"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "GroupNavigation") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_2"); - - b.Navigation("Group"); - - b.Navigation("GroupNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("LoginLogs") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("login_log_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.HasOne("IM_API.Models.User", "SenderNavigation") - .WithMany("Messages") - .HasForeignKey("Sender") - .IsRequired() - .HasConstraintName("messages_ibfk_1"); - - b.Navigation("SenderNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Notifications") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("notifications_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.HasOne("IM_API.Models.Permission", "Permission") - .WithMany("Permissionaroles") - .HasForeignKey("PermissionId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_2"); - - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Permissionaroles") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_1"); - - b.Navigation("Permission"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Navigation("GroupInvites"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Navigation("Conversations"); - - b.Navigation("Files"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Navigation("Admins"); - - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Navigation("Conversations"); - - b.Navigation("Devices"); - - b.Navigation("FriendFriendNavigations"); - - b.Navigation("FriendRequestRequestUserNavigations"); - - b.Navigation("FriendRequestResponseUserNavigations"); - - b.Navigation("FriendUsers"); - - b.Navigation("GroupInviteInviteUserNavigations"); - - b.Navigation("GroupInviteInvitedUserNavigations"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - - b.Navigation("Groups"); - - b.Navigation("LoginLogs"); - - b.Navigation("Messages"); - - b.Navigation("Notifications"); - }); -#pragma warning restore 612, 618 - } - } -} +// +using System; +using IM_API.Models; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace IM_API.Migrations +{ + [DbContext(typeof(ImContext))] + [Migration("20260204140708_change_file")] + partial class change_file + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .UseCollation("latin1_swedish_ci") + .HasAnnotation("ProductVersion", "8.0.21") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); + MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("状态(0:正常,2:封禁) "); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("更新时间 "); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RoleId" }, "RoleId"); + + b.ToTable("admins", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("int(11)"); + + b.Property("LastMessage") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("最后一条最新消息"); + + b.Property("LastMessageTime") + .HasColumnType("datetime") + .HasComment("最后一条消息发送时间"); + + b.Property("LastReadMessageId") + .HasColumnType("int(11)") + .HasColumnName("lastReadMessageId") + .HasComment("最后一条未读消息ID "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.Property("TargetId") + .HasColumnType("int(11)") + .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); + + b.Property("UnreadCount") + .HasColumnType("int(11)") + .HasComment("未读消息数 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid"); + + b.HasIndex(new[] { "LastReadMessageId" }, "lastMessageId"); + + b.ToTable("conversations", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); + + b.Property("LastLogin") + .HasColumnType("datetime") + .HasComment("最后一次登录 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("设备所属用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid") + .HasDatabaseName("Userid1"); + + b.ToTable("devices", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("FileType") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("varchar(10)") + .HasComment("文件类型 "); + + b.Property("MessageId") + .HasColumnType("int(11)") + .HasComment("关联消息ID "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("文件名 "); + + b.Property("Size") + .HasColumnType("int(11)") + .HasComment("文件大小(单位:KB) "); + + b.Property("Url") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasColumnName("URL") + .HasComment("文件储存URL "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "MessageId" }, "Messageld"); + + b.ToTable("files", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("好友头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("好友关系创建时间"); + + b.Property("FriendId") + .HasColumnType("int(11)") + .HasComment("用户2ID"); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("好友备注名"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户ID"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID"); + + b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); + + b.HasIndex(new[] { "FriendId" }, "用户2id"); + + b.ToTable("friends", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("申请时间 "); + + b.Property("Description") + .HasColumnType("text") + .HasComment("申请附言 "); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("备注"); + + b.Property("RequestUser") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.Property("ResponseUser") + .HasColumnType("int(11)") + .HasComment("被申请人 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RequestUser" }, "RequestUser"); + + b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); + + b.ToTable("friend_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("AllMembersBanned") + .HasColumnType("tinyint(4)") + .HasComment("全员禁言(0允许发言,2全员禁言)"); + + b.Property("Announcement") + .HasColumnType("text") + .HasComment("群公告"); + + b.Property("Auhority") + .HasColumnType("tinyint(4)") + .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); + + b.Property("Avatar") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("群头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("群聊创建时间"); + + b.Property("GroupMaster") + .HasColumnType("int(11)") + .HasComment("群主"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("群聊名称"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("群聊状态\r\n(1:正常,2:封禁)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID1"); + + b.ToTable("groups", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("InviteUser") + .HasColumnType("int(11)") + .HasComment("邀请用户"); + + b.Property("InvitedUser") + .HasColumnType("int(11)") + .HasComment("被邀请用户"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId"); + + b.HasIndex(new[] { "InviteUser" }, "InviteUser"); + + b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); + + b.ToTable("group_invite", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("加入群聊时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("Role") + .HasColumnType("tinyint(4)") + .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户编号"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "Groupld"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID2"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld1"); + + b.ToTable("group_member", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("入群附言"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号\r\n"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId") + .HasDatabaseName("GroupId1"); + + b.ToTable("group_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(通Devices/DType) "); + + b.Property("Logined") + .HasColumnType("datetime") + .HasComment("登录时间 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("登录用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld2"); + + b.ToTable("login_log", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("tinyint(4)") + .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("消息内容 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("发送时间 "); + + b.Property("GroupMemberId") + .HasColumnType("int(11)") + .HasComment("若为群消息则表示具体的成员id"); + + b.Property("MsgType") + .HasColumnType("tinyint(4)") + .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); + + b.Property("Recipient") + .HasColumnType("int(11)") + .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); + + b.Property("Sender") + .HasColumnType("int(11)") + .HasComment("发送者 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("消息状态(0:已发送,1:已撤回) "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Sender" }, "Sender"); + + b.ToTable("messages", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("通知内容"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Ntype") + .HasColumnType("tinyint(4)") + .HasColumnName("NType") + .HasComment("通知类型(0:文本)"); + + b.Property("Title") + .IsRequired() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasComment("通知标题"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("接收人(为空为全体通知)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld3"); + + b.ToTable("notifications", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Code") + .HasColumnType("int(11)") + .HasComment("权限编码 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("权限名称 "); + + b.Property("Ptype") + .HasColumnType("int(11)") + .HasColumnName("PType") + .HasComment("权限类型(0:增,1:删,2:改,3:查) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("permissions", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.Property("Id") + .HasColumnType("int(11)") + .HasColumnName("ID"); + + b.Property("PermissionId") + .HasColumnType("int(11)") + .HasComment("权限 "); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "PermissionId" }, "Permissionld"); + + b.HasIndex(new[] { "RoleId" }, "Roleld"); + + b.ToTable("permissionarole", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("角色描述 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("角色名称 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("roles", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("用户头像链接"); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("创建时间"); + + b.Property("IsDeleted") + .HasColumnType("tinyint(4)") + .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); + + b.Property("NickName") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户昵称"); + + b.Property("OnlineStatus") + .HasColumnType("tinyint(4)") + .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("Status") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(4)") + .HasDefaultValueSql("'1'") + .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("修改时间"); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("唯一用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID3"); + + b.HasIndex(new[] { "Username" }, "Username") + .IsUnique(); + + b.ToTable("users", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Admins") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("admins_ibfk_1"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.HasOne("IM_API.Models.Message", "LastReadMessage") + .WithMany("Conversations") + .HasForeignKey("LastReadMessageId") + .HasConstraintName("conversations_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("Conversations") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("conversations_ibfk_1"); + + b.Navigation("LastReadMessage"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Devices") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("devices_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.HasOne("IM_API.Models.Message", "Message") + .WithMany("Files") + .HasForeignKey("MessageId") + .IsRequired() + .HasConstraintName("files_ibfk_1"); + + b.Navigation("Message"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.HasOne("IM_API.Models.User", "FriendNavigation") + .WithMany("FriendFriendNavigations") + .HasForeignKey("FriendId") + .IsRequired() + .HasConstraintName("用户2id"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("FriendUsers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("用户id"); + + b.Navigation("FriendNavigation"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.HasOne("IM_API.Models.User", "RequestUserNavigation") + .WithMany("FriendRequestRequestUserNavigations") + .HasForeignKey("RequestUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "ResponseUserNavigation") + .WithMany("FriendRequestResponseUserNavigations") + .HasForeignKey("ResponseUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_2"); + + b.Navigation("RequestUserNavigation"); + + b.Navigation("ResponseUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.HasOne("IM_API.Models.User", "GroupMasterNavigation") + .WithMany("Groups") + .HasForeignKey("GroupMaster") + .IsRequired() + .HasConstraintName("groups_ibfk_1"); + + b.Navigation("GroupMasterNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupInvites") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_invite_ibfk_2"); + + b.HasOne("IM_API.Models.User", "InviteUserNavigation") + .WithMany("GroupInviteInviteUserNavigations") + .HasForeignKey("InviteUser") + .HasConstraintName("group_invite_ibfk_1"); + + b.HasOne("IM_API.Models.User", "InvitedUserNavigation") + .WithMany("GroupInviteInvitedUserNavigations") + .HasForeignKey("InvitedUser") + .HasConstraintName("group_invite_ibfk_3"); + + b.Navigation("Group"); + + b.Navigation("InviteUserNavigation"); + + b.Navigation("InvitedUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupMembers") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_member_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("GroupMembers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("group_member_ibfk_1"); + + b.Navigation("Group"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "GroupNavigation") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_2"); + + b.Navigation("Group"); + + b.Navigation("GroupNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("LoginLogs") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("login_log_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.HasOne("IM_API.Models.User", "SenderNavigation") + .WithMany("Messages") + .HasForeignKey("Sender") + .IsRequired() + .HasConstraintName("messages_ibfk_1"); + + b.Navigation("SenderNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Notifications") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("notifications_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.HasOne("IM_API.Models.Permission", "Permission") + .WithMany("Permissionaroles") + .HasForeignKey("PermissionId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_2"); + + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Permissionaroles") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_1"); + + b.Navigation("Permission"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Navigation("GroupInvites"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Navigation("Conversations"); + + b.Navigation("Files"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Navigation("Admins"); + + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Navigation("Conversations"); + + b.Navigation("Devices"); + + b.Navigation("FriendFriendNavigations"); + + b.Navigation("FriendRequestRequestUserNavigations"); + + b.Navigation("FriendRequestResponseUserNavigations"); + + b.Navigation("FriendUsers"); + + b.Navigation("GroupInviteInviteUserNavigations"); + + b.Navigation("GroupInviteInvitedUserNavigations"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + + b.Navigation("Groups"); + + b.Navigation("LoginLogs"); + + b.Navigation("Messages"); + + b.Navigation("Notifications"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/backend/IM_API/Migrations/20260204140708_change_file.cs b/backend/IM_API/Migrations/20260204140708_change_file.cs index 90bc8f7..6da08cd 100644 --- a/backend/IM_API/Migrations/20260204140708_change_file.cs +++ b/backend/IM_API/Migrations/20260204140708_change_file.cs @@ -1,28 +1,28 @@ -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace IM_API.Migrations -{ - /// - public partial class change_file : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.RenameColumn( - name: "Type", - table: "files", - newName: "FileType"); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.RenameColumn( - name: "FileType", - table: "files", - newName: "Type"); - } - } -} +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace IM_API.Migrations +{ + /// + public partial class change_file : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.RenameColumn( + name: "Type", + table: "files", + newName: "FileType"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.RenameColumn( + name: "FileType", + table: "files", + newName: "Type"); + } + } +} diff --git a/backend/IM_API/Migrations/20260204150644_add-SequenceId.Designer.cs b/backend/IM_API/Migrations/20260204150644_add-SequenceId.Designer.cs index 7c6b3e6..526236e 100644 --- a/backend/IM_API/Migrations/20260204150644_add-SequenceId.Designer.cs +++ b/backend/IM_API/Migrations/20260204150644_add-SequenceId.Designer.cs @@ -1,1093 +1,1093 @@ -// -using System; -using IM_API.Models; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Metadata; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace IM_API.Migrations -{ - [DbContext(typeof(ImContext))] - [Migration("20260204150644_add-SequenceId")] - partial class addSequenceId - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .UseCollation("latin1_swedish_ci") - .HasAnnotation("ProductVersion", "8.0.21") - .HasAnnotation("Relational:MaxIdentifierLength", 64); - - MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); - MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("状态(0:正常,2:封禁) "); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("更新时间 "); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RoleId" }, "RoleId"); - - b.ToTable("admins", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("int(11)"); - - b.Property("LastMessage") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("最后一条最新消息"); - - b.Property("LastMessageTime") - .HasColumnType("datetime") - .HasComment("最后一条消息发送时间"); - - b.Property("LastReadMessageId") - .HasColumnType("int(11)") - .HasColumnName("lastReadMessageId") - .HasComment("最后一条未读消息ID "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.Property("TargetId") - .HasColumnType("int(11)") - .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); - - b.Property("UnreadCount") - .HasColumnType("int(11)") - .HasComment("未读消息数 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid"); - - b.HasIndex(new[] { "LastReadMessageId" }, "lastMessageId"); - - b.ToTable("conversations", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); - - b.Property("LastLogin") - .HasColumnType("datetime") - .HasComment("最后一次登录 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("设备所属用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid") - .HasDatabaseName("Userid1"); - - b.ToTable("devices", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("FileType") - .IsRequired() - .HasMaxLength(10) - .HasColumnType("varchar(10)") - .HasComment("文件类型 "); - - b.Property("MessageId") - .HasColumnType("int(11)") - .HasComment("关联消息ID "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("文件名 "); - - b.Property("Size") - .HasColumnType("int(11)") - .HasComment("文件大小(单位:KB) "); - - b.Property("Url") - .IsRequired() - .HasMaxLength(100) - .HasColumnType("varchar(100)") - .HasColumnName("URL") - .HasComment("文件储存URL "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "MessageId" }, "Messageld"); - - b.ToTable("files", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("好友头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("好友关系创建时间"); - - b.Property("FriendId") - .HasColumnType("int(11)") - .HasComment("用户2ID"); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("好友备注名"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户ID"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID"); - - b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); - - b.HasIndex(new[] { "FriendId" }, "用户2id"); - - b.ToTable("friends", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("申请时间 "); - - b.Property("Description") - .HasColumnType("text") - .HasComment("申请附言 "); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("备注"); - - b.Property("RequestUser") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.Property("ResponseUser") - .HasColumnType("int(11)") - .HasComment("被申请人 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RequestUser" }, "RequestUser"); - - b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); - - b.ToTable("friend_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("AllMembersBanned") - .HasColumnType("tinyint(4)") - .HasComment("全员禁言(0允许发言,2全员禁言)"); - - b.Property("Announcement") - .HasColumnType("text") - .HasComment("群公告"); - - b.Property("Auhority") - .HasColumnType("tinyint(4)") - .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); - - b.Property("Avatar") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("群头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("群聊创建时间"); - - b.Property("GroupMaster") - .HasColumnType("int(11)") - .HasComment("群主"); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("群聊名称"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("群聊状态\r\n(1:正常,2:封禁)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID1"); - - b.ToTable("groups", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("InviteUser") - .HasColumnType("int(11)") - .HasComment("邀请用户"); - - b.Property("InvitedUser") - .HasColumnType("int(11)") - .HasComment("被邀请用户"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId"); - - b.HasIndex(new[] { "InviteUser" }, "InviteUser"); - - b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); - - b.ToTable("group_invite", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("加入群聊时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("Role") - .HasColumnType("tinyint(4)") - .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户编号"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "Groupld"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID2"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld1"); - - b.ToTable("group_member", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("入群附言"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号\r\n"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId") - .HasDatabaseName("GroupId1"); - - b.ToTable("group_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(通Devices/DType) "); - - b.Property("Logined") - .HasColumnType("datetime") - .HasComment("登录时间 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("登录用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld2"); - - b.ToTable("login_log", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("tinyint(4)") - .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("消息内容 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("发送时间 "); - - b.Property("MsgType") - .HasColumnType("tinyint(4)") - .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); - - b.Property("Recipient") - .HasColumnType("int(11)") - .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); - - b.Property("Sender") - .HasColumnType("int(11)") - .HasComment("发送者 "); - - b.Property("SequenceId") - .HasColumnType("bigint"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("消息状态(0:已发送,1:已撤回) "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Sender" }, "Sender"); - - b.ToTable("messages", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("通知内容"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Ntype") - .HasColumnType("tinyint(4)") - .HasColumnName("NType") - .HasComment("通知类型(0:文本)"); - - b.Property("Title") - .IsRequired() - .HasMaxLength(40) - .HasColumnType("varchar(40)") - .HasComment("通知标题"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("接收人(为空为全体通知)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld3"); - - b.ToTable("notifications", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Code") - .HasColumnType("int(11)") - .HasComment("权限编码 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("权限名称 "); - - b.Property("Ptype") - .HasColumnType("int(11)") - .HasColumnName("PType") - .HasComment("权限类型(0:增,1:删,2:改,3:查) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("permissions", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.Property("Id") - .HasColumnType("int(11)") - .HasColumnName("ID"); - - b.Property("PermissionId") - .HasColumnType("int(11)") - .HasComment("权限 "); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "PermissionId" }, "Permissionld"); - - b.HasIndex(new[] { "RoleId" }, "Roleld"); - - b.ToTable("permissionarole", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("角色描述 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("角色名称 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("roles", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("用户头像链接"); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("创建时间"); - - b.Property("IsDeleted") - .HasColumnType("tinyint(4)") - .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); - - b.Property("NickName") - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户昵称"); - - b.Property("OnlineStatus") - .HasColumnType("tinyint(4)") - .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("Status") - .ValueGeneratedOnAdd() - .HasColumnType("tinyint(4)") - .HasDefaultValueSql("'1'") - .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("修改时间"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("唯一用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID3"); - - b.HasIndex(new[] { "Username" }, "Username") - .IsUnique(); - - b.ToTable("users", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Admins") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("admins_ibfk_1"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.HasOne("IM_API.Models.Message", "LastReadMessage") - .WithMany("Conversations") - .HasForeignKey("LastReadMessageId") - .HasConstraintName("conversations_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("Conversations") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("conversations_ibfk_1"); - - b.Navigation("LastReadMessage"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Devices") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("devices_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.HasOne("IM_API.Models.Message", "Message") - .WithMany("Files") - .HasForeignKey("MessageId") - .IsRequired() - .HasConstraintName("files_ibfk_1"); - - b.Navigation("Message"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.HasOne("IM_API.Models.User", "FriendNavigation") - .WithMany("FriendFriendNavigations") - .HasForeignKey("FriendId") - .IsRequired() - .HasConstraintName("用户2id"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("FriendUsers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("用户id"); - - b.Navigation("FriendNavigation"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.HasOne("IM_API.Models.User", "RequestUserNavigation") - .WithMany("FriendRequestRequestUserNavigations") - .HasForeignKey("RequestUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "ResponseUserNavigation") - .WithMany("FriendRequestResponseUserNavigations") - .HasForeignKey("ResponseUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_2"); - - b.Navigation("RequestUserNavigation"); - - b.Navigation("ResponseUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.HasOne("IM_API.Models.User", "GroupMasterNavigation") - .WithMany("Groups") - .HasForeignKey("GroupMaster") - .IsRequired() - .HasConstraintName("groups_ibfk_1"); - - b.Navigation("GroupMasterNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupInvites") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_invite_ibfk_2"); - - b.HasOne("IM_API.Models.User", "InviteUserNavigation") - .WithMany("GroupInviteInviteUserNavigations") - .HasForeignKey("InviteUser") - .HasConstraintName("group_invite_ibfk_1"); - - b.HasOne("IM_API.Models.User", "InvitedUserNavigation") - .WithMany("GroupInviteInvitedUserNavigations") - .HasForeignKey("InvitedUser") - .HasConstraintName("group_invite_ibfk_3"); - - b.Navigation("Group"); - - b.Navigation("InviteUserNavigation"); - - b.Navigation("InvitedUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupMembers") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_member_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("GroupMembers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("group_member_ibfk_1"); - - b.Navigation("Group"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "GroupNavigation") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_2"); - - b.Navigation("Group"); - - b.Navigation("GroupNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("LoginLogs") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("login_log_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.HasOne("IM_API.Models.User", "SenderNavigation") - .WithMany("Messages") - .HasForeignKey("Sender") - .IsRequired() - .HasConstraintName("messages_ibfk_1"); - - b.Navigation("SenderNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Notifications") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("notifications_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.HasOne("IM_API.Models.Permission", "Permission") - .WithMany("Permissionaroles") - .HasForeignKey("PermissionId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_2"); - - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Permissionaroles") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_1"); - - b.Navigation("Permission"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Navigation("GroupInvites"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Navigation("Conversations"); - - b.Navigation("Files"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Navigation("Admins"); - - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Navigation("Conversations"); - - b.Navigation("Devices"); - - b.Navigation("FriendFriendNavigations"); - - b.Navigation("FriendRequestRequestUserNavigations"); - - b.Navigation("FriendRequestResponseUserNavigations"); - - b.Navigation("FriendUsers"); - - b.Navigation("GroupInviteInviteUserNavigations"); - - b.Navigation("GroupInviteInvitedUserNavigations"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - - b.Navigation("Groups"); - - b.Navigation("LoginLogs"); - - b.Navigation("Messages"); - - b.Navigation("Notifications"); - }); -#pragma warning restore 612, 618 - } - } -} +// +using System; +using IM_API.Models; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace IM_API.Migrations +{ + [DbContext(typeof(ImContext))] + [Migration("20260204150644_add-SequenceId")] + partial class addSequenceId + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .UseCollation("latin1_swedish_ci") + .HasAnnotation("ProductVersion", "8.0.21") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); + MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("状态(0:正常,2:封禁) "); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("更新时间 "); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RoleId" }, "RoleId"); + + b.ToTable("admins", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("int(11)"); + + b.Property("LastMessage") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("最后一条最新消息"); + + b.Property("LastMessageTime") + .HasColumnType("datetime") + .HasComment("最后一条消息发送时间"); + + b.Property("LastReadMessageId") + .HasColumnType("int(11)") + .HasColumnName("lastReadMessageId") + .HasComment("最后一条未读消息ID "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.Property("TargetId") + .HasColumnType("int(11)") + .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); + + b.Property("UnreadCount") + .HasColumnType("int(11)") + .HasComment("未读消息数 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid"); + + b.HasIndex(new[] { "LastReadMessageId" }, "lastMessageId"); + + b.ToTable("conversations", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); + + b.Property("LastLogin") + .HasColumnType("datetime") + .HasComment("最后一次登录 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("设备所属用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid") + .HasDatabaseName("Userid1"); + + b.ToTable("devices", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("FileType") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("varchar(10)") + .HasComment("文件类型 "); + + b.Property("MessageId") + .HasColumnType("int(11)") + .HasComment("关联消息ID "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("文件名 "); + + b.Property("Size") + .HasColumnType("int(11)") + .HasComment("文件大小(单位:KB) "); + + b.Property("Url") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasColumnName("URL") + .HasComment("文件储存URL "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "MessageId" }, "Messageld"); + + b.ToTable("files", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("好友头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("好友关系创建时间"); + + b.Property("FriendId") + .HasColumnType("int(11)") + .HasComment("用户2ID"); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("好友备注名"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户ID"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID"); + + b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); + + b.HasIndex(new[] { "FriendId" }, "用户2id"); + + b.ToTable("friends", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("申请时间 "); + + b.Property("Description") + .HasColumnType("text") + .HasComment("申请附言 "); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("备注"); + + b.Property("RequestUser") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.Property("ResponseUser") + .HasColumnType("int(11)") + .HasComment("被申请人 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RequestUser" }, "RequestUser"); + + b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); + + b.ToTable("friend_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("AllMembersBanned") + .HasColumnType("tinyint(4)") + .HasComment("全员禁言(0允许发言,2全员禁言)"); + + b.Property("Announcement") + .HasColumnType("text") + .HasComment("群公告"); + + b.Property("Auhority") + .HasColumnType("tinyint(4)") + .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); + + b.Property("Avatar") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("群头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("群聊创建时间"); + + b.Property("GroupMaster") + .HasColumnType("int(11)") + .HasComment("群主"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("群聊名称"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("群聊状态\r\n(1:正常,2:封禁)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID1"); + + b.ToTable("groups", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("InviteUser") + .HasColumnType("int(11)") + .HasComment("邀请用户"); + + b.Property("InvitedUser") + .HasColumnType("int(11)") + .HasComment("被邀请用户"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId"); + + b.HasIndex(new[] { "InviteUser" }, "InviteUser"); + + b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); + + b.ToTable("group_invite", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("加入群聊时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("Role") + .HasColumnType("tinyint(4)") + .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户编号"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "Groupld"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID2"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld1"); + + b.ToTable("group_member", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("入群附言"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号\r\n"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId") + .HasDatabaseName("GroupId1"); + + b.ToTable("group_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(通Devices/DType) "); + + b.Property("Logined") + .HasColumnType("datetime") + .HasComment("登录时间 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("登录用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld2"); + + b.ToTable("login_log", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("tinyint(4)") + .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("消息内容 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("发送时间 "); + + b.Property("MsgType") + .HasColumnType("tinyint(4)") + .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); + + b.Property("Recipient") + .HasColumnType("int(11)") + .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); + + b.Property("Sender") + .HasColumnType("int(11)") + .HasComment("发送者 "); + + b.Property("SequenceId") + .HasColumnType("bigint"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("消息状态(0:已发送,1:已撤回) "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Sender" }, "Sender"); + + b.ToTable("messages", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("通知内容"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Ntype") + .HasColumnType("tinyint(4)") + .HasColumnName("NType") + .HasComment("通知类型(0:文本)"); + + b.Property("Title") + .IsRequired() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasComment("通知标题"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("接收人(为空为全体通知)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld3"); + + b.ToTable("notifications", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Code") + .HasColumnType("int(11)") + .HasComment("权限编码 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("权限名称 "); + + b.Property("Ptype") + .HasColumnType("int(11)") + .HasColumnName("PType") + .HasComment("权限类型(0:增,1:删,2:改,3:查) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("permissions", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.Property("Id") + .HasColumnType("int(11)") + .HasColumnName("ID"); + + b.Property("PermissionId") + .HasColumnType("int(11)") + .HasComment("权限 "); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "PermissionId" }, "Permissionld"); + + b.HasIndex(new[] { "RoleId" }, "Roleld"); + + b.ToTable("permissionarole", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("角色描述 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("角色名称 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("roles", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("用户头像链接"); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("创建时间"); + + b.Property("IsDeleted") + .HasColumnType("tinyint(4)") + .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); + + b.Property("NickName") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户昵称"); + + b.Property("OnlineStatus") + .HasColumnType("tinyint(4)") + .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("Status") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(4)") + .HasDefaultValueSql("'1'") + .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("修改时间"); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("唯一用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID3"); + + b.HasIndex(new[] { "Username" }, "Username") + .IsUnique(); + + b.ToTable("users", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Admins") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("admins_ibfk_1"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.HasOne("IM_API.Models.Message", "LastReadMessage") + .WithMany("Conversations") + .HasForeignKey("LastReadMessageId") + .HasConstraintName("conversations_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("Conversations") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("conversations_ibfk_1"); + + b.Navigation("LastReadMessage"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Devices") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("devices_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.HasOne("IM_API.Models.Message", "Message") + .WithMany("Files") + .HasForeignKey("MessageId") + .IsRequired() + .HasConstraintName("files_ibfk_1"); + + b.Navigation("Message"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.HasOne("IM_API.Models.User", "FriendNavigation") + .WithMany("FriendFriendNavigations") + .HasForeignKey("FriendId") + .IsRequired() + .HasConstraintName("用户2id"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("FriendUsers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("用户id"); + + b.Navigation("FriendNavigation"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.HasOne("IM_API.Models.User", "RequestUserNavigation") + .WithMany("FriendRequestRequestUserNavigations") + .HasForeignKey("RequestUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "ResponseUserNavigation") + .WithMany("FriendRequestResponseUserNavigations") + .HasForeignKey("ResponseUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_2"); + + b.Navigation("RequestUserNavigation"); + + b.Navigation("ResponseUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.HasOne("IM_API.Models.User", "GroupMasterNavigation") + .WithMany("Groups") + .HasForeignKey("GroupMaster") + .IsRequired() + .HasConstraintName("groups_ibfk_1"); + + b.Navigation("GroupMasterNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupInvites") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_invite_ibfk_2"); + + b.HasOne("IM_API.Models.User", "InviteUserNavigation") + .WithMany("GroupInviteInviteUserNavigations") + .HasForeignKey("InviteUser") + .HasConstraintName("group_invite_ibfk_1"); + + b.HasOne("IM_API.Models.User", "InvitedUserNavigation") + .WithMany("GroupInviteInvitedUserNavigations") + .HasForeignKey("InvitedUser") + .HasConstraintName("group_invite_ibfk_3"); + + b.Navigation("Group"); + + b.Navigation("InviteUserNavigation"); + + b.Navigation("InvitedUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupMembers") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_member_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("GroupMembers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("group_member_ibfk_1"); + + b.Navigation("Group"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "GroupNavigation") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_2"); + + b.Navigation("Group"); + + b.Navigation("GroupNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("LoginLogs") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("login_log_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.HasOne("IM_API.Models.User", "SenderNavigation") + .WithMany("Messages") + .HasForeignKey("Sender") + .IsRequired() + .HasConstraintName("messages_ibfk_1"); + + b.Navigation("SenderNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Notifications") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("notifications_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.HasOne("IM_API.Models.Permission", "Permission") + .WithMany("Permissionaroles") + .HasForeignKey("PermissionId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_2"); + + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Permissionaroles") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_1"); + + b.Navigation("Permission"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Navigation("GroupInvites"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Navigation("Conversations"); + + b.Navigation("Files"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Navigation("Admins"); + + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Navigation("Conversations"); + + b.Navigation("Devices"); + + b.Navigation("FriendFriendNavigations"); + + b.Navigation("FriendRequestRequestUserNavigations"); + + b.Navigation("FriendRequestResponseUserNavigations"); + + b.Navigation("FriendUsers"); + + b.Navigation("GroupInviteInviteUserNavigations"); + + b.Navigation("GroupInviteInvitedUserNavigations"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + + b.Navigation("Groups"); + + b.Navigation("LoginLogs"); + + b.Navigation("Messages"); + + b.Navigation("Notifications"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/backend/IM_API/Migrations/20260204150644_add-SequenceId.cs b/backend/IM_API/Migrations/20260204150644_add-SequenceId.cs index 4940eda..6e40327 100644 --- a/backend/IM_API/Migrations/20260204150644_add-SequenceId.cs +++ b/backend/IM_API/Migrations/20260204150644_add-SequenceId.cs @@ -1,40 +1,40 @@ -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace IM_API.Migrations -{ - /// - public partial class addSequenceId : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropColumn( - name: "GroupMemberId", - table: "messages"); - - migrationBuilder.AddColumn( - name: "SequenceId", - table: "messages", - type: "bigint", - nullable: false, - defaultValue: 0L); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropColumn( - name: "SequenceId", - table: "messages"); - - migrationBuilder.AddColumn( - name: "GroupMemberId", - table: "messages", - type: "int(11)", - nullable: true, - comment: "若为群消息则表示具体的成员id"); - } - } -} +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace IM_API.Migrations +{ + /// + public partial class addSequenceId : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "GroupMemberId", + table: "messages"); + + migrationBuilder.AddColumn( + name: "SequenceId", + table: "messages", + type: "bigint", + nullable: false, + defaultValue: 0L); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "SequenceId", + table: "messages"); + + migrationBuilder.AddColumn( + name: "GroupMemberId", + table: "messages", + type: "int(11)", + nullable: true, + comment: "若为群消息则表示具体的成员id"); + } + } +} diff --git a/backend/IM_API/Migrations/20260204151306_update-conversation-lastreadmessageid.Designer.cs b/backend/IM_API/Migrations/20260204151306_update-conversation-lastreadmessageid.Designer.cs index 463cba6..e43a946 100644 --- a/backend/IM_API/Migrations/20260204151306_update-conversation-lastreadmessageid.Designer.cs +++ b/backend/IM_API/Migrations/20260204151306_update-conversation-lastreadmessageid.Designer.cs @@ -1,1094 +1,1094 @@ -// -using System; -using IM_API.Models; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Metadata; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace IM_API.Migrations -{ - [DbContext(typeof(ImContext))] - [Migration("20260204151306_update-conversation-lastreadmessageid")] - partial class updateconversationlastreadmessageid - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .UseCollation("latin1_swedish_ci") - .HasAnnotation("ProductVersion", "8.0.21") - .HasAnnotation("Relational:MaxIdentifierLength", 64); - - MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); - MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("状态(0:正常,2:封禁) "); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("更新时间 "); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RoleId" }, "RoleId"); - - b.ToTable("admins", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("int(11)"); - - b.Property("LastMessage") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("最后一条最新消息"); - - b.Property("LastMessageTime") - .HasColumnType("datetime") - .HasComment("最后一条消息发送时间"); - - b.Property("LastReadMessageId") - .HasColumnType("int(11)") - .HasColumnName("lastReadMessageId") - .HasComment("最后一条未读消息ID "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.Property("TargetId") - .HasColumnType("int(11)") - .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); - - b.Property("UnreadCount") - .HasColumnType("int(11)") - .HasComment("未读消息数 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid"); - - b.HasIndex(new[] { "LastReadMessageId" }, "lastMessageId"); - - b.ToTable("conversations", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); - - b.Property("LastLogin") - .HasColumnType("datetime") - .HasComment("最后一次登录 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("设备所属用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid") - .HasDatabaseName("Userid1"); - - b.ToTable("devices", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("FileType") - .IsRequired() - .HasMaxLength(10) - .HasColumnType("varchar(10)") - .HasComment("文件类型 "); - - b.Property("MessageId") - .HasColumnType("int(11)") - .HasComment("关联消息ID "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("文件名 "); - - b.Property("Size") - .HasColumnType("int(11)") - .HasComment("文件大小(单位:KB) "); - - b.Property("Url") - .IsRequired() - .HasMaxLength(100) - .HasColumnType("varchar(100)") - .HasColumnName("URL") - .HasComment("文件储存URL "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "MessageId" }, "Messageld"); - - b.ToTable("files", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("好友头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("好友关系创建时间"); - - b.Property("FriendId") - .HasColumnType("int(11)") - .HasComment("用户2ID"); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("好友备注名"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户ID"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID"); - - b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); - - b.HasIndex(new[] { "FriendId" }, "用户2id"); - - b.ToTable("friends", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("申请时间 "); - - b.Property("Description") - .HasColumnType("text") - .HasComment("申请附言 "); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("备注"); - - b.Property("RequestUser") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.Property("ResponseUser") - .HasColumnType("int(11)") - .HasComment("被申请人 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RequestUser" }, "RequestUser"); - - b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); - - b.ToTable("friend_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("AllMembersBanned") - .HasColumnType("tinyint(4)") - .HasComment("全员禁言(0允许发言,2全员禁言)"); - - b.Property("Announcement") - .HasColumnType("text") - .HasComment("群公告"); - - b.Property("Auhority") - .HasColumnType("tinyint(4)") - .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); - - b.Property("Avatar") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("群头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("群聊创建时间"); - - b.Property("GroupMaster") - .HasColumnType("int(11)") - .HasComment("群主"); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("群聊名称"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("群聊状态\r\n(1:正常,2:封禁)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID1"); - - b.ToTable("groups", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("InviteUser") - .HasColumnType("int(11)") - .HasComment("邀请用户"); - - b.Property("InvitedUser") - .HasColumnType("int(11)") - .HasComment("被邀请用户"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId"); - - b.HasIndex(new[] { "InviteUser" }, "InviteUser"); - - b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); - - b.ToTable("group_invite", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("加入群聊时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("Role") - .HasColumnType("tinyint(4)") - .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户编号"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "Groupld"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID2"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld1"); - - b.ToTable("group_member", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("入群附言"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号\r\n"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId") - .HasDatabaseName("GroupId1"); - - b.ToTable("group_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(通Devices/DType) "); - - b.Property("Logined") - .HasColumnType("datetime") - .HasComment("登录时间 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("登录用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld2"); - - b.ToTable("login_log", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("tinyint(4)") - .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("消息内容 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("发送时间 "); - - b.Property("MsgType") - .HasColumnType("tinyint(4)") - .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); - - b.Property("Recipient") - .HasColumnType("int(11)") - .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); - - b.Property("Sender") - .HasColumnType("int(11)") - .HasComment("发送者 "); - - b.Property("SequenceId") - .HasColumnType("bigint"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("消息状态(0:已发送,1:已撤回) "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Sender" }, "Sender"); - - b.ToTable("messages", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("通知内容"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Ntype") - .HasColumnType("tinyint(4)") - .HasColumnName("NType") - .HasComment("通知类型(0:文本)"); - - b.Property("Title") - .IsRequired() - .HasMaxLength(40) - .HasColumnType("varchar(40)") - .HasComment("通知标题"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("接收人(为空为全体通知)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld3"); - - b.ToTable("notifications", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Code") - .HasColumnType("int(11)") - .HasComment("权限编码 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("权限名称 "); - - b.Property("Ptype") - .HasColumnType("int(11)") - .HasColumnName("PType") - .HasComment("权限类型(0:增,1:删,2:改,3:查) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("permissions", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.Property("Id") - .HasColumnType("int(11)") - .HasColumnName("ID"); - - b.Property("PermissionId") - .HasColumnType("int(11)") - .HasComment("权限 "); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "PermissionId" }, "Permissionld"); - - b.HasIndex(new[] { "RoleId" }, "Roleld"); - - b.ToTable("permissionarole", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("角色描述 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("角色名称 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("roles", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("用户头像链接"); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("创建时间"); - - b.Property("IsDeleted") - .HasColumnType("tinyint(4)") - .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); - - b.Property("NickName") - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户昵称"); - - b.Property("OnlineStatus") - .HasColumnType("tinyint(4)") - .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("Status") - .ValueGeneratedOnAdd() - .HasColumnType("tinyint(4)") - .HasDefaultValueSql("'1'") - .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("修改时间"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("唯一用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID3"); - - b.HasIndex(new[] { "Username" }, "Username") - .IsUnique(); - - b.ToTable("users", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Admins") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("admins_ibfk_1"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.HasOne("IM_API.Models.Message", "LastReadMessage") - .WithMany("Conversations") - .HasForeignKey("LastReadMessageId") - .OnDelete(DeleteBehavior.SetNull) - .HasConstraintName("conversations_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("Conversations") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("conversations_ibfk_1"); - - b.Navigation("LastReadMessage"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Devices") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("devices_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.HasOne("IM_API.Models.Message", "Message") - .WithMany("Files") - .HasForeignKey("MessageId") - .IsRequired() - .HasConstraintName("files_ibfk_1"); - - b.Navigation("Message"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.HasOne("IM_API.Models.User", "FriendNavigation") - .WithMany("FriendFriendNavigations") - .HasForeignKey("FriendId") - .IsRequired() - .HasConstraintName("用户2id"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("FriendUsers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("用户id"); - - b.Navigation("FriendNavigation"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.HasOne("IM_API.Models.User", "RequestUserNavigation") - .WithMany("FriendRequestRequestUserNavigations") - .HasForeignKey("RequestUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "ResponseUserNavigation") - .WithMany("FriendRequestResponseUserNavigations") - .HasForeignKey("ResponseUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_2"); - - b.Navigation("RequestUserNavigation"); - - b.Navigation("ResponseUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.HasOne("IM_API.Models.User", "GroupMasterNavigation") - .WithMany("Groups") - .HasForeignKey("GroupMaster") - .IsRequired() - .HasConstraintName("groups_ibfk_1"); - - b.Navigation("GroupMasterNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupInvites") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_invite_ibfk_2"); - - b.HasOne("IM_API.Models.User", "InviteUserNavigation") - .WithMany("GroupInviteInviteUserNavigations") - .HasForeignKey("InviteUser") - .HasConstraintName("group_invite_ibfk_1"); - - b.HasOne("IM_API.Models.User", "InvitedUserNavigation") - .WithMany("GroupInviteInvitedUserNavigations") - .HasForeignKey("InvitedUser") - .HasConstraintName("group_invite_ibfk_3"); - - b.Navigation("Group"); - - b.Navigation("InviteUserNavigation"); - - b.Navigation("InvitedUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupMembers") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_member_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("GroupMembers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("group_member_ibfk_1"); - - b.Navigation("Group"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "GroupNavigation") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_2"); - - b.Navigation("Group"); - - b.Navigation("GroupNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("LoginLogs") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("login_log_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.HasOne("IM_API.Models.User", "SenderNavigation") - .WithMany("Messages") - .HasForeignKey("Sender") - .IsRequired() - .HasConstraintName("messages_ibfk_1"); - - b.Navigation("SenderNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Notifications") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("notifications_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.HasOne("IM_API.Models.Permission", "Permission") - .WithMany("Permissionaroles") - .HasForeignKey("PermissionId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_2"); - - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Permissionaroles") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_1"); - - b.Navigation("Permission"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Navigation("GroupInvites"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Navigation("Conversations"); - - b.Navigation("Files"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Navigation("Admins"); - - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Navigation("Conversations"); - - b.Navigation("Devices"); - - b.Navigation("FriendFriendNavigations"); - - b.Navigation("FriendRequestRequestUserNavigations"); - - b.Navigation("FriendRequestResponseUserNavigations"); - - b.Navigation("FriendUsers"); - - b.Navigation("GroupInviteInviteUserNavigations"); - - b.Navigation("GroupInviteInvitedUserNavigations"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - - b.Navigation("Groups"); - - b.Navigation("LoginLogs"); - - b.Navigation("Messages"); - - b.Navigation("Notifications"); - }); -#pragma warning restore 612, 618 - } - } -} +// +using System; +using IM_API.Models; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace IM_API.Migrations +{ + [DbContext(typeof(ImContext))] + [Migration("20260204151306_update-conversation-lastreadmessageid")] + partial class updateconversationlastreadmessageid + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .UseCollation("latin1_swedish_ci") + .HasAnnotation("ProductVersion", "8.0.21") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); + MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("状态(0:正常,2:封禁) "); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("更新时间 "); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RoleId" }, "RoleId"); + + b.ToTable("admins", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("int(11)"); + + b.Property("LastMessage") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("最后一条最新消息"); + + b.Property("LastMessageTime") + .HasColumnType("datetime") + .HasComment("最后一条消息发送时间"); + + b.Property("LastReadMessageId") + .HasColumnType("int(11)") + .HasColumnName("lastReadMessageId") + .HasComment("最后一条未读消息ID "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.Property("TargetId") + .HasColumnType("int(11)") + .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); + + b.Property("UnreadCount") + .HasColumnType("int(11)") + .HasComment("未读消息数 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid"); + + b.HasIndex(new[] { "LastReadMessageId" }, "lastMessageId"); + + b.ToTable("conversations", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); + + b.Property("LastLogin") + .HasColumnType("datetime") + .HasComment("最后一次登录 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("设备所属用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid") + .HasDatabaseName("Userid1"); + + b.ToTable("devices", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("FileType") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("varchar(10)") + .HasComment("文件类型 "); + + b.Property("MessageId") + .HasColumnType("int(11)") + .HasComment("关联消息ID "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("文件名 "); + + b.Property("Size") + .HasColumnType("int(11)") + .HasComment("文件大小(单位:KB) "); + + b.Property("Url") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasColumnName("URL") + .HasComment("文件储存URL "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "MessageId" }, "Messageld"); + + b.ToTable("files", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("好友头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("好友关系创建时间"); + + b.Property("FriendId") + .HasColumnType("int(11)") + .HasComment("用户2ID"); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("好友备注名"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户ID"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID"); + + b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); + + b.HasIndex(new[] { "FriendId" }, "用户2id"); + + b.ToTable("friends", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("申请时间 "); + + b.Property("Description") + .HasColumnType("text") + .HasComment("申请附言 "); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("备注"); + + b.Property("RequestUser") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.Property("ResponseUser") + .HasColumnType("int(11)") + .HasComment("被申请人 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RequestUser" }, "RequestUser"); + + b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); + + b.ToTable("friend_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("AllMembersBanned") + .HasColumnType("tinyint(4)") + .HasComment("全员禁言(0允许发言,2全员禁言)"); + + b.Property("Announcement") + .HasColumnType("text") + .HasComment("群公告"); + + b.Property("Auhority") + .HasColumnType("tinyint(4)") + .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); + + b.Property("Avatar") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("群头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("群聊创建时间"); + + b.Property("GroupMaster") + .HasColumnType("int(11)") + .HasComment("群主"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("群聊名称"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("群聊状态\r\n(1:正常,2:封禁)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID1"); + + b.ToTable("groups", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("InviteUser") + .HasColumnType("int(11)") + .HasComment("邀请用户"); + + b.Property("InvitedUser") + .HasColumnType("int(11)") + .HasComment("被邀请用户"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId"); + + b.HasIndex(new[] { "InviteUser" }, "InviteUser"); + + b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); + + b.ToTable("group_invite", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("加入群聊时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("Role") + .HasColumnType("tinyint(4)") + .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户编号"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "Groupld"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID2"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld1"); + + b.ToTable("group_member", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("入群附言"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号\r\n"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId") + .HasDatabaseName("GroupId1"); + + b.ToTable("group_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(通Devices/DType) "); + + b.Property("Logined") + .HasColumnType("datetime") + .HasComment("登录时间 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("登录用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld2"); + + b.ToTable("login_log", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("tinyint(4)") + .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("消息内容 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("发送时间 "); + + b.Property("MsgType") + .HasColumnType("tinyint(4)") + .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); + + b.Property("Recipient") + .HasColumnType("int(11)") + .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); + + b.Property("Sender") + .HasColumnType("int(11)") + .HasComment("发送者 "); + + b.Property("SequenceId") + .HasColumnType("bigint"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("消息状态(0:已发送,1:已撤回) "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Sender" }, "Sender"); + + b.ToTable("messages", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("通知内容"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Ntype") + .HasColumnType("tinyint(4)") + .HasColumnName("NType") + .HasComment("通知类型(0:文本)"); + + b.Property("Title") + .IsRequired() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasComment("通知标题"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("接收人(为空为全体通知)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld3"); + + b.ToTable("notifications", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Code") + .HasColumnType("int(11)") + .HasComment("权限编码 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("权限名称 "); + + b.Property("Ptype") + .HasColumnType("int(11)") + .HasColumnName("PType") + .HasComment("权限类型(0:增,1:删,2:改,3:查) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("permissions", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.Property("Id") + .HasColumnType("int(11)") + .HasColumnName("ID"); + + b.Property("PermissionId") + .HasColumnType("int(11)") + .HasComment("权限 "); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "PermissionId" }, "Permissionld"); + + b.HasIndex(new[] { "RoleId" }, "Roleld"); + + b.ToTable("permissionarole", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("角色描述 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("角色名称 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("roles", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("用户头像链接"); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("创建时间"); + + b.Property("IsDeleted") + .HasColumnType("tinyint(4)") + .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); + + b.Property("NickName") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户昵称"); + + b.Property("OnlineStatus") + .HasColumnType("tinyint(4)") + .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("Status") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(4)") + .HasDefaultValueSql("'1'") + .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("修改时间"); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("唯一用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID3"); + + b.HasIndex(new[] { "Username" }, "Username") + .IsUnique(); + + b.ToTable("users", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Admins") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("admins_ibfk_1"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.HasOne("IM_API.Models.Message", "LastReadMessage") + .WithMany("Conversations") + .HasForeignKey("LastReadMessageId") + .OnDelete(DeleteBehavior.SetNull) + .HasConstraintName("conversations_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("Conversations") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("conversations_ibfk_1"); + + b.Navigation("LastReadMessage"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Devices") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("devices_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.HasOne("IM_API.Models.Message", "Message") + .WithMany("Files") + .HasForeignKey("MessageId") + .IsRequired() + .HasConstraintName("files_ibfk_1"); + + b.Navigation("Message"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.HasOne("IM_API.Models.User", "FriendNavigation") + .WithMany("FriendFriendNavigations") + .HasForeignKey("FriendId") + .IsRequired() + .HasConstraintName("用户2id"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("FriendUsers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("用户id"); + + b.Navigation("FriendNavigation"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.HasOne("IM_API.Models.User", "RequestUserNavigation") + .WithMany("FriendRequestRequestUserNavigations") + .HasForeignKey("RequestUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "ResponseUserNavigation") + .WithMany("FriendRequestResponseUserNavigations") + .HasForeignKey("ResponseUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_2"); + + b.Navigation("RequestUserNavigation"); + + b.Navigation("ResponseUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.HasOne("IM_API.Models.User", "GroupMasterNavigation") + .WithMany("Groups") + .HasForeignKey("GroupMaster") + .IsRequired() + .HasConstraintName("groups_ibfk_1"); + + b.Navigation("GroupMasterNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupInvites") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_invite_ibfk_2"); + + b.HasOne("IM_API.Models.User", "InviteUserNavigation") + .WithMany("GroupInviteInviteUserNavigations") + .HasForeignKey("InviteUser") + .HasConstraintName("group_invite_ibfk_1"); + + b.HasOne("IM_API.Models.User", "InvitedUserNavigation") + .WithMany("GroupInviteInvitedUserNavigations") + .HasForeignKey("InvitedUser") + .HasConstraintName("group_invite_ibfk_3"); + + b.Navigation("Group"); + + b.Navigation("InviteUserNavigation"); + + b.Navigation("InvitedUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupMembers") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_member_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("GroupMembers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("group_member_ibfk_1"); + + b.Navigation("Group"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "GroupNavigation") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_2"); + + b.Navigation("Group"); + + b.Navigation("GroupNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("LoginLogs") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("login_log_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.HasOne("IM_API.Models.User", "SenderNavigation") + .WithMany("Messages") + .HasForeignKey("Sender") + .IsRequired() + .HasConstraintName("messages_ibfk_1"); + + b.Navigation("SenderNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Notifications") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("notifications_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.HasOne("IM_API.Models.Permission", "Permission") + .WithMany("Permissionaroles") + .HasForeignKey("PermissionId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_2"); + + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Permissionaroles") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_1"); + + b.Navigation("Permission"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Navigation("GroupInvites"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Navigation("Conversations"); + + b.Navigation("Files"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Navigation("Admins"); + + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Navigation("Conversations"); + + b.Navigation("Devices"); + + b.Navigation("FriendFriendNavigations"); + + b.Navigation("FriendRequestRequestUserNavigations"); + + b.Navigation("FriendRequestResponseUserNavigations"); + + b.Navigation("FriendUsers"); + + b.Navigation("GroupInviteInviteUserNavigations"); + + b.Navigation("GroupInviteInvitedUserNavigations"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + + b.Navigation("Groups"); + + b.Navigation("LoginLogs"); + + b.Navigation("Messages"); + + b.Navigation("Notifications"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/backend/IM_API/Migrations/20260204151306_update-conversation-lastreadmessageid.cs b/backend/IM_API/Migrations/20260204151306_update-conversation-lastreadmessageid.cs index 70dc218..bf4e83c 100644 --- a/backend/IM_API/Migrations/20260204151306_update-conversation-lastreadmessageid.cs +++ b/backend/IM_API/Migrations/20260204151306_update-conversation-lastreadmessageid.cs @@ -1,41 +1,41 @@ -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace IM_API.Migrations -{ - /// - public partial class updateconversationlastreadmessageid : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropForeignKey( - name: "conversations_ibfk_2", - table: "conversations"); - - migrationBuilder.AddForeignKey( - name: "conversations_ibfk_2", - table: "conversations", - column: "lastReadMessageId", - principalTable: "messages", - principalColumn: "ID", - onDelete: ReferentialAction.SetNull); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropForeignKey( - name: "conversations_ibfk_2", - table: "conversations"); - - migrationBuilder.AddForeignKey( - name: "conversations_ibfk_2", - table: "conversations", - column: "lastReadMessageId", - principalTable: "messages", - principalColumn: "ID"); - } - } -} +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace IM_API.Migrations +{ + /// + public partial class updateconversationlastreadmessageid : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "conversations_ibfk_2", + table: "conversations"); + + migrationBuilder.AddForeignKey( + name: "conversations_ibfk_2", + table: "conversations", + column: "lastReadMessageId", + principalTable: "messages", + principalColumn: "ID", + onDelete: ReferentialAction.SetNull); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "conversations_ibfk_2", + table: "conversations"); + + migrationBuilder.AddForeignKey( + name: "conversations_ibfk_2", + table: "conversations", + column: "lastReadMessageId", + principalTable: "messages", + principalColumn: "ID"); + } + } +} diff --git a/backend/IM_API/Migrations/20260205132459_update-message.Designer.cs b/backend/IM_API/Migrations/20260205132459_update-message.Designer.cs index 2b1f3d6..f70d1e7 100644 --- a/backend/IM_API/Migrations/20260205132459_update-message.Designer.cs +++ b/backend/IM_API/Migrations/20260205132459_update-message.Designer.cs @@ -1,1101 +1,1101 @@ -// -using System; -using IM_API.Models; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Metadata; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace IM_API.Migrations -{ - [DbContext(typeof(ImContext))] - [Migration("20260205132459_update-message")] - partial class updatemessage - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .UseCollation("latin1_swedish_ci") - .HasAnnotation("ProductVersion", "8.0.21") - .HasAnnotation("Relational:MaxIdentifierLength", 64); - - MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); - MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("状态(0:正常,2:封禁) "); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("更新时间 "); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RoleId" }, "RoleId"); - - b.ToTable("admins", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("int(11)"); - - b.Property("LastMessage") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("最后一条最新消息"); - - b.Property("LastMessageTime") - .HasColumnType("datetime") - .HasComment("最后一条消息发送时间"); - - b.Property("LastReadSequenceId") - .HasColumnType("int(11)") - .HasColumnName("lastReadMessageId") - .HasComment("最后一条未读消息ID "); - - b.Property("MessageId") - .HasColumnType("int(11)"); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.Property("TargetId") - .HasColumnType("int(11)") - .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); - - b.Property("UnreadCount") - .HasColumnType("int(11)") - .HasComment("未读消息数 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("MessageId"); - - b.HasIndex(new[] { "LastReadSequenceId" }, "LastReadSequenceId"); - - b.HasIndex(new[] { "UserId" }, "Userid"); - - b.ToTable("conversations", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); - - b.Property("LastLogin") - .HasColumnType("datetime") - .HasComment("最后一次登录 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("设备所属用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid") - .HasDatabaseName("Userid1"); - - b.ToTable("devices", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("FileType") - .IsRequired() - .HasMaxLength(10) - .HasColumnType("varchar(10)") - .HasComment("文件类型 "); - - b.Property("MessageId") - .HasColumnType("int(11)") - .HasComment("关联消息ID "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("文件名 "); - - b.Property("Size") - .HasColumnType("int(11)") - .HasComment("文件大小(单位:KB) "); - - b.Property("Url") - .IsRequired() - .HasMaxLength(100) - .HasColumnType("varchar(100)") - .HasColumnName("URL") - .HasComment("文件储存URL "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "MessageId" }, "Messageld"); - - b.ToTable("files", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("好友头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("好友关系创建时间"); - - b.Property("FriendId") - .HasColumnType("int(11)") - .HasComment("用户2ID"); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("好友备注名"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户ID"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID"); - - b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); - - b.HasIndex(new[] { "FriendId" }, "用户2id"); - - b.ToTable("friends", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("申请时间 "); - - b.Property("Description") - .HasColumnType("text") - .HasComment("申请附言 "); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("备注"); - - b.Property("RequestUser") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.Property("ResponseUser") - .HasColumnType("int(11)") - .HasComment("被申请人 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RequestUser" }, "RequestUser"); - - b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); - - b.ToTable("friend_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("AllMembersBanned") - .HasColumnType("tinyint(4)") - .HasComment("全员禁言(0允许发言,2全员禁言)"); - - b.Property("Announcement") - .HasColumnType("text") - .HasComment("群公告"); - - b.Property("Auhority") - .HasColumnType("tinyint(4)") - .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); - - b.Property("Avatar") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("群头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("群聊创建时间"); - - b.Property("GroupMaster") - .HasColumnType("int(11)") - .HasComment("群主"); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("群聊名称"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("群聊状态\r\n(1:正常,2:封禁)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID1"); - - b.ToTable("groups", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("InviteUser") - .HasColumnType("int(11)") - .HasComment("邀请用户"); - - b.Property("InvitedUser") - .HasColumnType("int(11)") - .HasComment("被邀请用户"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId"); - - b.HasIndex(new[] { "InviteUser" }, "InviteUser"); - - b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); - - b.ToTable("group_invite", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("加入群聊时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("Role") - .HasColumnType("tinyint(4)") - .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户编号"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "Groupld"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID2"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld1"); - - b.ToTable("group_member", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("入群附言"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号\r\n"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId") - .HasDatabaseName("GroupId1"); - - b.ToTable("group_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(通Devices/DType) "); - - b.Property("Logined") - .HasColumnType("datetime") - .HasComment("登录时间 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("登录用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld2"); - - b.ToTable("login_log", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("tinyint(4)") - .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); - - b.Property("ClientMsgId") - .HasColumnType("char(36)"); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("消息内容 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("发送时间 "); - - b.Property("MsgType") - .HasColumnType("tinyint(4)") - .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); - - b.Property("Recipient") - .HasColumnType("int(11)") - .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); - - b.Property("Sender") - .HasColumnType("int(11)") - .HasComment("发送者 "); - - b.Property("SequenceId") - .HasColumnType("bigint"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("消息状态(0:已发送,1:已撤回) "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("SequenceId", "StreamKey") - .IsUnique(); - - b.HasIndex(new[] { "Sender" }, "Sender"); - - b.ToTable("messages", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("通知内容"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Ntype") - .HasColumnType("tinyint(4)") - .HasColumnName("NType") - .HasComment("通知类型(0:文本)"); - - b.Property("Title") - .IsRequired() - .HasMaxLength(40) - .HasColumnType("varchar(40)") - .HasComment("通知标题"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("接收人(为空为全体通知)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld3"); - - b.ToTable("notifications", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Code") - .HasColumnType("int(11)") - .HasComment("权限编码 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("权限名称 "); - - b.Property("Ptype") - .HasColumnType("int(11)") - .HasColumnName("PType") - .HasComment("权限类型(0:增,1:删,2:改,3:查) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("permissions", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.Property("Id") - .HasColumnType("int(11)") - .HasColumnName("ID"); - - b.Property("PermissionId") - .HasColumnType("int(11)") - .HasComment("权限 "); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "PermissionId" }, "Permissionld"); - - b.HasIndex(new[] { "RoleId" }, "Roleld"); - - b.ToTable("permissionarole", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("角色描述 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("角色名称 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("roles", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("用户头像链接"); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("创建时间"); - - b.Property("IsDeleted") - .HasColumnType("tinyint(4)") - .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); - - b.Property("NickName") - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户昵称"); - - b.Property("OnlineStatus") - .HasColumnType("tinyint(4)") - .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("Status") - .ValueGeneratedOnAdd() - .HasColumnType("tinyint(4)") - .HasDefaultValueSql("'1'") - .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("修改时间"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("唯一用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID3"); - - b.HasIndex(new[] { "Username" }, "Username") - .IsUnique(); - - b.ToTable("users", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Admins") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("admins_ibfk_1"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.HasOne("IM_API.Models.Message", null) - .WithMany("Conversations") - .HasForeignKey("MessageId"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("Conversations") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("conversations_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Devices") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("devices_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.HasOne("IM_API.Models.Message", "Message") - .WithMany("Files") - .HasForeignKey("MessageId") - .IsRequired() - .HasConstraintName("files_ibfk_1"); - - b.Navigation("Message"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.HasOne("IM_API.Models.User", "FriendNavigation") - .WithMany("FriendFriendNavigations") - .HasForeignKey("FriendId") - .IsRequired() - .HasConstraintName("用户2id"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("FriendUsers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("用户id"); - - b.Navigation("FriendNavigation"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.HasOne("IM_API.Models.User", "RequestUserNavigation") - .WithMany("FriendRequestRequestUserNavigations") - .HasForeignKey("RequestUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "ResponseUserNavigation") - .WithMany("FriendRequestResponseUserNavigations") - .HasForeignKey("ResponseUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_2"); - - b.Navigation("RequestUserNavigation"); - - b.Navigation("ResponseUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.HasOne("IM_API.Models.User", "GroupMasterNavigation") - .WithMany("Groups") - .HasForeignKey("GroupMaster") - .IsRequired() - .HasConstraintName("groups_ibfk_1"); - - b.Navigation("GroupMasterNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupInvites") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_invite_ibfk_2"); - - b.HasOne("IM_API.Models.User", "InviteUserNavigation") - .WithMany("GroupInviteInviteUserNavigations") - .HasForeignKey("InviteUser") - .HasConstraintName("group_invite_ibfk_1"); - - b.HasOne("IM_API.Models.User", "InvitedUserNavigation") - .WithMany("GroupInviteInvitedUserNavigations") - .HasForeignKey("InvitedUser") - .HasConstraintName("group_invite_ibfk_3"); - - b.Navigation("Group"); - - b.Navigation("InviteUserNavigation"); - - b.Navigation("InvitedUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupMembers") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_member_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("GroupMembers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("group_member_ibfk_1"); - - b.Navigation("Group"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "GroupNavigation") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_2"); - - b.Navigation("Group"); - - b.Navigation("GroupNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("LoginLogs") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("login_log_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.HasOne("IM_API.Models.User", "SenderNavigation") - .WithMany("Messages") - .HasForeignKey("Sender") - .IsRequired() - .HasConstraintName("messages_ibfk_1"); - - b.Navigation("SenderNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Notifications") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("notifications_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.HasOne("IM_API.Models.Permission", "Permission") - .WithMany("Permissionaroles") - .HasForeignKey("PermissionId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_2"); - - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Permissionaroles") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_1"); - - b.Navigation("Permission"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Navigation("GroupInvites"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Navigation("Conversations"); - - b.Navigation("Files"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Navigation("Admins"); - - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Navigation("Conversations"); - - b.Navigation("Devices"); - - b.Navigation("FriendFriendNavigations"); - - b.Navigation("FriendRequestRequestUserNavigations"); - - b.Navigation("FriendRequestResponseUserNavigations"); - - b.Navigation("FriendUsers"); - - b.Navigation("GroupInviteInviteUserNavigations"); - - b.Navigation("GroupInviteInvitedUserNavigations"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - - b.Navigation("Groups"); - - b.Navigation("LoginLogs"); - - b.Navigation("Messages"); - - b.Navigation("Notifications"); - }); -#pragma warning restore 612, 618 - } - } -} +// +using System; +using IM_API.Models; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace IM_API.Migrations +{ + [DbContext(typeof(ImContext))] + [Migration("20260205132459_update-message")] + partial class updatemessage + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .UseCollation("latin1_swedish_ci") + .HasAnnotation("ProductVersion", "8.0.21") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); + MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("状态(0:正常,2:封禁) "); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("更新时间 "); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RoleId" }, "RoleId"); + + b.ToTable("admins", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("int(11)"); + + b.Property("LastMessage") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("最后一条最新消息"); + + b.Property("LastMessageTime") + .HasColumnType("datetime") + .HasComment("最后一条消息发送时间"); + + b.Property("LastReadSequenceId") + .HasColumnType("int(11)") + .HasColumnName("lastReadMessageId") + .HasComment("最后一条未读消息ID "); + + b.Property("MessageId") + .HasColumnType("int(11)"); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.Property("TargetId") + .HasColumnType("int(11)") + .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); + + b.Property("UnreadCount") + .HasColumnType("int(11)") + .HasComment("未读消息数 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("MessageId"); + + b.HasIndex(new[] { "LastReadSequenceId" }, "LastReadSequenceId"); + + b.HasIndex(new[] { "UserId" }, "Userid"); + + b.ToTable("conversations", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); + + b.Property("LastLogin") + .HasColumnType("datetime") + .HasComment("最后一次登录 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("设备所属用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid") + .HasDatabaseName("Userid1"); + + b.ToTable("devices", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("FileType") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("varchar(10)") + .HasComment("文件类型 "); + + b.Property("MessageId") + .HasColumnType("int(11)") + .HasComment("关联消息ID "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("文件名 "); + + b.Property("Size") + .HasColumnType("int(11)") + .HasComment("文件大小(单位:KB) "); + + b.Property("Url") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasColumnName("URL") + .HasComment("文件储存URL "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "MessageId" }, "Messageld"); + + b.ToTable("files", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("好友头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("好友关系创建时间"); + + b.Property("FriendId") + .HasColumnType("int(11)") + .HasComment("用户2ID"); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("好友备注名"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户ID"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID"); + + b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); + + b.HasIndex(new[] { "FriendId" }, "用户2id"); + + b.ToTable("friends", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("申请时间 "); + + b.Property("Description") + .HasColumnType("text") + .HasComment("申请附言 "); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("备注"); + + b.Property("RequestUser") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.Property("ResponseUser") + .HasColumnType("int(11)") + .HasComment("被申请人 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RequestUser" }, "RequestUser"); + + b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); + + b.ToTable("friend_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("AllMembersBanned") + .HasColumnType("tinyint(4)") + .HasComment("全员禁言(0允许发言,2全员禁言)"); + + b.Property("Announcement") + .HasColumnType("text") + .HasComment("群公告"); + + b.Property("Auhority") + .HasColumnType("tinyint(4)") + .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); + + b.Property("Avatar") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("群头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("群聊创建时间"); + + b.Property("GroupMaster") + .HasColumnType("int(11)") + .HasComment("群主"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("群聊名称"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("群聊状态\r\n(1:正常,2:封禁)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID1"); + + b.ToTable("groups", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("InviteUser") + .HasColumnType("int(11)") + .HasComment("邀请用户"); + + b.Property("InvitedUser") + .HasColumnType("int(11)") + .HasComment("被邀请用户"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId"); + + b.HasIndex(new[] { "InviteUser" }, "InviteUser"); + + b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); + + b.ToTable("group_invite", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("加入群聊时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("Role") + .HasColumnType("tinyint(4)") + .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户编号"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "Groupld"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID2"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld1"); + + b.ToTable("group_member", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("入群附言"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号\r\n"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId") + .HasDatabaseName("GroupId1"); + + b.ToTable("group_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(通Devices/DType) "); + + b.Property("Logined") + .HasColumnType("datetime") + .HasComment("登录时间 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("登录用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld2"); + + b.ToTable("login_log", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("tinyint(4)") + .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); + + b.Property("ClientMsgId") + .HasColumnType("char(36)"); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("消息内容 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("发送时间 "); + + b.Property("MsgType") + .HasColumnType("tinyint(4)") + .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); + + b.Property("Recipient") + .HasColumnType("int(11)") + .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); + + b.Property("Sender") + .HasColumnType("int(11)") + .HasComment("发送者 "); + + b.Property("SequenceId") + .HasColumnType("bigint"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("消息状态(0:已发送,1:已撤回) "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("SequenceId", "StreamKey") + .IsUnique(); + + b.HasIndex(new[] { "Sender" }, "Sender"); + + b.ToTable("messages", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("通知内容"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Ntype") + .HasColumnType("tinyint(4)") + .HasColumnName("NType") + .HasComment("通知类型(0:文本)"); + + b.Property("Title") + .IsRequired() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasComment("通知标题"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("接收人(为空为全体通知)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld3"); + + b.ToTable("notifications", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Code") + .HasColumnType("int(11)") + .HasComment("权限编码 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("权限名称 "); + + b.Property("Ptype") + .HasColumnType("int(11)") + .HasColumnName("PType") + .HasComment("权限类型(0:增,1:删,2:改,3:查) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("permissions", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.Property("Id") + .HasColumnType("int(11)") + .HasColumnName("ID"); + + b.Property("PermissionId") + .HasColumnType("int(11)") + .HasComment("权限 "); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "PermissionId" }, "Permissionld"); + + b.HasIndex(new[] { "RoleId" }, "Roleld"); + + b.ToTable("permissionarole", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("角色描述 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("角色名称 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("roles", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("用户头像链接"); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("创建时间"); + + b.Property("IsDeleted") + .HasColumnType("tinyint(4)") + .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); + + b.Property("NickName") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户昵称"); + + b.Property("OnlineStatus") + .HasColumnType("tinyint(4)") + .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("Status") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(4)") + .HasDefaultValueSql("'1'") + .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("修改时间"); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("唯一用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID3"); + + b.HasIndex(new[] { "Username" }, "Username") + .IsUnique(); + + b.ToTable("users", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Admins") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("admins_ibfk_1"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.HasOne("IM_API.Models.Message", null) + .WithMany("Conversations") + .HasForeignKey("MessageId"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("Conversations") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("conversations_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Devices") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("devices_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.HasOne("IM_API.Models.Message", "Message") + .WithMany("Files") + .HasForeignKey("MessageId") + .IsRequired() + .HasConstraintName("files_ibfk_1"); + + b.Navigation("Message"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.HasOne("IM_API.Models.User", "FriendNavigation") + .WithMany("FriendFriendNavigations") + .HasForeignKey("FriendId") + .IsRequired() + .HasConstraintName("用户2id"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("FriendUsers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("用户id"); + + b.Navigation("FriendNavigation"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.HasOne("IM_API.Models.User", "RequestUserNavigation") + .WithMany("FriendRequestRequestUserNavigations") + .HasForeignKey("RequestUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "ResponseUserNavigation") + .WithMany("FriendRequestResponseUserNavigations") + .HasForeignKey("ResponseUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_2"); + + b.Navigation("RequestUserNavigation"); + + b.Navigation("ResponseUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.HasOne("IM_API.Models.User", "GroupMasterNavigation") + .WithMany("Groups") + .HasForeignKey("GroupMaster") + .IsRequired() + .HasConstraintName("groups_ibfk_1"); + + b.Navigation("GroupMasterNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupInvites") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_invite_ibfk_2"); + + b.HasOne("IM_API.Models.User", "InviteUserNavigation") + .WithMany("GroupInviteInviteUserNavigations") + .HasForeignKey("InviteUser") + .HasConstraintName("group_invite_ibfk_1"); + + b.HasOne("IM_API.Models.User", "InvitedUserNavigation") + .WithMany("GroupInviteInvitedUserNavigations") + .HasForeignKey("InvitedUser") + .HasConstraintName("group_invite_ibfk_3"); + + b.Navigation("Group"); + + b.Navigation("InviteUserNavigation"); + + b.Navigation("InvitedUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupMembers") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_member_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("GroupMembers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("group_member_ibfk_1"); + + b.Navigation("Group"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "GroupNavigation") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_2"); + + b.Navigation("Group"); + + b.Navigation("GroupNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("LoginLogs") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("login_log_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.HasOne("IM_API.Models.User", "SenderNavigation") + .WithMany("Messages") + .HasForeignKey("Sender") + .IsRequired() + .HasConstraintName("messages_ibfk_1"); + + b.Navigation("SenderNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Notifications") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("notifications_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.HasOne("IM_API.Models.Permission", "Permission") + .WithMany("Permissionaroles") + .HasForeignKey("PermissionId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_2"); + + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Permissionaroles") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_1"); + + b.Navigation("Permission"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Navigation("GroupInvites"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Navigation("Conversations"); + + b.Navigation("Files"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Navigation("Admins"); + + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Navigation("Conversations"); + + b.Navigation("Devices"); + + b.Navigation("FriendFriendNavigations"); + + b.Navigation("FriendRequestRequestUserNavigations"); + + b.Navigation("FriendRequestResponseUserNavigations"); + + b.Navigation("FriendUsers"); + + b.Navigation("GroupInviteInviteUserNavigations"); + + b.Navigation("GroupInviteInvitedUserNavigations"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + + b.Navigation("Groups"); + + b.Navigation("LoginLogs"); + + b.Navigation("Messages"); + + b.Navigation("Notifications"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/backend/IM_API/Migrations/20260205132459_update-message.cs b/backend/IM_API/Migrations/20260205132459_update-message.cs index 6ff456a..91d42b7 100644 --- a/backend/IM_API/Migrations/20260205132459_update-message.cs +++ b/backend/IM_API/Migrations/20260205132459_update-message.cs @@ -1,93 +1,93 @@ -using System; -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace IM_API.Migrations -{ - /// - public partial class updatemessage : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropForeignKey( - name: "conversations_ibfk_2", - table: "conversations"); - - migrationBuilder.RenameIndex( - name: "lastMessageId", - table: "conversations", - newName: "LastReadSequenceId"); - - migrationBuilder.AddColumn( - name: "ClientMsgId", - table: "messages", - type: "char(36)", - nullable: false, - defaultValue: new Guid("00000000-0000-0000-0000-000000000000"), - collation: "ascii_general_ci"); - - migrationBuilder.AddColumn( - name: "MessageId", - table: "conversations", - type: "int(11)", - nullable: true); - - migrationBuilder.CreateIndex( - name: "IX_messages_SequenceId_StreamKey", - table: "messages", - columns: new[] { "SequenceId", "StreamKey" }, - unique: true); - - migrationBuilder.CreateIndex( - name: "IX_conversations_MessageId", - table: "conversations", - column: "MessageId"); - - migrationBuilder.AddForeignKey( - name: "FK_conversations_messages_MessageId", - table: "conversations", - column: "MessageId", - principalTable: "messages", - principalColumn: "ID"); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropForeignKey( - name: "FK_conversations_messages_MessageId", - table: "conversations"); - - migrationBuilder.DropIndex( - name: "IX_messages_SequenceId_StreamKey", - table: "messages"); - - migrationBuilder.DropIndex( - name: "IX_conversations_MessageId", - table: "conversations"); - - migrationBuilder.DropColumn( - name: "ClientMsgId", - table: "messages"); - - migrationBuilder.DropColumn( - name: "MessageId", - table: "conversations"); - - migrationBuilder.RenameIndex( - name: "LastReadSequenceId", - table: "conversations", - newName: "lastMessageId"); - - migrationBuilder.AddForeignKey( - name: "conversations_ibfk_2", - table: "conversations", - column: "lastReadMessageId", - principalTable: "messages", - principalColumn: "ID", - onDelete: ReferentialAction.SetNull); - } - } -} +using System; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace IM_API.Migrations +{ + /// + public partial class updatemessage : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "conversations_ibfk_2", + table: "conversations"); + + migrationBuilder.RenameIndex( + name: "lastMessageId", + table: "conversations", + newName: "LastReadSequenceId"); + + migrationBuilder.AddColumn( + name: "ClientMsgId", + table: "messages", + type: "char(36)", + nullable: false, + defaultValue: new Guid("00000000-0000-0000-0000-000000000000"), + collation: "ascii_general_ci"); + + migrationBuilder.AddColumn( + name: "MessageId", + table: "conversations", + type: "int(11)", + nullable: true); + + migrationBuilder.CreateIndex( + name: "IX_messages_SequenceId_StreamKey", + table: "messages", + columns: new[] { "SequenceId", "StreamKey" }, + unique: true); + + migrationBuilder.CreateIndex( + name: "IX_conversations_MessageId", + table: "conversations", + column: "MessageId"); + + migrationBuilder.AddForeignKey( + name: "FK_conversations_messages_MessageId", + table: "conversations", + column: "MessageId", + principalTable: "messages", + principalColumn: "ID"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "FK_conversations_messages_MessageId", + table: "conversations"); + + migrationBuilder.DropIndex( + name: "IX_messages_SequenceId_StreamKey", + table: "messages"); + + migrationBuilder.DropIndex( + name: "IX_conversations_MessageId", + table: "conversations"); + + migrationBuilder.DropColumn( + name: "ClientMsgId", + table: "messages"); + + migrationBuilder.DropColumn( + name: "MessageId", + table: "conversations"); + + migrationBuilder.RenameIndex( + name: "LastReadSequenceId", + table: "conversations", + newName: "lastMessageId"); + + migrationBuilder.AddForeignKey( + name: "conversations_ibfk_2", + table: "conversations", + column: "lastReadMessageId", + principalTable: "messages", + principalColumn: "ID", + onDelete: ReferentialAction.SetNull); + } + } +} diff --git a/backend/IM_API/Migrations/20260207121713_update-datetimeToDateTimeOffset.Designer.cs b/backend/IM_API/Migrations/20260207121713_update-datetimeToDateTimeOffset.Designer.cs index 18d1abd..d29477f 100644 --- a/backend/IM_API/Migrations/20260207121713_update-datetimeToDateTimeOffset.Designer.cs +++ b/backend/IM_API/Migrations/20260207121713_update-datetimeToDateTimeOffset.Designer.cs @@ -1,1101 +1,1101 @@ -// -using System; -using IM_API.Models; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Metadata; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace IM_API.Migrations -{ - [DbContext(typeof(ImContext))] - [Migration("20260207121713_update-datetimeToDateTimeOffset")] - partial class updatedatetimeToDateTimeOffset - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .UseCollation("latin1_swedish_ci") - .HasAnnotation("ProductVersion", "8.0.21") - .HasAnnotation("Relational:MaxIdentifierLength", 64); - - MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); - MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("状态(0:正常,2:封禁) "); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("更新时间 "); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RoleId" }, "RoleId"); - - b.ToTable("admins", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("int(11)"); - - b.Property("LastMessage") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("最后一条最新消息"); - - b.Property("LastMessageTime") - .HasColumnType("datetime") - .HasComment("最后一条消息发送时间"); - - b.Property("LastReadSequenceId") - .HasColumnType("int(11)") - .HasColumnName("lastReadMessageId") - .HasComment("最后一条未读消息ID "); - - b.Property("MessageId") - .HasColumnType("int(11)"); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.Property("TargetId") - .HasColumnType("int(11)") - .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); - - b.Property("UnreadCount") - .HasColumnType("int(11)") - .HasComment("未读消息数 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("MessageId"); - - b.HasIndex(new[] { "LastReadSequenceId" }, "LastReadSequenceId"); - - b.HasIndex(new[] { "UserId" }, "Userid"); - - b.ToTable("conversations", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); - - b.Property("LastLogin") - .HasColumnType("datetime") - .HasComment("最后一次登录 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("设备所属用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid") - .HasDatabaseName("Userid1"); - - b.ToTable("devices", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("FileType") - .IsRequired() - .HasMaxLength(10) - .HasColumnType("varchar(10)") - .HasComment("文件类型 "); - - b.Property("MessageId") - .HasColumnType("int(11)") - .HasComment("关联消息ID "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("文件名 "); - - b.Property("Size") - .HasColumnType("int(11)") - .HasComment("文件大小(单位:KB) "); - - b.Property("Url") - .IsRequired() - .HasMaxLength(100) - .HasColumnType("varchar(100)") - .HasColumnName("URL") - .HasComment("文件储存URL "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "MessageId" }, "Messageld"); - - b.ToTable("files", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("好友头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("好友关系创建时间"); - - b.Property("FriendId") - .HasColumnType("int(11)") - .HasComment("用户2ID"); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("好友备注名"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户ID"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID"); - - b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); - - b.HasIndex(new[] { "FriendId" }, "用户2id"); - - b.ToTable("friends", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("申请时间 "); - - b.Property("Description") - .HasColumnType("text") - .HasComment("申请附言 "); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("备注"); - - b.Property("RequestUser") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.Property("ResponseUser") - .HasColumnType("int(11)") - .HasComment("被申请人 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RequestUser" }, "RequestUser"); - - b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); - - b.ToTable("friend_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("AllMembersBanned") - .HasColumnType("tinyint(4)") - .HasComment("全员禁言(0允许发言,2全员禁言)"); - - b.Property("Announcement") - .HasColumnType("text") - .HasComment("群公告"); - - b.Property("Auhority") - .HasColumnType("tinyint(4)") - .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); - - b.Property("Avatar") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("群头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("群聊创建时间"); - - b.Property("GroupMaster") - .HasColumnType("int(11)") - .HasComment("群主"); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("群聊名称"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("群聊状态\r\n(1:正常,2:封禁)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID1"); - - b.ToTable("groups", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("InviteUser") - .HasColumnType("int(11)") - .HasComment("邀请用户"); - - b.Property("InvitedUser") - .HasColumnType("int(11)") - .HasComment("被邀请用户"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId"); - - b.HasIndex(new[] { "InviteUser" }, "InviteUser"); - - b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); - - b.ToTable("group_invite", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("加入群聊时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("Role") - .HasColumnType("tinyint(4)") - .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户编号"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "Groupld"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID2"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld1"); - - b.ToTable("group_member", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("入群附言"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号\r\n"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId") - .HasDatabaseName("GroupId1"); - - b.ToTable("group_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(通Devices/DType) "); - - b.Property("Logined") - .HasColumnType("datetime") - .HasComment("登录时间 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("登录用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld2"); - - b.ToTable("login_log", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("tinyint(4)") - .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); - - b.Property("ClientMsgId") - .HasColumnType("char(36)"); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("消息内容 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("发送时间 "); - - b.Property("MsgType") - .HasColumnType("tinyint(4)") - .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); - - b.Property("Recipient") - .HasColumnType("int(11)") - .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); - - b.Property("Sender") - .HasColumnType("int(11)") - .HasComment("发送者 "); - - b.Property("SequenceId") - .HasColumnType("bigint"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("消息状态(0:已发送,1:已撤回) "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("SequenceId", "StreamKey") - .IsUnique(); - - b.HasIndex(new[] { "Sender" }, "Sender"); - - b.ToTable("messages", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("通知内容"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Ntype") - .HasColumnType("tinyint(4)") - .HasColumnName("NType") - .HasComment("通知类型(0:文本)"); - - b.Property("Title") - .IsRequired() - .HasMaxLength(40) - .HasColumnType("varchar(40)") - .HasComment("通知标题"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("接收人(为空为全体通知)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld3"); - - b.ToTable("notifications", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Code") - .HasColumnType("int(11)") - .HasComment("权限编码 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("权限名称 "); - - b.Property("Ptype") - .HasColumnType("int(11)") - .HasColumnName("PType") - .HasComment("权限类型(0:增,1:删,2:改,3:查) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("permissions", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.Property("Id") - .HasColumnType("int(11)") - .HasColumnName("ID"); - - b.Property("PermissionId") - .HasColumnType("int(11)") - .HasComment("权限 "); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "PermissionId" }, "Permissionld"); - - b.HasIndex(new[] { "RoleId" }, "Roleld"); - - b.ToTable("permissionarole", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("角色描述 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("角色名称 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("roles", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("用户头像链接"); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("创建时间"); - - b.Property("IsDeleted") - .HasColumnType("tinyint(4)") - .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); - - b.Property("NickName") - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户昵称"); - - b.Property("OnlineStatus") - .HasColumnType("tinyint(4)") - .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("Status") - .ValueGeneratedOnAdd() - .HasColumnType("tinyint(4)") - .HasDefaultValueSql("'1'") - .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("修改时间"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("唯一用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID3"); - - b.HasIndex(new[] { "Username" }, "Username") - .IsUnique(); - - b.ToTable("users", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Admins") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("admins_ibfk_1"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.HasOne("IM_API.Models.Message", null) - .WithMany("Conversations") - .HasForeignKey("MessageId"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("Conversations") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("conversations_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Devices") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("devices_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.HasOne("IM_API.Models.Message", "Message") - .WithMany("Files") - .HasForeignKey("MessageId") - .IsRequired() - .HasConstraintName("files_ibfk_1"); - - b.Navigation("Message"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.HasOne("IM_API.Models.User", "FriendNavigation") - .WithMany("FriendFriendNavigations") - .HasForeignKey("FriendId") - .IsRequired() - .HasConstraintName("用户2id"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("FriendUsers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("用户id"); - - b.Navigation("FriendNavigation"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.HasOne("IM_API.Models.User", "RequestUserNavigation") - .WithMany("FriendRequestRequestUserNavigations") - .HasForeignKey("RequestUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "ResponseUserNavigation") - .WithMany("FriendRequestResponseUserNavigations") - .HasForeignKey("ResponseUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_2"); - - b.Navigation("RequestUserNavigation"); - - b.Navigation("ResponseUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.HasOne("IM_API.Models.User", "GroupMasterNavigation") - .WithMany("Groups") - .HasForeignKey("GroupMaster") - .IsRequired() - .HasConstraintName("groups_ibfk_1"); - - b.Navigation("GroupMasterNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupInvites") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_invite_ibfk_2"); - - b.HasOne("IM_API.Models.User", "InviteUserNavigation") - .WithMany("GroupInviteInviteUserNavigations") - .HasForeignKey("InviteUser") - .HasConstraintName("group_invite_ibfk_1"); - - b.HasOne("IM_API.Models.User", "InvitedUserNavigation") - .WithMany("GroupInviteInvitedUserNavigations") - .HasForeignKey("InvitedUser") - .HasConstraintName("group_invite_ibfk_3"); - - b.Navigation("Group"); - - b.Navigation("InviteUserNavigation"); - - b.Navigation("InvitedUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupMembers") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_member_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("GroupMembers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("group_member_ibfk_1"); - - b.Navigation("Group"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "GroupNavigation") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_2"); - - b.Navigation("Group"); - - b.Navigation("GroupNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("LoginLogs") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("login_log_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.HasOne("IM_API.Models.User", "SenderNavigation") - .WithMany("Messages") - .HasForeignKey("Sender") - .IsRequired() - .HasConstraintName("messages_ibfk_1"); - - b.Navigation("SenderNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Notifications") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("notifications_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.HasOne("IM_API.Models.Permission", "Permission") - .WithMany("Permissionaroles") - .HasForeignKey("PermissionId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_2"); - - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Permissionaroles") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_1"); - - b.Navigation("Permission"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Navigation("GroupInvites"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Navigation("Conversations"); - - b.Navigation("Files"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Navigation("Admins"); - - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Navigation("Conversations"); - - b.Navigation("Devices"); - - b.Navigation("FriendFriendNavigations"); - - b.Navigation("FriendRequestRequestUserNavigations"); - - b.Navigation("FriendRequestResponseUserNavigations"); - - b.Navigation("FriendUsers"); - - b.Navigation("GroupInviteInviteUserNavigations"); - - b.Navigation("GroupInviteInvitedUserNavigations"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - - b.Navigation("Groups"); - - b.Navigation("LoginLogs"); - - b.Navigation("Messages"); - - b.Navigation("Notifications"); - }); -#pragma warning restore 612, 618 - } - } -} +// +using System; +using IM_API.Models; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace IM_API.Migrations +{ + [DbContext(typeof(ImContext))] + [Migration("20260207121713_update-datetimeToDateTimeOffset")] + partial class updatedatetimeToDateTimeOffset + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .UseCollation("latin1_swedish_ci") + .HasAnnotation("ProductVersion", "8.0.21") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); + MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("状态(0:正常,2:封禁) "); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("更新时间 "); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RoleId" }, "RoleId"); + + b.ToTable("admins", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("int(11)"); + + b.Property("LastMessage") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("最后一条最新消息"); + + b.Property("LastMessageTime") + .HasColumnType("datetime") + .HasComment("最后一条消息发送时间"); + + b.Property("LastReadSequenceId") + .HasColumnType("int(11)") + .HasColumnName("lastReadMessageId") + .HasComment("最后一条未读消息ID "); + + b.Property("MessageId") + .HasColumnType("int(11)"); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.Property("TargetId") + .HasColumnType("int(11)") + .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); + + b.Property("UnreadCount") + .HasColumnType("int(11)") + .HasComment("未读消息数 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("MessageId"); + + b.HasIndex(new[] { "LastReadSequenceId" }, "LastReadSequenceId"); + + b.HasIndex(new[] { "UserId" }, "Userid"); + + b.ToTable("conversations", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); + + b.Property("LastLogin") + .HasColumnType("datetime") + .HasComment("最后一次登录 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("设备所属用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid") + .HasDatabaseName("Userid1"); + + b.ToTable("devices", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("FileType") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("varchar(10)") + .HasComment("文件类型 "); + + b.Property("MessageId") + .HasColumnType("int(11)") + .HasComment("关联消息ID "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("文件名 "); + + b.Property("Size") + .HasColumnType("int(11)") + .HasComment("文件大小(单位:KB) "); + + b.Property("Url") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasColumnName("URL") + .HasComment("文件储存URL "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "MessageId" }, "Messageld"); + + b.ToTable("files", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("好友头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("好友关系创建时间"); + + b.Property("FriendId") + .HasColumnType("int(11)") + .HasComment("用户2ID"); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("好友备注名"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户ID"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID"); + + b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); + + b.HasIndex(new[] { "FriendId" }, "用户2id"); + + b.ToTable("friends", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("申请时间 "); + + b.Property("Description") + .HasColumnType("text") + .HasComment("申请附言 "); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("备注"); + + b.Property("RequestUser") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.Property("ResponseUser") + .HasColumnType("int(11)") + .HasComment("被申请人 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RequestUser" }, "RequestUser"); + + b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); + + b.ToTable("friend_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("AllMembersBanned") + .HasColumnType("tinyint(4)") + .HasComment("全员禁言(0允许发言,2全员禁言)"); + + b.Property("Announcement") + .HasColumnType("text") + .HasComment("群公告"); + + b.Property("Auhority") + .HasColumnType("tinyint(4)") + .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); + + b.Property("Avatar") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("群头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("群聊创建时间"); + + b.Property("GroupMaster") + .HasColumnType("int(11)") + .HasComment("群主"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("群聊名称"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("群聊状态\r\n(1:正常,2:封禁)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID1"); + + b.ToTable("groups", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("InviteUser") + .HasColumnType("int(11)") + .HasComment("邀请用户"); + + b.Property("InvitedUser") + .HasColumnType("int(11)") + .HasComment("被邀请用户"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId"); + + b.HasIndex(new[] { "InviteUser" }, "InviteUser"); + + b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); + + b.ToTable("group_invite", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("加入群聊时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("Role") + .HasColumnType("tinyint(4)") + .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户编号"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "Groupld"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID2"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld1"); + + b.ToTable("group_member", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("入群附言"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号\r\n"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId") + .HasDatabaseName("GroupId1"); + + b.ToTable("group_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(通Devices/DType) "); + + b.Property("Logined") + .HasColumnType("datetime") + .HasComment("登录时间 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("登录用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld2"); + + b.ToTable("login_log", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("tinyint(4)") + .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); + + b.Property("ClientMsgId") + .HasColumnType("char(36)"); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("消息内容 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("发送时间 "); + + b.Property("MsgType") + .HasColumnType("tinyint(4)") + .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); + + b.Property("Recipient") + .HasColumnType("int(11)") + .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); + + b.Property("Sender") + .HasColumnType("int(11)") + .HasComment("发送者 "); + + b.Property("SequenceId") + .HasColumnType("bigint"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("消息状态(0:已发送,1:已撤回) "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("SequenceId", "StreamKey") + .IsUnique(); + + b.HasIndex(new[] { "Sender" }, "Sender"); + + b.ToTable("messages", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("通知内容"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Ntype") + .HasColumnType("tinyint(4)") + .HasColumnName("NType") + .HasComment("通知类型(0:文本)"); + + b.Property("Title") + .IsRequired() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasComment("通知标题"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("接收人(为空为全体通知)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld3"); + + b.ToTable("notifications", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Code") + .HasColumnType("int(11)") + .HasComment("权限编码 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("权限名称 "); + + b.Property("Ptype") + .HasColumnType("int(11)") + .HasColumnName("PType") + .HasComment("权限类型(0:增,1:删,2:改,3:查) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("permissions", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.Property("Id") + .HasColumnType("int(11)") + .HasColumnName("ID"); + + b.Property("PermissionId") + .HasColumnType("int(11)") + .HasComment("权限 "); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "PermissionId" }, "Permissionld"); + + b.HasIndex(new[] { "RoleId" }, "Roleld"); + + b.ToTable("permissionarole", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("角色描述 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("角色名称 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("roles", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("用户头像链接"); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("创建时间"); + + b.Property("IsDeleted") + .HasColumnType("tinyint(4)") + .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); + + b.Property("NickName") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户昵称"); + + b.Property("OnlineStatus") + .HasColumnType("tinyint(4)") + .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("Status") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(4)") + .HasDefaultValueSql("'1'") + .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("修改时间"); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("唯一用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID3"); + + b.HasIndex(new[] { "Username" }, "Username") + .IsUnique(); + + b.ToTable("users", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Admins") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("admins_ibfk_1"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.HasOne("IM_API.Models.Message", null) + .WithMany("Conversations") + .HasForeignKey("MessageId"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("Conversations") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("conversations_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Devices") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("devices_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.HasOne("IM_API.Models.Message", "Message") + .WithMany("Files") + .HasForeignKey("MessageId") + .IsRequired() + .HasConstraintName("files_ibfk_1"); + + b.Navigation("Message"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.HasOne("IM_API.Models.User", "FriendNavigation") + .WithMany("FriendFriendNavigations") + .HasForeignKey("FriendId") + .IsRequired() + .HasConstraintName("用户2id"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("FriendUsers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("用户id"); + + b.Navigation("FriendNavigation"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.HasOne("IM_API.Models.User", "RequestUserNavigation") + .WithMany("FriendRequestRequestUserNavigations") + .HasForeignKey("RequestUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "ResponseUserNavigation") + .WithMany("FriendRequestResponseUserNavigations") + .HasForeignKey("ResponseUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_2"); + + b.Navigation("RequestUserNavigation"); + + b.Navigation("ResponseUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.HasOne("IM_API.Models.User", "GroupMasterNavigation") + .WithMany("Groups") + .HasForeignKey("GroupMaster") + .IsRequired() + .HasConstraintName("groups_ibfk_1"); + + b.Navigation("GroupMasterNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupInvites") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_invite_ibfk_2"); + + b.HasOne("IM_API.Models.User", "InviteUserNavigation") + .WithMany("GroupInviteInviteUserNavigations") + .HasForeignKey("InviteUser") + .HasConstraintName("group_invite_ibfk_1"); + + b.HasOne("IM_API.Models.User", "InvitedUserNavigation") + .WithMany("GroupInviteInvitedUserNavigations") + .HasForeignKey("InvitedUser") + .HasConstraintName("group_invite_ibfk_3"); + + b.Navigation("Group"); + + b.Navigation("InviteUserNavigation"); + + b.Navigation("InvitedUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupMembers") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_member_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("GroupMembers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("group_member_ibfk_1"); + + b.Navigation("Group"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "GroupNavigation") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_2"); + + b.Navigation("Group"); + + b.Navigation("GroupNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("LoginLogs") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("login_log_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.HasOne("IM_API.Models.User", "SenderNavigation") + .WithMany("Messages") + .HasForeignKey("Sender") + .IsRequired() + .HasConstraintName("messages_ibfk_1"); + + b.Navigation("SenderNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Notifications") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("notifications_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.HasOne("IM_API.Models.Permission", "Permission") + .WithMany("Permissionaroles") + .HasForeignKey("PermissionId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_2"); + + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Permissionaroles") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_1"); + + b.Navigation("Permission"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Navigation("GroupInvites"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Navigation("Conversations"); + + b.Navigation("Files"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Navigation("Admins"); + + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Navigation("Conversations"); + + b.Navigation("Devices"); + + b.Navigation("FriendFriendNavigations"); + + b.Navigation("FriendRequestRequestUserNavigations"); + + b.Navigation("FriendRequestResponseUserNavigations"); + + b.Navigation("FriendUsers"); + + b.Navigation("GroupInviteInviteUserNavigations"); + + b.Navigation("GroupInviteInvitedUserNavigations"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + + b.Navigation("Groups"); + + b.Navigation("LoginLogs"); + + b.Navigation("Messages"); + + b.Navigation("Notifications"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/backend/IM_API/Migrations/20260207121713_update-datetimeToDateTimeOffset.cs b/backend/IM_API/Migrations/20260207121713_update-datetimeToDateTimeOffset.cs index 15b2ed4..22b00b8 100644 --- a/backend/IM_API/Migrations/20260207121713_update-datetimeToDateTimeOffset.cs +++ b/backend/IM_API/Migrations/20260207121713_update-datetimeToDateTimeOffset.cs @@ -1,22 +1,22 @@ -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace IM_API.Migrations -{ - /// - public partial class updatedatetimeToDateTimeOffset : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - - } - } -} +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace IM_API.Migrations +{ + /// + public partial class updatedatetimeToDateTimeOffset : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + + } + } +} diff --git a/backend/IM_API/Migrations/20260207122338_update-DateTimeOffset-type.Designer.cs b/backend/IM_API/Migrations/20260207122338_update-DateTimeOffset-type.Designer.cs index 06934ee..0554479 100644 --- a/backend/IM_API/Migrations/20260207122338_update-DateTimeOffset-type.Designer.cs +++ b/backend/IM_API/Migrations/20260207122338_update-DateTimeOffset-type.Designer.cs @@ -1,1101 +1,1101 @@ -// -using System; -using IM_API.Models; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Metadata; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace IM_API.Migrations -{ - [DbContext(typeof(ImContext))] - [Migration("20260207122338_update-DateTimeOffset-type")] - partial class updateDateTimeOffsettype - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .UseCollation("latin1_swedish_ci") - .HasAnnotation("ProductVersion", "8.0.21") - .HasAnnotation("Relational:MaxIdentifierLength", 64); - - MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); - MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("状态(0:正常,2:封禁) "); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("更新时间 "); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RoleId" }, "RoleId"); - - b.ToTable("admins", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("int(11)"); - - b.Property("LastMessage") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("最后一条最新消息"); - - b.Property("LastMessageTime") - .HasColumnType("datetime") - .HasComment("最后一条消息发送时间"); - - b.Property("LastReadSequenceId") - .HasColumnType("int(11)") - .HasColumnName("lastReadMessageId") - .HasComment("最后一条未读消息ID "); - - b.Property("MessageId") - .HasColumnType("int(11)"); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.Property("TargetId") - .HasColumnType("int(11)") - .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); - - b.Property("UnreadCount") - .HasColumnType("int(11)") - .HasComment("未读消息数 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("MessageId"); - - b.HasIndex(new[] { "LastReadSequenceId" }, "LastReadSequenceId"); - - b.HasIndex(new[] { "UserId" }, "Userid"); - - b.ToTable("conversations", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); - - b.Property("LastLogin") - .HasColumnType("datetime") - .HasComment("最后一次登录 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("设备所属用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid") - .HasDatabaseName("Userid1"); - - b.ToTable("devices", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("FileType") - .IsRequired() - .HasMaxLength(10) - .HasColumnType("varchar(10)") - .HasComment("文件类型 "); - - b.Property("MessageId") - .HasColumnType("int(11)") - .HasComment("关联消息ID "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("文件名 "); - - b.Property("Size") - .HasColumnType("int(11)") - .HasComment("文件大小(单位:KB) "); - - b.Property("Url") - .IsRequired() - .HasMaxLength(100) - .HasColumnType("varchar(100)") - .HasColumnName("URL") - .HasComment("文件储存URL "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "MessageId" }, "Messageld"); - - b.ToTable("files", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("好友头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("好友关系创建时间"); - - b.Property("FriendId") - .HasColumnType("int(11)") - .HasComment("用户2ID"); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("好友备注名"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户ID"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID"); - - b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); - - b.HasIndex(new[] { "FriendId" }, "用户2id"); - - b.ToTable("friends", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("申请时间 "); - - b.Property("Description") - .HasColumnType("text") - .HasComment("申请附言 "); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("备注"); - - b.Property("RequestUser") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.Property("ResponseUser") - .HasColumnType("int(11)") - .HasComment("被申请人 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RequestUser" }, "RequestUser"); - - b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); - - b.ToTable("friend_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("AllMembersBanned") - .HasColumnType("tinyint(4)") - .HasComment("全员禁言(0允许发言,2全员禁言)"); - - b.Property("Announcement") - .HasColumnType("text") - .HasComment("群公告"); - - b.Property("Auhority") - .HasColumnType("tinyint(4)") - .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); - - b.Property("Avatar") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("群头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("群聊创建时间"); - - b.Property("GroupMaster") - .HasColumnType("int(11)") - .HasComment("群主"); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("群聊名称"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("群聊状态\r\n(1:正常,2:封禁)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID1"); - - b.ToTable("groups", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("InviteUser") - .HasColumnType("int(11)") - .HasComment("邀请用户"); - - b.Property("InvitedUser") - .HasColumnType("int(11)") - .HasComment("被邀请用户"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId"); - - b.HasIndex(new[] { "InviteUser" }, "InviteUser"); - - b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); - - b.ToTable("group_invite", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("加入群聊时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("Role") - .HasColumnType("tinyint(4)") - .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户编号"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "Groupld"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID2"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld1"); - - b.ToTable("group_member", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("入群附言"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号\r\n"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId") - .HasDatabaseName("GroupId1"); - - b.ToTable("group_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(通Devices/DType) "); - - b.Property("Logined") - .HasColumnType("datetime") - .HasComment("登录时间 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("登录用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld2"); - - b.ToTable("login_log", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("tinyint(4)") - .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); - - b.Property("ClientMsgId") - .HasColumnType("char(36)"); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("消息内容 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("发送时间 "); - - b.Property("MsgType") - .HasColumnType("tinyint(4)") - .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); - - b.Property("Recipient") - .HasColumnType("int(11)") - .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); - - b.Property("Sender") - .HasColumnType("int(11)") - .HasComment("发送者 "); - - b.Property("SequenceId") - .HasColumnType("bigint"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("消息状态(0:已发送,1:已撤回) "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("SequenceId", "StreamKey") - .IsUnique(); - - b.HasIndex(new[] { "Sender" }, "Sender"); - - b.ToTable("messages", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("通知内容"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Ntype") - .HasColumnType("tinyint(4)") - .HasColumnName("NType") - .HasComment("通知类型(0:文本)"); - - b.Property("Title") - .IsRequired() - .HasMaxLength(40) - .HasColumnType("varchar(40)") - .HasComment("通知标题"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("接收人(为空为全体通知)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld3"); - - b.ToTable("notifications", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Code") - .HasColumnType("int(11)") - .HasComment("权限编码 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("权限名称 "); - - b.Property("Ptype") - .HasColumnType("int(11)") - .HasColumnName("PType") - .HasComment("权限类型(0:增,1:删,2:改,3:查) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("permissions", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.Property("Id") - .HasColumnType("int(11)") - .HasColumnName("ID"); - - b.Property("PermissionId") - .HasColumnType("int(11)") - .HasComment("权限 "); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "PermissionId" }, "Permissionld"); - - b.HasIndex(new[] { "RoleId" }, "Roleld"); - - b.ToTable("permissionarole", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("角色描述 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("角色名称 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("roles", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("用户头像链接"); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("创建时间"); - - b.Property("IsDeleted") - .HasColumnType("tinyint(4)") - .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); - - b.Property("NickName") - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户昵称"); - - b.Property("OnlineStatus") - .HasColumnType("tinyint(4)") - .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("Status") - .ValueGeneratedOnAdd() - .HasColumnType("tinyint(4)") - .HasDefaultValueSql("'1'") - .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("修改时间"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("唯一用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID3"); - - b.HasIndex(new[] { "Username" }, "Username") - .IsUnique(); - - b.ToTable("users", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Admins") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("admins_ibfk_1"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.HasOne("IM_API.Models.Message", null) - .WithMany("Conversations") - .HasForeignKey("MessageId"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("Conversations") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("conversations_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Devices") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("devices_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.HasOne("IM_API.Models.Message", "Message") - .WithMany("Files") - .HasForeignKey("MessageId") - .IsRequired() - .HasConstraintName("files_ibfk_1"); - - b.Navigation("Message"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.HasOne("IM_API.Models.User", "FriendNavigation") - .WithMany("FriendFriendNavigations") - .HasForeignKey("FriendId") - .IsRequired() - .HasConstraintName("用户2id"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("FriendUsers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("用户id"); - - b.Navigation("FriendNavigation"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.HasOne("IM_API.Models.User", "RequestUserNavigation") - .WithMany("FriendRequestRequestUserNavigations") - .HasForeignKey("RequestUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "ResponseUserNavigation") - .WithMany("FriendRequestResponseUserNavigations") - .HasForeignKey("ResponseUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_2"); - - b.Navigation("RequestUserNavigation"); - - b.Navigation("ResponseUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.HasOne("IM_API.Models.User", "GroupMasterNavigation") - .WithMany("Groups") - .HasForeignKey("GroupMaster") - .IsRequired() - .HasConstraintName("groups_ibfk_1"); - - b.Navigation("GroupMasterNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupInvites") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_invite_ibfk_2"); - - b.HasOne("IM_API.Models.User", "InviteUserNavigation") - .WithMany("GroupInviteInviteUserNavigations") - .HasForeignKey("InviteUser") - .HasConstraintName("group_invite_ibfk_1"); - - b.HasOne("IM_API.Models.User", "InvitedUserNavigation") - .WithMany("GroupInviteInvitedUserNavigations") - .HasForeignKey("InvitedUser") - .HasConstraintName("group_invite_ibfk_3"); - - b.Navigation("Group"); - - b.Navigation("InviteUserNavigation"); - - b.Navigation("InvitedUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupMembers") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_member_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("GroupMembers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("group_member_ibfk_1"); - - b.Navigation("Group"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "GroupNavigation") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_2"); - - b.Navigation("Group"); - - b.Navigation("GroupNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("LoginLogs") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("login_log_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.HasOne("IM_API.Models.User", "SenderNavigation") - .WithMany("Messages") - .HasForeignKey("Sender") - .IsRequired() - .HasConstraintName("messages_ibfk_1"); - - b.Navigation("SenderNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Notifications") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("notifications_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.HasOne("IM_API.Models.Permission", "Permission") - .WithMany("Permissionaroles") - .HasForeignKey("PermissionId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_2"); - - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Permissionaroles") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_1"); - - b.Navigation("Permission"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Navigation("GroupInvites"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Navigation("Conversations"); - - b.Navigation("Files"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Navigation("Admins"); - - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Navigation("Conversations"); - - b.Navigation("Devices"); - - b.Navigation("FriendFriendNavigations"); - - b.Navigation("FriendRequestRequestUserNavigations"); - - b.Navigation("FriendRequestResponseUserNavigations"); - - b.Navigation("FriendUsers"); - - b.Navigation("GroupInviteInviteUserNavigations"); - - b.Navigation("GroupInviteInvitedUserNavigations"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - - b.Navigation("Groups"); - - b.Navigation("LoginLogs"); - - b.Navigation("Messages"); - - b.Navigation("Notifications"); - }); -#pragma warning restore 612, 618 - } - } -} +// +using System; +using IM_API.Models; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace IM_API.Migrations +{ + [DbContext(typeof(ImContext))] + [Migration("20260207122338_update-DateTimeOffset-type")] + partial class updateDateTimeOffsettype + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .UseCollation("latin1_swedish_ci") + .HasAnnotation("ProductVersion", "8.0.21") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); + MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("状态(0:正常,2:封禁) "); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("更新时间 "); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RoleId" }, "RoleId"); + + b.ToTable("admins", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("int(11)"); + + b.Property("LastMessage") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("最后一条最新消息"); + + b.Property("LastMessageTime") + .HasColumnType("datetime") + .HasComment("最后一条消息发送时间"); + + b.Property("LastReadSequenceId") + .HasColumnType("int(11)") + .HasColumnName("lastReadMessageId") + .HasComment("最后一条未读消息ID "); + + b.Property("MessageId") + .HasColumnType("int(11)"); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.Property("TargetId") + .HasColumnType("int(11)") + .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); + + b.Property("UnreadCount") + .HasColumnType("int(11)") + .HasComment("未读消息数 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("MessageId"); + + b.HasIndex(new[] { "LastReadSequenceId" }, "LastReadSequenceId"); + + b.HasIndex(new[] { "UserId" }, "Userid"); + + b.ToTable("conversations", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); + + b.Property("LastLogin") + .HasColumnType("datetime") + .HasComment("最后一次登录 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("设备所属用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid") + .HasDatabaseName("Userid1"); + + b.ToTable("devices", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("FileType") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("varchar(10)") + .HasComment("文件类型 "); + + b.Property("MessageId") + .HasColumnType("int(11)") + .HasComment("关联消息ID "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("文件名 "); + + b.Property("Size") + .HasColumnType("int(11)") + .HasComment("文件大小(单位:KB) "); + + b.Property("Url") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasColumnName("URL") + .HasComment("文件储存URL "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "MessageId" }, "Messageld"); + + b.ToTable("files", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("好友头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("好友关系创建时间"); + + b.Property("FriendId") + .HasColumnType("int(11)") + .HasComment("用户2ID"); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("好友备注名"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户ID"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID"); + + b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); + + b.HasIndex(new[] { "FriendId" }, "用户2id"); + + b.ToTable("friends", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("申请时间 "); + + b.Property("Description") + .HasColumnType("text") + .HasComment("申请附言 "); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("备注"); + + b.Property("RequestUser") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.Property("ResponseUser") + .HasColumnType("int(11)") + .HasComment("被申请人 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RequestUser" }, "RequestUser"); + + b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); + + b.ToTable("friend_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("AllMembersBanned") + .HasColumnType("tinyint(4)") + .HasComment("全员禁言(0允许发言,2全员禁言)"); + + b.Property("Announcement") + .HasColumnType("text") + .HasComment("群公告"); + + b.Property("Auhority") + .HasColumnType("tinyint(4)") + .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); + + b.Property("Avatar") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("群头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("群聊创建时间"); + + b.Property("GroupMaster") + .HasColumnType("int(11)") + .HasComment("群主"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("群聊名称"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("群聊状态\r\n(1:正常,2:封禁)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID1"); + + b.ToTable("groups", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("InviteUser") + .HasColumnType("int(11)") + .HasComment("邀请用户"); + + b.Property("InvitedUser") + .HasColumnType("int(11)") + .HasComment("被邀请用户"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId"); + + b.HasIndex(new[] { "InviteUser" }, "InviteUser"); + + b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); + + b.ToTable("group_invite", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("加入群聊时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("Role") + .HasColumnType("tinyint(4)") + .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户编号"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "Groupld"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID2"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld1"); + + b.ToTable("group_member", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("入群附言"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号\r\n"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId") + .HasDatabaseName("GroupId1"); + + b.ToTable("group_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(通Devices/DType) "); + + b.Property("Logined") + .HasColumnType("datetime") + .HasComment("登录时间 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("登录用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld2"); + + b.ToTable("login_log", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("tinyint(4)") + .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); + + b.Property("ClientMsgId") + .HasColumnType("char(36)"); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("消息内容 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("发送时间 "); + + b.Property("MsgType") + .HasColumnType("tinyint(4)") + .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); + + b.Property("Recipient") + .HasColumnType("int(11)") + .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); + + b.Property("Sender") + .HasColumnType("int(11)") + .HasComment("发送者 "); + + b.Property("SequenceId") + .HasColumnType("bigint"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("消息状态(0:已发送,1:已撤回) "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("SequenceId", "StreamKey") + .IsUnique(); + + b.HasIndex(new[] { "Sender" }, "Sender"); + + b.ToTable("messages", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("通知内容"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Ntype") + .HasColumnType("tinyint(4)") + .HasColumnName("NType") + .HasComment("通知类型(0:文本)"); + + b.Property("Title") + .IsRequired() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasComment("通知标题"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("接收人(为空为全体通知)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld3"); + + b.ToTable("notifications", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Code") + .HasColumnType("int(11)") + .HasComment("权限编码 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("权限名称 "); + + b.Property("Ptype") + .HasColumnType("int(11)") + .HasColumnName("PType") + .HasComment("权限类型(0:增,1:删,2:改,3:查) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("permissions", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.Property("Id") + .HasColumnType("int(11)") + .HasColumnName("ID"); + + b.Property("PermissionId") + .HasColumnType("int(11)") + .HasComment("权限 "); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "PermissionId" }, "Permissionld"); + + b.HasIndex(new[] { "RoleId" }, "Roleld"); + + b.ToTable("permissionarole", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("角色描述 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("角色名称 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("roles", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("用户头像链接"); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("创建时间"); + + b.Property("IsDeleted") + .HasColumnType("tinyint(4)") + .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); + + b.Property("NickName") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户昵称"); + + b.Property("OnlineStatus") + .HasColumnType("tinyint(4)") + .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("Status") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(4)") + .HasDefaultValueSql("'1'") + .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("修改时间"); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("唯一用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID3"); + + b.HasIndex(new[] { "Username" }, "Username") + .IsUnique(); + + b.ToTable("users", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Admins") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("admins_ibfk_1"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.HasOne("IM_API.Models.Message", null) + .WithMany("Conversations") + .HasForeignKey("MessageId"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("Conversations") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("conversations_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Devices") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("devices_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.HasOne("IM_API.Models.Message", "Message") + .WithMany("Files") + .HasForeignKey("MessageId") + .IsRequired() + .HasConstraintName("files_ibfk_1"); + + b.Navigation("Message"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.HasOne("IM_API.Models.User", "FriendNavigation") + .WithMany("FriendFriendNavigations") + .HasForeignKey("FriendId") + .IsRequired() + .HasConstraintName("用户2id"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("FriendUsers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("用户id"); + + b.Navigation("FriendNavigation"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.HasOne("IM_API.Models.User", "RequestUserNavigation") + .WithMany("FriendRequestRequestUserNavigations") + .HasForeignKey("RequestUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "ResponseUserNavigation") + .WithMany("FriendRequestResponseUserNavigations") + .HasForeignKey("ResponseUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_2"); + + b.Navigation("RequestUserNavigation"); + + b.Navigation("ResponseUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.HasOne("IM_API.Models.User", "GroupMasterNavigation") + .WithMany("Groups") + .HasForeignKey("GroupMaster") + .IsRequired() + .HasConstraintName("groups_ibfk_1"); + + b.Navigation("GroupMasterNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupInvites") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_invite_ibfk_2"); + + b.HasOne("IM_API.Models.User", "InviteUserNavigation") + .WithMany("GroupInviteInviteUserNavigations") + .HasForeignKey("InviteUser") + .HasConstraintName("group_invite_ibfk_1"); + + b.HasOne("IM_API.Models.User", "InvitedUserNavigation") + .WithMany("GroupInviteInvitedUserNavigations") + .HasForeignKey("InvitedUser") + .HasConstraintName("group_invite_ibfk_3"); + + b.Navigation("Group"); + + b.Navigation("InviteUserNavigation"); + + b.Navigation("InvitedUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupMembers") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_member_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("GroupMembers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("group_member_ibfk_1"); + + b.Navigation("Group"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "GroupNavigation") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_2"); + + b.Navigation("Group"); + + b.Navigation("GroupNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("LoginLogs") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("login_log_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.HasOne("IM_API.Models.User", "SenderNavigation") + .WithMany("Messages") + .HasForeignKey("Sender") + .IsRequired() + .HasConstraintName("messages_ibfk_1"); + + b.Navigation("SenderNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Notifications") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("notifications_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.HasOne("IM_API.Models.Permission", "Permission") + .WithMany("Permissionaroles") + .HasForeignKey("PermissionId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_2"); + + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Permissionaroles") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_1"); + + b.Navigation("Permission"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Navigation("GroupInvites"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Navigation("Conversations"); + + b.Navigation("Files"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Navigation("Admins"); + + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Navigation("Conversations"); + + b.Navigation("Devices"); + + b.Navigation("FriendFriendNavigations"); + + b.Navigation("FriendRequestRequestUserNavigations"); + + b.Navigation("FriendRequestResponseUserNavigations"); + + b.Navigation("FriendUsers"); + + b.Navigation("GroupInviteInviteUserNavigations"); + + b.Navigation("GroupInviteInvitedUserNavigations"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + + b.Navigation("Groups"); + + b.Navigation("LoginLogs"); + + b.Navigation("Messages"); + + b.Navigation("Notifications"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/backend/IM_API/Migrations/20260207122338_update-DateTimeOffset-type.cs b/backend/IM_API/Migrations/20260207122338_update-DateTimeOffset-type.cs index 50750a3..92f641f 100644 --- a/backend/IM_API/Migrations/20260207122338_update-DateTimeOffset-type.cs +++ b/backend/IM_API/Migrations/20260207122338_update-DateTimeOffset-type.cs @@ -1,22 +1,22 @@ -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace IM_API.Migrations -{ - /// - public partial class updateDateTimeOffsettype : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - - } - } -} +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace IM_API.Migrations +{ + /// + public partial class updateDateTimeOffsettype : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + + } + } +} diff --git a/backend/IM_API/Migrations/20260208124430_update-group.Designer.cs b/backend/IM_API/Migrations/20260208124430_update-group.Designer.cs index 3dddeea..48ad47e 100644 --- a/backend/IM_API/Migrations/20260208124430_update-group.Designer.cs +++ b/backend/IM_API/Migrations/20260208124430_update-group.Designer.cs @@ -1,1115 +1,1115 @@ -// -using System; -using IM_API.Models; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Metadata; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace IM_API.Migrations -{ - [DbContext(typeof(ImContext))] - [Migration("20260208124430_update-group")] - partial class updategroup - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .UseCollation("latin1_swedish_ci") - .HasAnnotation("ProductVersion", "8.0.21") - .HasAnnotation("Relational:MaxIdentifierLength", 64); - - MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); - MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("状态(0:正常,2:封禁) "); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("更新时间 "); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RoleId" }, "RoleId"); - - b.ToTable("admins", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("int(11)"); - - b.Property("LastMessage") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("最后一条最新消息"); - - b.Property("LastMessageTime") - .HasColumnType("datetime") - .HasComment("最后一条消息发送时间"); - - b.Property("LastReadSequenceId") - .HasColumnType("int(11)") - .HasColumnName("lastReadMessageId") - .HasComment("最后一条未读消息ID "); - - b.Property("MessageId") - .HasColumnType("int(11)"); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.Property("TargetId") - .HasColumnType("int(11)") - .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); - - b.Property("UnreadCount") - .HasColumnType("int(11)") - .HasComment("未读消息数 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("MessageId"); - - b.HasIndex(new[] { "LastReadSequenceId" }, "LastReadSequenceId"); - - b.HasIndex(new[] { "UserId" }, "Userid"); - - b.ToTable("conversations", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); - - b.Property("LastLogin") - .HasColumnType("datetime") - .HasComment("最后一次登录 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("设备所属用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid") - .HasDatabaseName("Userid1"); - - b.ToTable("devices", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("FileType") - .IsRequired() - .HasMaxLength(10) - .HasColumnType("varchar(10)") - .HasComment("文件类型 "); - - b.Property("MessageId") - .HasColumnType("int(11)") - .HasComment("关联消息ID "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("文件名 "); - - b.Property("Size") - .HasColumnType("int(11)") - .HasComment("文件大小(单位:KB) "); - - b.Property("Url") - .IsRequired() - .HasMaxLength(100) - .HasColumnType("varchar(100)") - .HasColumnName("URL") - .HasComment("文件储存URL "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "MessageId" }, "Messageld"); - - b.ToTable("files", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("好友头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("好友关系创建时间"); - - b.Property("FriendId") - .HasColumnType("int(11)") - .HasComment("用户2ID"); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("好友备注名"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户ID"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID"); - - b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); - - b.HasIndex(new[] { "FriendId" }, "用户2id"); - - b.ToTable("friends", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("申请时间 "); - - b.Property("Description") - .HasColumnType("text") - .HasComment("申请附言 "); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("备注"); - - b.Property("RequestUser") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.Property("ResponseUser") - .HasColumnType("int(11)") - .HasComment("被申请人 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RequestUser" }, "RequestUser"); - - b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); - - b.ToTable("friend_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("AllMembersBanned") - .HasColumnType("tinyint(4)") - .HasComment("全员禁言(0允许发言,2全员禁言)"); - - b.Property("Announcement") - .HasColumnType("text") - .HasComment("群公告"); - - b.Property("Auhority") - .HasColumnType("tinyint(4)") - .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); - - b.Property("Avatar") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("群头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("群聊创建时间"); - - b.Property("GroupMaster") - .HasColumnType("int(11)") - .HasComment("群主"); - - b.Property("LastMessage") - .IsRequired() - .HasColumnType("longtext"); - - b.Property("LastSenderName") - .IsRequired() - .HasColumnType("longtext"); - - b.Property("LastUpdateTime") - .HasColumnType("datetime(6)"); - - b.Property("MaxSequenceId") - .HasColumnType("bigint"); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("群聊名称"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("群聊状态\r\n(1:正常,2:封禁)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID1"); - - b.ToTable("groups", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("InviteUser") - .HasColumnType("int(11)") - .HasComment("邀请用户"); - - b.Property("InvitedUser") - .HasColumnType("int(11)") - .HasComment("被邀请用户"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId"); - - b.HasIndex(new[] { "InviteUser" }, "InviteUser"); - - b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); - - b.ToTable("group_invite", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("加入群聊时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("Role") - .HasColumnType("tinyint(4)") - .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户编号"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "Groupld"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID2"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld1"); - - b.ToTable("group_member", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("入群附言"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号\r\n"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId") - .HasDatabaseName("GroupId1"); - - b.ToTable("group_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(通Devices/DType) "); - - b.Property("Logined") - .HasColumnType("datetime") - .HasComment("登录时间 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("登录用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld2"); - - b.ToTable("login_log", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("tinyint(4)") - .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); - - b.Property("ClientMsgId") - .HasColumnType("char(36)"); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("消息内容 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("发送时间 "); - - b.Property("MsgType") - .HasColumnType("tinyint(4)") - .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); - - b.Property("Recipient") - .HasColumnType("int(11)") - .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); - - b.Property("Sender") - .HasColumnType("int(11)") - .HasComment("发送者 "); - - b.Property("SequenceId") - .HasColumnType("bigint"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("消息状态(0:已发送,1:已撤回) "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("SequenceId", "StreamKey") - .IsUnique(); - - b.HasIndex(new[] { "Sender" }, "Sender"); - - b.ToTable("messages", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("通知内容"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Ntype") - .HasColumnType("tinyint(4)") - .HasColumnName("NType") - .HasComment("通知类型(0:文本)"); - - b.Property("Title") - .IsRequired() - .HasMaxLength(40) - .HasColumnType("varchar(40)") - .HasComment("通知标题"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("接收人(为空为全体通知)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld3"); - - b.ToTable("notifications", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Code") - .HasColumnType("int(11)") - .HasComment("权限编码 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("权限名称 "); - - b.Property("Ptype") - .HasColumnType("int(11)") - .HasColumnName("PType") - .HasComment("权限类型(0:增,1:删,2:改,3:查) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("permissions", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.Property("Id") - .HasColumnType("int(11)") - .HasColumnName("ID"); - - b.Property("PermissionId") - .HasColumnType("int(11)") - .HasComment("权限 "); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "PermissionId" }, "Permissionld"); - - b.HasIndex(new[] { "RoleId" }, "Roleld"); - - b.ToTable("permissionarole", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("角色描述 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("角色名称 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("roles", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("用户头像链接"); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("创建时间"); - - b.Property("IsDeleted") - .HasColumnType("tinyint(4)") - .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); - - b.Property("NickName") - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户昵称"); - - b.Property("OnlineStatus") - .HasColumnType("tinyint(4)") - .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("Status") - .ValueGeneratedOnAdd() - .HasColumnType("tinyint(4)") - .HasDefaultValueSql("'1'") - .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("修改时间"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("唯一用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID3"); - - b.HasIndex(new[] { "Username" }, "Username") - .IsUnique(); - - b.ToTable("users", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Admins") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("admins_ibfk_1"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.HasOne("IM_API.Models.Message", null) - .WithMany("Conversations") - .HasForeignKey("MessageId"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("Conversations") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("conversations_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Devices") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("devices_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.HasOne("IM_API.Models.Message", "Message") - .WithMany("Files") - .HasForeignKey("MessageId") - .IsRequired() - .HasConstraintName("files_ibfk_1"); - - b.Navigation("Message"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.HasOne("IM_API.Models.User", "FriendNavigation") - .WithMany("FriendFriendNavigations") - .HasForeignKey("FriendId") - .IsRequired() - .HasConstraintName("用户2id"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("FriendUsers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("用户id"); - - b.Navigation("FriendNavigation"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.HasOne("IM_API.Models.User", "RequestUserNavigation") - .WithMany("FriendRequestRequestUserNavigations") - .HasForeignKey("RequestUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "ResponseUserNavigation") - .WithMany("FriendRequestResponseUserNavigations") - .HasForeignKey("ResponseUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_2"); - - b.Navigation("RequestUserNavigation"); - - b.Navigation("ResponseUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.HasOne("IM_API.Models.User", "GroupMasterNavigation") - .WithMany("Groups") - .HasForeignKey("GroupMaster") - .IsRequired() - .HasConstraintName("groups_ibfk_1"); - - b.Navigation("GroupMasterNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupInvites") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_invite_ibfk_2"); - - b.HasOne("IM_API.Models.User", "InviteUserNavigation") - .WithMany("GroupInviteInviteUserNavigations") - .HasForeignKey("InviteUser") - .HasConstraintName("group_invite_ibfk_1"); - - b.HasOne("IM_API.Models.User", "InvitedUserNavigation") - .WithMany("GroupInviteInvitedUserNavigations") - .HasForeignKey("InvitedUser") - .HasConstraintName("group_invite_ibfk_3"); - - b.Navigation("Group"); - - b.Navigation("InviteUserNavigation"); - - b.Navigation("InvitedUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupMembers") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_member_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("GroupMembers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("group_member_ibfk_1"); - - b.Navigation("Group"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "GroupNavigation") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_2"); - - b.Navigation("Group"); - - b.Navigation("GroupNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("LoginLogs") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("login_log_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.HasOne("IM_API.Models.User", "SenderNavigation") - .WithMany("Messages") - .HasForeignKey("Sender") - .IsRequired() - .HasConstraintName("messages_ibfk_1"); - - b.Navigation("SenderNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Notifications") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("notifications_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.HasOne("IM_API.Models.Permission", "Permission") - .WithMany("Permissionaroles") - .HasForeignKey("PermissionId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_2"); - - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Permissionaroles") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_1"); - - b.Navigation("Permission"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Navigation("GroupInvites"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Navigation("Conversations"); - - b.Navigation("Files"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Navigation("Admins"); - - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Navigation("Conversations"); - - b.Navigation("Devices"); - - b.Navigation("FriendFriendNavigations"); - - b.Navigation("FriendRequestRequestUserNavigations"); - - b.Navigation("FriendRequestResponseUserNavigations"); - - b.Navigation("FriendUsers"); - - b.Navigation("GroupInviteInviteUserNavigations"); - - b.Navigation("GroupInviteInvitedUserNavigations"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - - b.Navigation("Groups"); - - b.Navigation("LoginLogs"); - - b.Navigation("Messages"); - - b.Navigation("Notifications"); - }); -#pragma warning restore 612, 618 - } - } -} +// +using System; +using IM_API.Models; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace IM_API.Migrations +{ + [DbContext(typeof(ImContext))] + [Migration("20260208124430_update-group")] + partial class updategroup + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .UseCollation("latin1_swedish_ci") + .HasAnnotation("ProductVersion", "8.0.21") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); + MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("状态(0:正常,2:封禁) "); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("更新时间 "); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RoleId" }, "RoleId"); + + b.ToTable("admins", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("int(11)"); + + b.Property("LastMessage") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("最后一条最新消息"); + + b.Property("LastMessageTime") + .HasColumnType("datetime") + .HasComment("最后一条消息发送时间"); + + b.Property("LastReadSequenceId") + .HasColumnType("int(11)") + .HasColumnName("lastReadMessageId") + .HasComment("最后一条未读消息ID "); + + b.Property("MessageId") + .HasColumnType("int(11)"); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.Property("TargetId") + .HasColumnType("int(11)") + .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); + + b.Property("UnreadCount") + .HasColumnType("int(11)") + .HasComment("未读消息数 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("MessageId"); + + b.HasIndex(new[] { "LastReadSequenceId" }, "LastReadSequenceId"); + + b.HasIndex(new[] { "UserId" }, "Userid"); + + b.ToTable("conversations", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); + + b.Property("LastLogin") + .HasColumnType("datetime") + .HasComment("最后一次登录 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("设备所属用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid") + .HasDatabaseName("Userid1"); + + b.ToTable("devices", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("FileType") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("varchar(10)") + .HasComment("文件类型 "); + + b.Property("MessageId") + .HasColumnType("int(11)") + .HasComment("关联消息ID "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("文件名 "); + + b.Property("Size") + .HasColumnType("int(11)") + .HasComment("文件大小(单位:KB) "); + + b.Property("Url") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasColumnName("URL") + .HasComment("文件储存URL "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "MessageId" }, "Messageld"); + + b.ToTable("files", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("好友头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("好友关系创建时间"); + + b.Property("FriendId") + .HasColumnType("int(11)") + .HasComment("用户2ID"); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("好友备注名"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户ID"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID"); + + b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); + + b.HasIndex(new[] { "FriendId" }, "用户2id"); + + b.ToTable("friends", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("申请时间 "); + + b.Property("Description") + .HasColumnType("text") + .HasComment("申请附言 "); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("备注"); + + b.Property("RequestUser") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.Property("ResponseUser") + .HasColumnType("int(11)") + .HasComment("被申请人 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RequestUser" }, "RequestUser"); + + b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); + + b.ToTable("friend_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("AllMembersBanned") + .HasColumnType("tinyint(4)") + .HasComment("全员禁言(0允许发言,2全员禁言)"); + + b.Property("Announcement") + .HasColumnType("text") + .HasComment("群公告"); + + b.Property("Auhority") + .HasColumnType("tinyint(4)") + .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); + + b.Property("Avatar") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("群头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("群聊创建时间"); + + b.Property("GroupMaster") + .HasColumnType("int(11)") + .HasComment("群主"); + + b.Property("LastMessage") + .IsRequired() + .HasColumnType("longtext"); + + b.Property("LastSenderName") + .IsRequired() + .HasColumnType("longtext"); + + b.Property("LastUpdateTime") + .HasColumnType("datetime(6)"); + + b.Property("MaxSequenceId") + .HasColumnType("bigint"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("群聊名称"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("群聊状态\r\n(1:正常,2:封禁)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID1"); + + b.ToTable("groups", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("InviteUser") + .HasColumnType("int(11)") + .HasComment("邀请用户"); + + b.Property("InvitedUser") + .HasColumnType("int(11)") + .HasComment("被邀请用户"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId"); + + b.HasIndex(new[] { "InviteUser" }, "InviteUser"); + + b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); + + b.ToTable("group_invite", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("加入群聊时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("Role") + .HasColumnType("tinyint(4)") + .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户编号"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "Groupld"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID2"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld1"); + + b.ToTable("group_member", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("入群附言"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号\r\n"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId") + .HasDatabaseName("GroupId1"); + + b.ToTable("group_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(通Devices/DType) "); + + b.Property("Logined") + .HasColumnType("datetime") + .HasComment("登录时间 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("登录用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld2"); + + b.ToTable("login_log", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("tinyint(4)") + .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); + + b.Property("ClientMsgId") + .HasColumnType("char(36)"); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("消息内容 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("发送时间 "); + + b.Property("MsgType") + .HasColumnType("tinyint(4)") + .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); + + b.Property("Recipient") + .HasColumnType("int(11)") + .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); + + b.Property("Sender") + .HasColumnType("int(11)") + .HasComment("发送者 "); + + b.Property("SequenceId") + .HasColumnType("bigint"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("消息状态(0:已发送,1:已撤回) "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("SequenceId", "StreamKey") + .IsUnique(); + + b.HasIndex(new[] { "Sender" }, "Sender"); + + b.ToTable("messages", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("通知内容"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Ntype") + .HasColumnType("tinyint(4)") + .HasColumnName("NType") + .HasComment("通知类型(0:文本)"); + + b.Property("Title") + .IsRequired() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasComment("通知标题"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("接收人(为空为全体通知)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld3"); + + b.ToTable("notifications", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Code") + .HasColumnType("int(11)") + .HasComment("权限编码 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("权限名称 "); + + b.Property("Ptype") + .HasColumnType("int(11)") + .HasColumnName("PType") + .HasComment("权限类型(0:增,1:删,2:改,3:查) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("permissions", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.Property("Id") + .HasColumnType("int(11)") + .HasColumnName("ID"); + + b.Property("PermissionId") + .HasColumnType("int(11)") + .HasComment("权限 "); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "PermissionId" }, "Permissionld"); + + b.HasIndex(new[] { "RoleId" }, "Roleld"); + + b.ToTable("permissionarole", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("角色描述 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("角色名称 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("roles", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("用户头像链接"); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("创建时间"); + + b.Property("IsDeleted") + .HasColumnType("tinyint(4)") + .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); + + b.Property("NickName") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户昵称"); + + b.Property("OnlineStatus") + .HasColumnType("tinyint(4)") + .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("Status") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(4)") + .HasDefaultValueSql("'1'") + .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("修改时间"); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("唯一用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID3"); + + b.HasIndex(new[] { "Username" }, "Username") + .IsUnique(); + + b.ToTable("users", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Admins") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("admins_ibfk_1"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.HasOne("IM_API.Models.Message", null) + .WithMany("Conversations") + .HasForeignKey("MessageId"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("Conversations") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("conversations_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Devices") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("devices_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.HasOne("IM_API.Models.Message", "Message") + .WithMany("Files") + .HasForeignKey("MessageId") + .IsRequired() + .HasConstraintName("files_ibfk_1"); + + b.Navigation("Message"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.HasOne("IM_API.Models.User", "FriendNavigation") + .WithMany("FriendFriendNavigations") + .HasForeignKey("FriendId") + .IsRequired() + .HasConstraintName("用户2id"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("FriendUsers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("用户id"); + + b.Navigation("FriendNavigation"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.HasOne("IM_API.Models.User", "RequestUserNavigation") + .WithMany("FriendRequestRequestUserNavigations") + .HasForeignKey("RequestUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "ResponseUserNavigation") + .WithMany("FriendRequestResponseUserNavigations") + .HasForeignKey("ResponseUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_2"); + + b.Navigation("RequestUserNavigation"); + + b.Navigation("ResponseUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.HasOne("IM_API.Models.User", "GroupMasterNavigation") + .WithMany("Groups") + .HasForeignKey("GroupMaster") + .IsRequired() + .HasConstraintName("groups_ibfk_1"); + + b.Navigation("GroupMasterNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupInvites") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_invite_ibfk_2"); + + b.HasOne("IM_API.Models.User", "InviteUserNavigation") + .WithMany("GroupInviteInviteUserNavigations") + .HasForeignKey("InviteUser") + .HasConstraintName("group_invite_ibfk_1"); + + b.HasOne("IM_API.Models.User", "InvitedUserNavigation") + .WithMany("GroupInviteInvitedUserNavigations") + .HasForeignKey("InvitedUser") + .HasConstraintName("group_invite_ibfk_3"); + + b.Navigation("Group"); + + b.Navigation("InviteUserNavigation"); + + b.Navigation("InvitedUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupMembers") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_member_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("GroupMembers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("group_member_ibfk_1"); + + b.Navigation("Group"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "GroupNavigation") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_2"); + + b.Navigation("Group"); + + b.Navigation("GroupNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("LoginLogs") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("login_log_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.HasOne("IM_API.Models.User", "SenderNavigation") + .WithMany("Messages") + .HasForeignKey("Sender") + .IsRequired() + .HasConstraintName("messages_ibfk_1"); + + b.Navigation("SenderNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Notifications") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("notifications_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.HasOne("IM_API.Models.Permission", "Permission") + .WithMany("Permissionaroles") + .HasForeignKey("PermissionId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_2"); + + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Permissionaroles") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_1"); + + b.Navigation("Permission"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Navigation("GroupInvites"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Navigation("Conversations"); + + b.Navigation("Files"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Navigation("Admins"); + + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Navigation("Conversations"); + + b.Navigation("Devices"); + + b.Navigation("FriendFriendNavigations"); + + b.Navigation("FriendRequestRequestUserNavigations"); + + b.Navigation("FriendRequestResponseUserNavigations"); + + b.Navigation("FriendUsers"); + + b.Navigation("GroupInviteInviteUserNavigations"); + + b.Navigation("GroupInviteInvitedUserNavigations"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + + b.Navigation("Groups"); + + b.Navigation("LoginLogs"); + + b.Navigation("Messages"); + + b.Navigation("Notifications"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/backend/IM_API/Migrations/20260208124430_update-group.cs b/backend/IM_API/Migrations/20260208124430_update-group.cs index 337e334..1e830d1 100644 --- a/backend/IM_API/Migrations/20260208124430_update-group.cs +++ b/backend/IM_API/Migrations/20260208124430_update-group.cs @@ -1,65 +1,65 @@ -using System; -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace IM_API.Migrations -{ - /// - public partial class updategroup : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.AddColumn( - name: "LastMessage", - table: "groups", - type: "longtext", - nullable: false, - collation: "utf8mb4_general_ci") - .Annotation("MySql:CharSet", "utf8mb4"); - - migrationBuilder.AddColumn( - name: "LastSenderName", - table: "groups", - type: "longtext", - nullable: false, - collation: "utf8mb4_general_ci") - .Annotation("MySql:CharSet", "utf8mb4"); - - migrationBuilder.AddColumn( - name: "LastUpdateTime", - table: "groups", - type: "datetime(6)", - nullable: false, - defaultValue: new DateTimeOffset(new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0))); - - migrationBuilder.AddColumn( - name: "MaxSequenceId", - table: "groups", - type: "bigint", - nullable: false, - defaultValue: 0L); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropColumn( - name: "LastMessage", - table: "groups"); - - migrationBuilder.DropColumn( - name: "LastSenderName", - table: "groups"); - - migrationBuilder.DropColumn( - name: "LastUpdateTime", - table: "groups"); - - migrationBuilder.DropColumn( - name: "MaxSequenceId", - table: "groups"); - } - } -} +using System; +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace IM_API.Migrations +{ + /// + public partial class updategroup : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "LastMessage", + table: "groups", + type: "longtext", + nullable: false, + collation: "utf8mb4_general_ci") + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.AddColumn( + name: "LastSenderName", + table: "groups", + type: "longtext", + nullable: false, + collation: "utf8mb4_general_ci") + .Annotation("MySql:CharSet", "utf8mb4"); + + migrationBuilder.AddColumn( + name: "LastUpdateTime", + table: "groups", + type: "datetime(6)", + nullable: false, + defaultValue: new DateTimeOffset(new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 0, 0, 0, 0))); + + migrationBuilder.AddColumn( + name: "MaxSequenceId", + table: "groups", + type: "bigint", + nullable: false, + defaultValue: 0L); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "LastMessage", + table: "groups"); + + migrationBuilder.DropColumn( + name: "LastSenderName", + table: "groups"); + + migrationBuilder.DropColumn( + name: "LastUpdateTime", + table: "groups"); + + migrationBuilder.DropColumn( + name: "MaxSequenceId", + table: "groups"); + } + } +} diff --git a/backend/IM_API/Migrations/20260211065853_update-group-groupid-userid.Designer.cs b/backend/IM_API/Migrations/20260211065853_update-group-groupid-userid.Designer.cs index 866d3ee..109b170 100644 --- a/backend/IM_API/Migrations/20260211065853_update-group-groupid-userid.Designer.cs +++ b/backend/IM_API/Migrations/20260211065853_update-group-groupid-userid.Designer.cs @@ -1,1117 +1,1117 @@ -// -using System; -using IM_API.Models; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Metadata; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace IM_API.Migrations -{ - [DbContext(typeof(ImContext))] - [Migration("20260211065853_update-group-groupid-userid")] - partial class updategroupgroupiduserid - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .UseCollation("latin1_swedish_ci") - .HasAnnotation("ProductVersion", "8.0.21") - .HasAnnotation("Relational:MaxIdentifierLength", 64); - - MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); - MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("状态(0:正常,2:封禁) "); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("更新时间 "); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RoleId" }, "RoleId"); - - b.ToTable("admins", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("int(11)"); - - b.Property("LastMessage") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("最后一条最新消息"); - - b.Property("LastMessageTime") - .HasColumnType("datetime") - .HasComment("最后一条消息发送时间"); - - b.Property("LastReadSequenceId") - .HasColumnType("int(11)") - .HasColumnName("lastReadMessageId") - .HasComment("最后一条未读消息ID "); - - b.Property("MessageId") - .HasColumnType("int(11)"); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.Property("TargetId") - .HasColumnType("int(11)") - .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); - - b.Property("UnreadCount") - .HasColumnType("int(11)") - .HasComment("未读消息数 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("MessageId"); - - b.HasIndex(new[] { "LastReadSequenceId" }, "LastReadSequenceId"); - - b.HasIndex(new[] { "UserId" }, "Userid"); - - b.ToTable("conversations", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); - - b.Property("LastLogin") - .HasColumnType("datetime") - .HasComment("最后一次登录 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("设备所属用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid") - .HasDatabaseName("Userid1"); - - b.ToTable("devices", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("FileType") - .IsRequired() - .HasMaxLength(10) - .HasColumnType("varchar(10)") - .HasComment("文件类型 "); - - b.Property("MessageId") - .HasColumnType("int(11)") - .HasComment("关联消息ID "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("文件名 "); - - b.Property("Size") - .HasColumnType("int(11)") - .HasComment("文件大小(单位:KB) "); - - b.Property("Url") - .IsRequired() - .HasMaxLength(100) - .HasColumnType("varchar(100)") - .HasColumnName("URL") - .HasComment("文件储存URL "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "MessageId" }, "Messageld"); - - b.ToTable("files", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("好友头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("好友关系创建时间"); - - b.Property("FriendId") - .HasColumnType("int(11)") - .HasComment("用户2ID"); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("好友备注名"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户ID"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID"); - - b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); - - b.HasIndex(new[] { "FriendId" }, "用户2id"); - - b.ToTable("friends", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("申请时间 "); - - b.Property("Description") - .HasColumnType("text") - .HasComment("申请附言 "); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("备注"); - - b.Property("RequestUser") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.Property("ResponseUser") - .HasColumnType("int(11)") - .HasComment("被申请人 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RequestUser" }, "RequestUser"); - - b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); - - b.ToTable("friend_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("AllMembersBanned") - .HasColumnType("tinyint(4)") - .HasComment("全员禁言(0允许发言,2全员禁言)"); - - b.Property("Announcement") - .HasColumnType("text") - .HasComment("群公告"); - - b.Property("Auhority") - .HasColumnType("tinyint(4)") - .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); - - b.Property("Avatar") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("群头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("群聊创建时间"); - - b.Property("GroupMaster") - .HasColumnType("int(11)") - .HasComment("群主"); - - b.Property("LastMessage") - .IsRequired() - .HasColumnType("longtext"); - - b.Property("LastSenderName") - .IsRequired() - .HasColumnType("longtext"); - - b.Property("LastUpdateTime") - .HasColumnType("datetime(6)"); - - b.Property("MaxSequenceId") - .HasColumnType("bigint"); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("群聊名称"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("群聊状态\r\n(1:正常,2:封禁)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID1"); - - b.ToTable("groups", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("InviteUser") - .HasColumnType("int(11)") - .HasComment("邀请用户"); - - b.Property("InvitedUser") - .HasColumnType("int(11)") - .HasComment("被邀请用户"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId"); - - b.HasIndex(new[] { "InviteUser" }, "InviteUser"); - - b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); - - b.ToTable("group_invite", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("加入群聊时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("Role") - .HasColumnType("tinyint(4)") - .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户编号"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "Groupld"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID2"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld1"); - - b.ToTable("group_member", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("入群附言"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号\r\n"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("UserId"); - - b.HasIndex(new[] { "GroupId" }, "GroupId") - .HasDatabaseName("GroupId1"); - - b.ToTable("group_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(通Devices/DType) "); - - b.Property("Logined") - .HasColumnType("datetime") - .HasComment("登录时间 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("登录用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld2"); - - b.ToTable("login_log", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("tinyint(4)") - .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); - - b.Property("ClientMsgId") - .HasColumnType("char(36)"); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("消息内容 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("发送时间 "); - - b.Property("MsgType") - .HasColumnType("tinyint(4)") - .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); - - b.Property("Recipient") - .HasColumnType("int(11)") - .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); - - b.Property("Sender") - .HasColumnType("int(11)") - .HasComment("发送者 "); - - b.Property("SequenceId") - .HasColumnType("bigint"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("消息状态(0:已发送,1:已撤回) "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("SequenceId", "StreamKey") - .IsUnique(); - - b.HasIndex(new[] { "Sender" }, "Sender"); - - b.ToTable("messages", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("通知内容"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Ntype") - .HasColumnType("tinyint(4)") - .HasColumnName("NType") - .HasComment("通知类型(0:文本)"); - - b.Property("Title") - .IsRequired() - .HasMaxLength(40) - .HasColumnType("varchar(40)") - .HasComment("通知标题"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("接收人(为空为全体通知)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld3"); - - b.ToTable("notifications", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Code") - .HasColumnType("int(11)") - .HasComment("权限编码 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("权限名称 "); - - b.Property("Ptype") - .HasColumnType("int(11)") - .HasColumnName("PType") - .HasComment("权限类型(0:增,1:删,2:改,3:查) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("permissions", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.Property("Id") - .HasColumnType("int(11)") - .HasColumnName("ID"); - - b.Property("PermissionId") - .HasColumnType("int(11)") - .HasComment("权限 "); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "PermissionId" }, "Permissionld"); - - b.HasIndex(new[] { "RoleId" }, "Roleld"); - - b.ToTable("permissionarole", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("角色描述 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("角色名称 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("roles", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("用户头像链接"); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("创建时间"); - - b.Property("IsDeleted") - .HasColumnType("tinyint(4)") - .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); - - b.Property("NickName") - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户昵称"); - - b.Property("OnlineStatus") - .HasColumnType("tinyint(4)") - .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("Status") - .ValueGeneratedOnAdd() - .HasColumnType("tinyint(4)") - .HasDefaultValueSql("'1'") - .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("修改时间"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("唯一用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID3"); - - b.HasIndex(new[] { "Username" }, "Username") - .IsUnique(); - - b.ToTable("users", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Admins") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("admins_ibfk_1"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.HasOne("IM_API.Models.Message", null) - .WithMany("Conversations") - .HasForeignKey("MessageId"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("Conversations") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("conversations_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Devices") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("devices_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.HasOne("IM_API.Models.Message", "Message") - .WithMany("Files") - .HasForeignKey("MessageId") - .IsRequired() - .HasConstraintName("files_ibfk_1"); - - b.Navigation("Message"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.HasOne("IM_API.Models.User", "FriendNavigation") - .WithMany("FriendFriendNavigations") - .HasForeignKey("FriendId") - .IsRequired() - .HasConstraintName("用户2id"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("FriendUsers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("用户id"); - - b.Navigation("FriendNavigation"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.HasOne("IM_API.Models.User", "RequestUserNavigation") - .WithMany("FriendRequestRequestUserNavigations") - .HasForeignKey("RequestUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "ResponseUserNavigation") - .WithMany("FriendRequestResponseUserNavigations") - .HasForeignKey("ResponseUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_2"); - - b.Navigation("RequestUserNavigation"); - - b.Navigation("ResponseUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.HasOne("IM_API.Models.User", "GroupMasterNavigation") - .WithMany("Groups") - .HasForeignKey("GroupMaster") - .IsRequired() - .HasConstraintName("groups_ibfk_1"); - - b.Navigation("GroupMasterNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupInvites") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_invite_ibfk_2"); - - b.HasOne("IM_API.Models.User", "InviteUserNavigation") - .WithMany("GroupInviteInviteUserNavigations") - .HasForeignKey("InviteUser") - .HasConstraintName("group_invite_ibfk_1"); - - b.HasOne("IM_API.Models.User", "InvitedUserNavigation") - .WithMany("GroupInviteInvitedUserNavigations") - .HasForeignKey("InvitedUser") - .HasConstraintName("group_invite_ibfk_3"); - - b.Navigation("Group"); - - b.Navigation("InviteUserNavigation"); - - b.Navigation("InvitedUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupMembers") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_member_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("GroupMembers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("group_member_ibfk_1"); - - b.Navigation("Group"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("GroupRequests") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("group_request_ibfk_2"); - - b.Navigation("Group"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("LoginLogs") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("login_log_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.HasOne("IM_API.Models.User", "SenderNavigation") - .WithMany("Messages") - .HasForeignKey("Sender") - .IsRequired() - .HasConstraintName("messages_ibfk_1"); - - b.Navigation("SenderNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Notifications") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("notifications_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.HasOne("IM_API.Models.Permission", "Permission") - .WithMany("Permissionaroles") - .HasForeignKey("PermissionId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_2"); - - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Permissionaroles") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_1"); - - b.Navigation("Permission"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Navigation("GroupInvites"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Navigation("Conversations"); - - b.Navigation("Files"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Navigation("Admins"); - - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Navigation("Conversations"); - - b.Navigation("Devices"); - - b.Navigation("FriendFriendNavigations"); - - b.Navigation("FriendRequestRequestUserNavigations"); - - b.Navigation("FriendRequestResponseUserNavigations"); - - b.Navigation("FriendUsers"); - - b.Navigation("GroupInviteInviteUserNavigations"); - - b.Navigation("GroupInviteInvitedUserNavigations"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - - b.Navigation("Groups"); - - b.Navigation("LoginLogs"); - - b.Navigation("Messages"); - - b.Navigation("Notifications"); - }); -#pragma warning restore 612, 618 - } - } -} +// +using System; +using IM_API.Models; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace IM_API.Migrations +{ + [DbContext(typeof(ImContext))] + [Migration("20260211065853_update-group-groupid-userid")] + partial class updategroupgroupiduserid + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .UseCollation("latin1_swedish_ci") + .HasAnnotation("ProductVersion", "8.0.21") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); + MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("状态(0:正常,2:封禁) "); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("更新时间 "); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RoleId" }, "RoleId"); + + b.ToTable("admins", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("int(11)"); + + b.Property("LastMessage") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("最后一条最新消息"); + + b.Property("LastMessageTime") + .HasColumnType("datetime") + .HasComment("最后一条消息发送时间"); + + b.Property("LastReadSequenceId") + .HasColumnType("int(11)") + .HasColumnName("lastReadMessageId") + .HasComment("最后一条未读消息ID "); + + b.Property("MessageId") + .HasColumnType("int(11)"); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.Property("TargetId") + .HasColumnType("int(11)") + .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); + + b.Property("UnreadCount") + .HasColumnType("int(11)") + .HasComment("未读消息数 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("MessageId"); + + b.HasIndex(new[] { "LastReadSequenceId" }, "LastReadSequenceId"); + + b.HasIndex(new[] { "UserId" }, "Userid"); + + b.ToTable("conversations", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); + + b.Property("LastLogin") + .HasColumnType("datetime") + .HasComment("最后一次登录 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("设备所属用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid") + .HasDatabaseName("Userid1"); + + b.ToTable("devices", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("FileType") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("varchar(10)") + .HasComment("文件类型 "); + + b.Property("MessageId") + .HasColumnType("int(11)") + .HasComment("关联消息ID "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("文件名 "); + + b.Property("Size") + .HasColumnType("int(11)") + .HasComment("文件大小(单位:KB) "); + + b.Property("Url") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasColumnName("URL") + .HasComment("文件储存URL "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "MessageId" }, "Messageld"); + + b.ToTable("files", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("好友头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("好友关系创建时间"); + + b.Property("FriendId") + .HasColumnType("int(11)") + .HasComment("用户2ID"); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("好友备注名"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户ID"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID"); + + b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); + + b.HasIndex(new[] { "FriendId" }, "用户2id"); + + b.ToTable("friends", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("申请时间 "); + + b.Property("Description") + .HasColumnType("text") + .HasComment("申请附言 "); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("备注"); + + b.Property("RequestUser") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.Property("ResponseUser") + .HasColumnType("int(11)") + .HasComment("被申请人 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RequestUser" }, "RequestUser"); + + b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); + + b.ToTable("friend_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("AllMembersBanned") + .HasColumnType("tinyint(4)") + .HasComment("全员禁言(0允许发言,2全员禁言)"); + + b.Property("Announcement") + .HasColumnType("text") + .HasComment("群公告"); + + b.Property("Auhority") + .HasColumnType("tinyint(4)") + .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); + + b.Property("Avatar") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("群头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("群聊创建时间"); + + b.Property("GroupMaster") + .HasColumnType("int(11)") + .HasComment("群主"); + + b.Property("LastMessage") + .IsRequired() + .HasColumnType("longtext"); + + b.Property("LastSenderName") + .IsRequired() + .HasColumnType("longtext"); + + b.Property("LastUpdateTime") + .HasColumnType("datetime(6)"); + + b.Property("MaxSequenceId") + .HasColumnType("bigint"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("群聊名称"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("群聊状态\r\n(1:正常,2:封禁)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID1"); + + b.ToTable("groups", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("InviteUser") + .HasColumnType("int(11)") + .HasComment("邀请用户"); + + b.Property("InvitedUser") + .HasColumnType("int(11)") + .HasComment("被邀请用户"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId"); + + b.HasIndex(new[] { "InviteUser" }, "InviteUser"); + + b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); + + b.ToTable("group_invite", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("加入群聊时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("Role") + .HasColumnType("tinyint(4)") + .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户编号"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "Groupld"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID2"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld1"); + + b.ToTable("group_member", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("入群附言"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号\r\n"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("UserId"); + + b.HasIndex(new[] { "GroupId" }, "GroupId") + .HasDatabaseName("GroupId1"); + + b.ToTable("group_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(通Devices/DType) "); + + b.Property("Logined") + .HasColumnType("datetime") + .HasComment("登录时间 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("登录用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld2"); + + b.ToTable("login_log", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("tinyint(4)") + .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); + + b.Property("ClientMsgId") + .HasColumnType("char(36)"); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("消息内容 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("发送时间 "); + + b.Property("MsgType") + .HasColumnType("tinyint(4)") + .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); + + b.Property("Recipient") + .HasColumnType("int(11)") + .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); + + b.Property("Sender") + .HasColumnType("int(11)") + .HasComment("发送者 "); + + b.Property("SequenceId") + .HasColumnType("bigint"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("消息状态(0:已发送,1:已撤回) "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("SequenceId", "StreamKey") + .IsUnique(); + + b.HasIndex(new[] { "Sender" }, "Sender"); + + b.ToTable("messages", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("通知内容"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Ntype") + .HasColumnType("tinyint(4)") + .HasColumnName("NType") + .HasComment("通知类型(0:文本)"); + + b.Property("Title") + .IsRequired() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasComment("通知标题"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("接收人(为空为全体通知)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld3"); + + b.ToTable("notifications", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Code") + .HasColumnType("int(11)") + .HasComment("权限编码 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("权限名称 "); + + b.Property("Ptype") + .HasColumnType("int(11)") + .HasColumnName("PType") + .HasComment("权限类型(0:增,1:删,2:改,3:查) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("permissions", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.Property("Id") + .HasColumnType("int(11)") + .HasColumnName("ID"); + + b.Property("PermissionId") + .HasColumnType("int(11)") + .HasComment("权限 "); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "PermissionId" }, "Permissionld"); + + b.HasIndex(new[] { "RoleId" }, "Roleld"); + + b.ToTable("permissionarole", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("角色描述 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("角色名称 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("roles", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("用户头像链接"); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("创建时间"); + + b.Property("IsDeleted") + .HasColumnType("tinyint(4)") + .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); + + b.Property("NickName") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户昵称"); + + b.Property("OnlineStatus") + .HasColumnType("tinyint(4)") + .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("Status") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(4)") + .HasDefaultValueSql("'1'") + .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("修改时间"); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("唯一用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID3"); + + b.HasIndex(new[] { "Username" }, "Username") + .IsUnique(); + + b.ToTable("users", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Admins") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("admins_ibfk_1"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.HasOne("IM_API.Models.Message", null) + .WithMany("Conversations") + .HasForeignKey("MessageId"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("Conversations") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("conversations_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Devices") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("devices_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.HasOne("IM_API.Models.Message", "Message") + .WithMany("Files") + .HasForeignKey("MessageId") + .IsRequired() + .HasConstraintName("files_ibfk_1"); + + b.Navigation("Message"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.HasOne("IM_API.Models.User", "FriendNavigation") + .WithMany("FriendFriendNavigations") + .HasForeignKey("FriendId") + .IsRequired() + .HasConstraintName("用户2id"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("FriendUsers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("用户id"); + + b.Navigation("FriendNavigation"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.HasOne("IM_API.Models.User", "RequestUserNavigation") + .WithMany("FriendRequestRequestUserNavigations") + .HasForeignKey("RequestUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "ResponseUserNavigation") + .WithMany("FriendRequestResponseUserNavigations") + .HasForeignKey("ResponseUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_2"); + + b.Navigation("RequestUserNavigation"); + + b.Navigation("ResponseUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.HasOne("IM_API.Models.User", "GroupMasterNavigation") + .WithMany("Groups") + .HasForeignKey("GroupMaster") + .IsRequired() + .HasConstraintName("groups_ibfk_1"); + + b.Navigation("GroupMasterNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupInvites") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_invite_ibfk_2"); + + b.HasOne("IM_API.Models.User", "InviteUserNavigation") + .WithMany("GroupInviteInviteUserNavigations") + .HasForeignKey("InviteUser") + .HasConstraintName("group_invite_ibfk_1"); + + b.HasOne("IM_API.Models.User", "InvitedUserNavigation") + .WithMany("GroupInviteInvitedUserNavigations") + .HasForeignKey("InvitedUser") + .HasConstraintName("group_invite_ibfk_3"); + + b.Navigation("Group"); + + b.Navigation("InviteUserNavigation"); + + b.Navigation("InvitedUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupMembers") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_member_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("GroupMembers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("group_member_ibfk_1"); + + b.Navigation("Group"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("GroupRequests") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("group_request_ibfk_2"); + + b.Navigation("Group"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("LoginLogs") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("login_log_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.HasOne("IM_API.Models.User", "SenderNavigation") + .WithMany("Messages") + .HasForeignKey("Sender") + .IsRequired() + .HasConstraintName("messages_ibfk_1"); + + b.Navigation("SenderNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Notifications") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("notifications_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.HasOne("IM_API.Models.Permission", "Permission") + .WithMany("Permissionaroles") + .HasForeignKey("PermissionId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_2"); + + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Permissionaroles") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_1"); + + b.Navigation("Permission"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Navigation("GroupInvites"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Navigation("Conversations"); + + b.Navigation("Files"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Navigation("Admins"); + + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Navigation("Conversations"); + + b.Navigation("Devices"); + + b.Navigation("FriendFriendNavigations"); + + b.Navigation("FriendRequestRequestUserNavigations"); + + b.Navigation("FriendRequestResponseUserNavigations"); + + b.Navigation("FriendUsers"); + + b.Navigation("GroupInviteInviteUserNavigations"); + + b.Navigation("GroupInviteInvitedUserNavigations"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + + b.Navigation("Groups"); + + b.Navigation("LoginLogs"); + + b.Navigation("Messages"); + + b.Navigation("Notifications"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/backend/IM_API/Migrations/20260211065853_update-group-groupid-userid.cs b/backend/IM_API/Migrations/20260211065853_update-group-groupid-userid.cs index 018a446..cbdc606 100644 --- a/backend/IM_API/Migrations/20260211065853_update-group-groupid-userid.cs +++ b/backend/IM_API/Migrations/20260211065853_update-group-groupid-userid.cs @@ -1,49 +1,49 @@ -using Microsoft.EntityFrameworkCore.Migrations; - -#nullable disable - -namespace IM_API.Migrations -{ - /// - public partial class updategroupgroupiduserid : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropForeignKey( - name: "group_request_ibfk_2", - table: "group_request"); - - migrationBuilder.CreateIndex( - name: "IX_group_request_UserId", - table: "group_request", - column: "UserId"); - - migrationBuilder.AddForeignKey( - name: "group_request_ibfk_2", - table: "group_request", - column: "UserId", - principalTable: "users", - principalColumn: "ID"); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropForeignKey( - name: "group_request_ibfk_2", - table: "group_request"); - - migrationBuilder.DropIndex( - name: "IX_group_request_UserId", - table: "group_request"); - - migrationBuilder.AddForeignKey( - name: "group_request_ibfk_2", - table: "group_request", - column: "GroupId", - principalTable: "users", - principalColumn: "ID"); - } - } -} +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace IM_API.Migrations +{ + /// + public partial class updategroupgroupiduserid : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "group_request_ibfk_2", + table: "group_request"); + + migrationBuilder.CreateIndex( + name: "IX_group_request_UserId", + table: "group_request", + column: "UserId"); + + migrationBuilder.AddForeignKey( + name: "group_request_ibfk_2", + table: "group_request", + column: "UserId", + principalTable: "users", + principalColumn: "ID"); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropForeignKey( + name: "group_request_ibfk_2", + table: "group_request"); + + migrationBuilder.DropIndex( + name: "IX_group_request_UserId", + table: "group_request"); + + migrationBuilder.AddForeignKey( + name: "group_request_ibfk_2", + table: "group_request", + column: "GroupId", + principalTable: "users", + principalColumn: "ID"); + } + } +} diff --git a/backend/IM_API/Migrations/ImContextModelSnapshot.cs b/backend/IM_API/Migrations/ImContextModelSnapshot.cs index 8159df8..232195b 100644 --- a/backend/IM_API/Migrations/ImContextModelSnapshot.cs +++ b/backend/IM_API/Migrations/ImContextModelSnapshot.cs @@ -1,1114 +1,1114 @@ -// -using System; -using IM_API.Models; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Metadata; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; - -#nullable disable - -namespace IM_API.Migrations -{ - [DbContext(typeof(ImContext))] - partial class ImContextModelSnapshot : ModelSnapshot - { - protected override void BuildModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .UseCollation("latin1_swedish_ci") - .HasAnnotation("ProductVersion", "8.0.21") - .HasAnnotation("Relational:MaxIdentifierLength", 64); - - MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); - MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("状态(0:正常,2:封禁) "); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("更新时间 "); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RoleId" }, "RoleId"); - - b.ToTable("admins", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("int(11)"); - - b.Property("LastMessage") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("最后一条最新消息"); - - b.Property("LastMessageTime") - .HasColumnType("datetime") - .HasComment("最后一条消息发送时间"); - - b.Property("LastReadSequenceId") - .HasColumnType("int(11)") - .HasColumnName("lastReadMessageId") - .HasComment("最后一条未读消息ID "); - - b.Property("MessageId") - .HasColumnType("int(11)"); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.Property("TargetId") - .HasColumnType("int(11)") - .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); - - b.Property("UnreadCount") - .HasColumnType("int(11)") - .HasComment("未读消息数 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("MessageId"); - - b.HasIndex(new[] { "LastReadSequenceId" }, "LastReadSequenceId"); - - b.HasIndex(new[] { "UserId" }, "Userid"); - - b.ToTable("conversations", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); - - b.Property("LastLogin") - .HasColumnType("datetime") - .HasComment("最后一次登录 "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("设备所属用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userid") - .HasDatabaseName("Userid1"); - - b.ToTable("devices", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("FileType") - .IsRequired() - .HasMaxLength(10) - .HasColumnType("varchar(10)") - .HasComment("文件类型 "); - - b.Property("MessageId") - .HasColumnType("int(11)") - .HasComment("关联消息ID "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("文件名 "); - - b.Property("Size") - .HasColumnType("int(11)") - .HasComment("文件大小(单位:KB) "); - - b.Property("Url") - .IsRequired() - .HasMaxLength(100) - .HasColumnType("varchar(100)") - .HasColumnName("URL") - .HasComment("文件储存URL "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "MessageId" }, "Messageld"); - - b.ToTable("files", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("好友头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("好友关系创建时间"); - - b.Property("FriendId") - .HasColumnType("int(11)") - .HasComment("用户2ID"); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("好友备注名"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户ID"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID"); - - b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); - - b.HasIndex(new[] { "FriendId" }, "用户2id"); - - b.ToTable("friends", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("申请时间 "); - - b.Property("Description") - .HasColumnType("text") - .HasComment("申请附言 "); - - b.Property("RemarkName") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("备注"); - - b.Property("RequestUser") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.Property("ResponseUser") - .HasColumnType("int(11)") - .HasComment("被申请人 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "RequestUser" }, "RequestUser"); - - b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); - - b.ToTable("friend_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("AllMembersBanned") - .HasColumnType("tinyint(4)") - .HasComment("全员禁言(0允许发言,2全员禁言)"); - - b.Property("Announcement") - .HasColumnType("text") - .HasComment("群公告"); - - b.Property("Auhority") - .HasColumnType("tinyint(4)") - .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); - - b.Property("Avatar") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("群头像"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("群聊创建时间"); - - b.Property("GroupMaster") - .HasColumnType("int(11)") - .HasComment("群主"); - - b.Property("LastMessage") - .IsRequired() - .HasColumnType("longtext"); - - b.Property("LastSenderName") - .IsRequired() - .HasColumnType("longtext"); - - b.Property("LastUpdateTime") - .HasColumnType("datetime(6)"); - - b.Property("MaxSequenceId") - .HasColumnType("bigint"); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("群聊名称"); - - b.Property("Status") - .HasColumnType("tinyint(4)") - .HasComment("群聊状态\r\n(1:正常,2:封禁)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID1"); - - b.ToTable("groups", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("InviteUser") - .HasColumnType("int(11)") - .HasComment("邀请用户"); - - b.Property("InvitedUser") - .HasColumnType("int(11)") - .HasComment("被邀请用户"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "GroupId"); - - b.HasIndex(new[] { "InviteUser" }, "InviteUser"); - - b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); - - b.ToTable("group_invite", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("加入群聊时间"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号"); - - b.Property("Role") - .HasColumnType("tinyint(4)") - .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("用户编号"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "GroupId" }, "Groupld"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID2"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld1"); - - b.ToTable("group_member", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("入群附言"); - - b.Property("GroupId") - .HasColumnType("int(11)") - .HasComment("群聊编号\r\n"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("申请人 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("UserId"); - - b.HasIndex(new[] { "GroupId" }, "GroupId") - .HasDatabaseName("GroupId1"); - - b.ToTable("group_request", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Dtype") - .HasColumnType("tinyint(4)") - .HasColumnName("DType") - .HasComment("设备类型(通Devices/DType) "); - - b.Property("Logined") - .HasColumnType("datetime") - .HasComment("登录时间 "); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("登录用户 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld2"); - - b.ToTable("login_log", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("ChatType") - .HasColumnType("tinyint(4)") - .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); - - b.Property("ClientMsgId") - .HasColumnType("char(36)"); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("消息内容 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("发送时间 "); - - b.Property("MsgType") - .HasColumnType("tinyint(4)") - .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); - - b.Property("Recipient") - .HasColumnType("int(11)") - .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); - - b.Property("Sender") - .HasColumnType("int(11)") - .HasComment("发送者 "); - - b.Property("SequenceId") - .HasColumnType("bigint"); - - b.Property("State") - .HasColumnType("tinyint(4)") - .HasComment("消息状态(0:已发送,1:已撤回) "); - - b.Property("StreamKey") - .IsRequired() - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("消息推送唯一标识符"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex("SequenceId", "StreamKey") - .IsUnique(); - - b.HasIndex(new[] { "Sender" }, "Sender"); - - b.ToTable("messages", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Content") - .IsRequired() - .HasColumnType("text") - .HasComment("通知内容"); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间"); - - b.Property("Ntype") - .HasColumnType("tinyint(4)") - .HasColumnName("NType") - .HasComment("通知类型(0:文本)"); - - b.Property("Title") - .IsRequired() - .HasMaxLength(40) - .HasColumnType("varchar(40)") - .HasComment("通知标题"); - - b.Property("UserId") - .HasColumnType("int(11)") - .HasComment("接收人(为空为全体通知)"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "UserId" }, "Userld") - .HasDatabaseName("Userld3"); - - b.ToTable("notifications", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Code") - .HasColumnType("int(11)") - .HasComment("权限编码 "); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("权限名称 "); - - b.Property("Ptype") - .HasColumnType("int(11)") - .HasColumnName("PType") - .HasComment("权限类型(0:增,1:删,2:改,3:查) "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("permissions", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.Property("Id") - .HasColumnType("int(11)") - .HasColumnName("ID"); - - b.Property("PermissionId") - .HasColumnType("int(11)") - .HasComment("权限 "); - - b.Property("RoleId") - .HasColumnType("int(11)") - .HasComment("角色 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "PermissionId" }, "Permissionld"); - - b.HasIndex(new[] { "RoleId" }, "Roleld"); - - b.ToTable("permissionarole", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Created") - .HasColumnType("datetime") - .HasComment("创建时间 "); - - b.Property("Description") - .IsRequired() - .HasColumnType("text") - .HasComment("角色描述 "); - - b.Property("Name") - .IsRequired() - .HasMaxLength(20) - .HasColumnType("varchar(20)") - .HasComment("角色名称 "); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.ToTable("roles", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("int(11)") - .HasColumnName("ID"); - - MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); - - b.Property("Avatar") - .HasMaxLength(255) - .HasColumnType("varchar(255)") - .HasComment("用户头像链接"); - - b.Property("Created") - .ValueGeneratedOnAdd() - .HasColumnType("datetime") - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("创建时间"); - - b.Property("IsDeleted") - .HasColumnType("tinyint(4)") - .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); - - b.Property("NickName") - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("用户昵称"); - - b.Property("OnlineStatus") - .HasColumnType("tinyint(4)") - .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); - - b.Property("Password") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("密码"); - - b.Property("Status") - .ValueGeneratedOnAdd() - .HasColumnType("tinyint(4)") - .HasDefaultValueSql("'1'") - .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); - - b.Property("Updated") - .HasColumnType("datetime") - .HasComment("修改时间"); - - b.Property("Username") - .IsRequired() - .HasMaxLength(50) - .HasColumnType("varchar(50)") - .HasComment("唯一用户名"); - - b.HasKey("Id") - .HasName("PRIMARY"); - - b.HasIndex(new[] { "Id" }, "ID") - .HasDatabaseName("ID3"); - - b.HasIndex(new[] { "Username" }, "Username") - .IsUnique(); - - b.ToTable("users", (string)null); - - MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); - MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); - }); - - modelBuilder.Entity("IM_API.Models.Admin", b => - { - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Admins") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("admins_ibfk_1"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Conversation", b => - { - b.HasOne("IM_API.Models.Message", null) - .WithMany("Conversations") - .HasForeignKey("MessageId"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("Conversations") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("conversations_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Device", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Devices") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("devices_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.File", b => - { - b.HasOne("IM_API.Models.Message", "Message") - .WithMany("Files") - .HasForeignKey("MessageId") - .IsRequired() - .HasConstraintName("files_ibfk_1"); - - b.Navigation("Message"); - }); - - modelBuilder.Entity("IM_API.Models.Friend", b => - { - b.HasOne("IM_API.Models.User", "FriendNavigation") - .WithMany("FriendFriendNavigations") - .HasForeignKey("FriendId") - .IsRequired() - .HasConstraintName("用户2id"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("FriendUsers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("用户id"); - - b.Navigation("FriendNavigation"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.FriendRequest", b => - { - b.HasOne("IM_API.Models.User", "RequestUserNavigation") - .WithMany("FriendRequestRequestUserNavigations") - .HasForeignKey("RequestUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "ResponseUserNavigation") - .WithMany("FriendRequestResponseUserNavigations") - .HasForeignKey("ResponseUser") - .IsRequired() - .HasConstraintName("friend_request_ibfk_2"); - - b.Navigation("RequestUserNavigation"); - - b.Navigation("ResponseUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.HasOne("IM_API.Models.User", "GroupMasterNavigation") - .WithMany("Groups") - .HasForeignKey("GroupMaster") - .IsRequired() - .HasConstraintName("groups_ibfk_1"); - - b.Navigation("GroupMasterNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupInvite", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupInvites") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_invite_ibfk_2"); - - b.HasOne("IM_API.Models.User", "InviteUserNavigation") - .WithMany("GroupInviteInviteUserNavigations") - .HasForeignKey("InviteUser") - .HasConstraintName("group_invite_ibfk_1"); - - b.HasOne("IM_API.Models.User", "InvitedUserNavigation") - .WithMany("GroupInviteInvitedUserNavigations") - .HasForeignKey("InvitedUser") - .HasConstraintName("group_invite_ibfk_3"); - - b.Navigation("Group"); - - b.Navigation("InviteUserNavigation"); - - b.Navigation("InvitedUserNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.GroupMember", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupMembers") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_member_ibfk_2"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("GroupMembers") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("group_member_ibfk_1"); - - b.Navigation("Group"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.GroupRequest", b => - { - b.HasOne("IM_API.Models.Group", "Group") - .WithMany("GroupRequests") - .HasForeignKey("GroupId") - .IsRequired() - .HasConstraintName("group_request_ibfk_1"); - - b.HasOne("IM_API.Models.User", "User") - .WithMany("GroupRequests") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("group_request_ibfk_2"); - - b.Navigation("Group"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.LoginLog", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("LoginLogs") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("login_log_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.HasOne("IM_API.Models.User", "SenderNavigation") - .WithMany("Messages") - .HasForeignKey("Sender") - .IsRequired() - .HasConstraintName("messages_ibfk_1"); - - b.Navigation("SenderNavigation"); - }); - - modelBuilder.Entity("IM_API.Models.Notification", b => - { - b.HasOne("IM_API.Models.User", "User") - .WithMany("Notifications") - .HasForeignKey("UserId") - .IsRequired() - .HasConstraintName("notifications_ibfk_1"); - - b.Navigation("User"); - }); - - modelBuilder.Entity("IM_API.Models.Permissionarole", b => - { - b.HasOne("IM_API.Models.Permission", "Permission") - .WithMany("Permissionaroles") - .HasForeignKey("PermissionId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_2"); - - b.HasOne("IM_API.Models.Role", "Role") - .WithMany("Permissionaroles") - .HasForeignKey("RoleId") - .IsRequired() - .HasConstraintName("permissionarole_ibfk_1"); - - b.Navigation("Permission"); - - b.Navigation("Role"); - }); - - modelBuilder.Entity("IM_API.Models.Group", b => - { - b.Navigation("GroupInvites"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - }); - - modelBuilder.Entity("IM_API.Models.Message", b => - { - b.Navigation("Conversations"); - - b.Navigation("Files"); - }); - - modelBuilder.Entity("IM_API.Models.Permission", b => - { - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.Role", b => - { - b.Navigation("Admins"); - - b.Navigation("Permissionaroles"); - }); - - modelBuilder.Entity("IM_API.Models.User", b => - { - b.Navigation("Conversations"); - - b.Navigation("Devices"); - - b.Navigation("FriendFriendNavigations"); - - b.Navigation("FriendRequestRequestUserNavigations"); - - b.Navigation("FriendRequestResponseUserNavigations"); - - b.Navigation("FriendUsers"); - - b.Navigation("GroupInviteInviteUserNavigations"); - - b.Navigation("GroupInviteInvitedUserNavigations"); - - b.Navigation("GroupMembers"); - - b.Navigation("GroupRequests"); - - b.Navigation("Groups"); - - b.Navigation("LoginLogs"); - - b.Navigation("Messages"); - - b.Navigation("Notifications"); - }); -#pragma warning restore 612, 618 - } - } -} +// +using System; +using IM_API.Models; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace IM_API.Migrations +{ + [DbContext(typeof(ImContext))] + partial class ImContextModelSnapshot : ModelSnapshot + { + protected override void BuildModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .UseCollation("latin1_swedish_ci") + .HasAnnotation("ProductVersion", "8.0.21") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + MySqlModelBuilderExtensions.HasCharSet(modelBuilder, "latin1"); + MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("状态(0:正常,2:封禁) "); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("更新时间 "); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RoleId" }, "RoleId"); + + b.ToTable("admins", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("int(11)"); + + b.Property("LastMessage") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("最后一条最新消息"); + + b.Property("LastMessageTime") + .HasColumnType("datetime") + .HasComment("最后一条消息发送时间"); + + b.Property("LastReadSequenceId") + .HasColumnType("int(11)") + .HasColumnName("lastReadMessageId") + .HasComment("最后一条未读消息ID "); + + b.Property("MessageId") + .HasColumnType("int(11)"); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.Property("TargetId") + .HasColumnType("int(11)") + .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) "); + + b.Property("UnreadCount") + .HasColumnType("int(11)") + .HasComment("未读消息数 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("MessageId"); + + b.HasIndex(new[] { "LastReadSequenceId" }, "LastReadSequenceId"); + + b.HasIndex(new[] { "UserId" }, "Userid"); + + b.ToTable("conversations", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)"); + + b.Property("LastLogin") + .HasColumnType("datetime") + .HasComment("最后一次登录 "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("设备所属用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userid") + .HasDatabaseName("Userid1"); + + b.ToTable("devices", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("FileType") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("varchar(10)") + .HasComment("文件类型 "); + + b.Property("MessageId") + .HasColumnType("int(11)") + .HasComment("关联消息ID "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("文件名 "); + + b.Property("Size") + .HasColumnType("int(11)") + .HasComment("文件大小(单位:KB) "); + + b.Property("Url") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("varchar(100)") + .HasColumnName("URL") + .HasComment("文件储存URL "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "MessageId" }, "Messageld"); + + b.ToTable("files", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("好友头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("好友关系创建时间"); + + b.Property("FriendId") + .HasColumnType("int(11)") + .HasComment("用户2ID"); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("好友备注名"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户ID"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID"); + + b.HasIndex(new[] { "UserId", "FriendId" }, "Userld"); + + b.HasIndex(new[] { "FriendId" }, "用户2id"); + + b.ToTable("friends", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("申请时间 "); + + b.Property("Description") + .HasColumnType("text") + .HasComment("申请附言 "); + + b.Property("RemarkName") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("备注"); + + b.Property("RequestUser") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.Property("ResponseUser") + .HasColumnType("int(11)") + .HasComment("被申请人 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "RequestUser" }, "RequestUser"); + + b.HasIndex(new[] { "ResponseUser" }, "ResponseUser"); + + b.ToTable("friend_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("AllMembersBanned") + .HasColumnType("tinyint(4)") + .HasComment("全员禁言(0允许发言,2全员禁言)"); + + b.Property("Announcement") + .HasColumnType("text") + .HasComment("群公告"); + + b.Property("Auhority") + .HasColumnType("tinyint(4)") + .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)"); + + b.Property("Avatar") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("群头像"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("群聊创建时间"); + + b.Property("GroupMaster") + .HasColumnType("int(11)") + .HasComment("群主"); + + b.Property("LastMessage") + .IsRequired() + .HasColumnType("longtext"); + + b.Property("LastSenderName") + .IsRequired() + .HasColumnType("longtext"); + + b.Property("LastUpdateTime") + .HasColumnType("datetime(6)"); + + b.Property("MaxSequenceId") + .HasColumnType("bigint"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("群聊名称"); + + b.Property("Status") + .HasColumnType("tinyint(4)") + .HasComment("群聊状态\r\n(1:正常,2:封禁)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupMaster" }, "GroupMaster"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID1"); + + b.ToTable("groups", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("InviteUser") + .HasColumnType("int(11)") + .HasComment("邀请用户"); + + b.Property("InvitedUser") + .HasColumnType("int(11)") + .HasComment("被邀请用户"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "GroupId"); + + b.HasIndex(new[] { "InviteUser" }, "InviteUser"); + + b.HasIndex(new[] { "InvitedUser" }, "InvitedUser"); + + b.ToTable("group_invite", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("加入群聊时间"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号"); + + b.Property("Role") + .HasColumnType("tinyint(4)") + .HasComment("成员角色(0:普通成员,1:管理员,2:群主)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("用户编号"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "GroupId" }, "Groupld"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID2"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld1"); + + b.ToTable("group_member", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("入群附言"); + + b.Property("GroupId") + .HasColumnType("int(11)") + .HasComment("群聊编号\r\n"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("申请人 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("UserId"); + + b.HasIndex(new[] { "GroupId" }, "GroupId") + .HasDatabaseName("GroupId1"); + + b.ToTable("group_request", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Dtype") + .HasColumnType("tinyint(4)") + .HasColumnName("DType") + .HasComment("设备类型(通Devices/DType) "); + + b.Property("Logined") + .HasColumnType("datetime") + .HasComment("登录时间 "); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) "); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("登录用户 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld2"); + + b.ToTable("login_log", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("ChatType") + .HasColumnType("tinyint(4)") + .HasComment("聊天类型\r\n(0:私聊,1:群聊)"); + + b.Property("ClientMsgId") + .HasColumnType("char(36)"); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("消息内容 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("发送时间 "); + + b.Property("MsgType") + .HasColumnType("tinyint(4)") + .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)"); + + b.Property("Recipient") + .HasColumnType("int(11)") + .HasComment("接收者(私聊为用户ID,群聊为群聊ID) "); + + b.Property("Sender") + .HasColumnType("int(11)") + .HasComment("发送者 "); + + b.Property("SequenceId") + .HasColumnType("bigint"); + + b.Property("State") + .HasColumnType("tinyint(4)") + .HasComment("消息状态(0:已发送,1:已撤回) "); + + b.Property("StreamKey") + .IsRequired() + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("消息推送唯一标识符"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex("SequenceId", "StreamKey") + .IsUnique(); + + b.HasIndex(new[] { "Sender" }, "Sender"); + + b.ToTable("messages", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Content") + .IsRequired() + .HasColumnType("text") + .HasComment("通知内容"); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间"); + + b.Property("Ntype") + .HasColumnType("tinyint(4)") + .HasColumnName("NType") + .HasComment("通知类型(0:文本)"); + + b.Property("Title") + .IsRequired() + .HasMaxLength(40) + .HasColumnType("varchar(40)") + .HasComment("通知标题"); + + b.Property("UserId") + .HasColumnType("int(11)") + .HasComment("接收人(为空为全体通知)"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "UserId" }, "Userld") + .HasDatabaseName("Userld3"); + + b.ToTable("notifications", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Code") + .HasColumnType("int(11)") + .HasComment("权限编码 "); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("权限名称 "); + + b.Property("Ptype") + .HasColumnType("int(11)") + .HasColumnName("PType") + .HasComment("权限类型(0:增,1:删,2:改,3:查) "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("permissions", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.Property("Id") + .HasColumnType("int(11)") + .HasColumnName("ID"); + + b.Property("PermissionId") + .HasColumnType("int(11)") + .HasComment("权限 "); + + b.Property("RoleId") + .HasColumnType("int(11)") + .HasComment("角色 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "PermissionId" }, "Permissionld"); + + b.HasIndex(new[] { "RoleId" }, "Roleld"); + + b.ToTable("permissionarole", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Created") + .HasColumnType("datetime") + .HasComment("创建时间 "); + + b.Property("Description") + .IsRequired() + .HasColumnType("text") + .HasComment("角色描述 "); + + b.Property("Name") + .IsRequired() + .HasMaxLength(20) + .HasColumnType("varchar(20)") + .HasComment("角色名称 "); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.ToTable("roles", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int(11)") + .HasColumnName("ID"); + + MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id")); + + b.Property("Avatar") + .HasMaxLength(255) + .HasColumnType("varchar(255)") + .HasComment("用户头像链接"); + + b.Property("Created") + .ValueGeneratedOnAdd() + .HasColumnType("datetime") + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("创建时间"); + + b.Property("IsDeleted") + .HasColumnType("tinyint(4)") + .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除"); + + b.Property("NickName") + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("用户昵称"); + + b.Property("OnlineStatus") + .HasColumnType("tinyint(4)") + .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线"); + + b.Property("Password") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("密码"); + + b.Property("Status") + .ValueGeneratedOnAdd() + .HasColumnType("tinyint(4)") + .HasDefaultValueSql("'1'") + .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)"); + + b.Property("Updated") + .HasColumnType("datetime") + .HasComment("修改时间"); + + b.Property("Username") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("varchar(50)") + .HasComment("唯一用户名"); + + b.HasKey("Id") + .HasName("PRIMARY"); + + b.HasIndex(new[] { "Id" }, "ID") + .HasDatabaseName("ID3"); + + b.HasIndex(new[] { "Username" }, "Username") + .IsUnique(); + + b.ToTable("users", (string)null); + + MySqlEntityTypeBuilderExtensions.HasCharSet(b, "utf8mb4"); + MySqlEntityTypeBuilderExtensions.UseCollation(b, "utf8mb4_general_ci"); + }); + + modelBuilder.Entity("IM_API.Models.Admin", b => + { + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Admins") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("admins_ibfk_1"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Conversation", b => + { + b.HasOne("IM_API.Models.Message", null) + .WithMany("Conversations") + .HasForeignKey("MessageId"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("Conversations") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("conversations_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Device", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Devices") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("devices_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.File", b => + { + b.HasOne("IM_API.Models.Message", "Message") + .WithMany("Files") + .HasForeignKey("MessageId") + .IsRequired() + .HasConstraintName("files_ibfk_1"); + + b.Navigation("Message"); + }); + + modelBuilder.Entity("IM_API.Models.Friend", b => + { + b.HasOne("IM_API.Models.User", "FriendNavigation") + .WithMany("FriendFriendNavigations") + .HasForeignKey("FriendId") + .IsRequired() + .HasConstraintName("用户2id"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("FriendUsers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("用户id"); + + b.Navigation("FriendNavigation"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.FriendRequest", b => + { + b.HasOne("IM_API.Models.User", "RequestUserNavigation") + .WithMany("FriendRequestRequestUserNavigations") + .HasForeignKey("RequestUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "ResponseUserNavigation") + .WithMany("FriendRequestResponseUserNavigations") + .HasForeignKey("ResponseUser") + .IsRequired() + .HasConstraintName("friend_request_ibfk_2"); + + b.Navigation("RequestUserNavigation"); + + b.Navigation("ResponseUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.HasOne("IM_API.Models.User", "GroupMasterNavigation") + .WithMany("Groups") + .HasForeignKey("GroupMaster") + .IsRequired() + .HasConstraintName("groups_ibfk_1"); + + b.Navigation("GroupMasterNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupInvite", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupInvites") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_invite_ibfk_2"); + + b.HasOne("IM_API.Models.User", "InviteUserNavigation") + .WithMany("GroupInviteInviteUserNavigations") + .HasForeignKey("InviteUser") + .HasConstraintName("group_invite_ibfk_1"); + + b.HasOne("IM_API.Models.User", "InvitedUserNavigation") + .WithMany("GroupInviteInvitedUserNavigations") + .HasForeignKey("InvitedUser") + .HasConstraintName("group_invite_ibfk_3"); + + b.Navigation("Group"); + + b.Navigation("InviteUserNavigation"); + + b.Navigation("InvitedUserNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.GroupMember", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupMembers") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_member_ibfk_2"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("GroupMembers") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("group_member_ibfk_1"); + + b.Navigation("Group"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.GroupRequest", b => + { + b.HasOne("IM_API.Models.Group", "Group") + .WithMany("GroupRequests") + .HasForeignKey("GroupId") + .IsRequired() + .HasConstraintName("group_request_ibfk_1"); + + b.HasOne("IM_API.Models.User", "User") + .WithMany("GroupRequests") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("group_request_ibfk_2"); + + b.Navigation("Group"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.LoginLog", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("LoginLogs") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("login_log_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.HasOne("IM_API.Models.User", "SenderNavigation") + .WithMany("Messages") + .HasForeignKey("Sender") + .IsRequired() + .HasConstraintName("messages_ibfk_1"); + + b.Navigation("SenderNavigation"); + }); + + modelBuilder.Entity("IM_API.Models.Notification", b => + { + b.HasOne("IM_API.Models.User", "User") + .WithMany("Notifications") + .HasForeignKey("UserId") + .IsRequired() + .HasConstraintName("notifications_ibfk_1"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("IM_API.Models.Permissionarole", b => + { + b.HasOne("IM_API.Models.Permission", "Permission") + .WithMany("Permissionaroles") + .HasForeignKey("PermissionId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_2"); + + b.HasOne("IM_API.Models.Role", "Role") + .WithMany("Permissionaroles") + .HasForeignKey("RoleId") + .IsRequired() + .HasConstraintName("permissionarole_ibfk_1"); + + b.Navigation("Permission"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("IM_API.Models.Group", b => + { + b.Navigation("GroupInvites"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + }); + + modelBuilder.Entity("IM_API.Models.Message", b => + { + b.Navigation("Conversations"); + + b.Navigation("Files"); + }); + + modelBuilder.Entity("IM_API.Models.Permission", b => + { + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.Role", b => + { + b.Navigation("Admins"); + + b.Navigation("Permissionaroles"); + }); + + modelBuilder.Entity("IM_API.Models.User", b => + { + b.Navigation("Conversations"); + + b.Navigation("Devices"); + + b.Navigation("FriendFriendNavigations"); + + b.Navigation("FriendRequestRequestUserNavigations"); + + b.Navigation("FriendRequestResponseUserNavigations"); + + b.Navigation("FriendUsers"); + + b.Navigation("GroupInviteInviteUserNavigations"); + + b.Navigation("GroupInviteInvitedUserNavigations"); + + b.Navigation("GroupMembers"); + + b.Navigation("GroupRequests"); + + b.Navigation("Groups"); + + b.Navigation("LoginLogs"); + + b.Navigation("Messages"); + + b.Navigation("Notifications"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/backend/IM_API/Models/Admin.cs b/backend/IM_API/Models/Admin.cs index 0da0856..6989c34 100644 --- a/backend/IM_API/Models/Admin.cs +++ b/backend/IM_API/Models/Admin.cs @@ -1,41 +1,41 @@ -using System; -using System.Collections.Generic; - -namespace IM_API.Models; - -public partial class Admin -{ - public int Id { get; set; } - - /// - /// 用户名 - /// - public string Username { get; set; } = null!; - - /// - /// 密码 - /// - public string Password { get; set; } = null!; - - /// - /// 角色 - /// - public int RoleId { get; set; } - - /// - /// 状态(0:正常,2:封禁) - /// - public sbyte State { get; set; } - - /// - /// 创建时间 - /// - public DateTimeOffset Created { get; set; } - - /// - /// 更新时间 - /// - public DateTimeOffset Updated { get; set; } - - public virtual Role Role { get; set; } = null!; -} +using System; +using System.Collections.Generic; + +namespace IM_API.Models; + +public partial class Admin +{ + public int Id { get; set; } + + /// + /// 用户名 + /// + public string Username { get; set; } = null!; + + /// + /// 密码 + /// + public string Password { get; set; } = null!; + + /// + /// 角色 + /// + public int RoleId { get; set; } + + /// + /// 状态(0:正常,2:封禁) + /// + public sbyte State { get; set; } + + /// + /// 创建时间 + /// + public DateTimeOffset Created { get; set; } + + /// + /// 更新时间 + /// + public DateTimeOffset Updated { get; set; } + + public virtual Role Role { get; set; } = null!; +} diff --git a/backend/IM_API/Models/AdminExt.cs b/backend/IM_API/Models/AdminExt.cs index 70b2a96..2917946 100644 --- a/backend/IM_API/Models/AdminExt.cs +++ b/backend/IM_API/Models/AdminExt.cs @@ -1,11 +1,11 @@ -namespace IM_API.Models -{ - public partial class Admin - { - public AdminState StateEnum - { - get => (AdminState)State; - set => State = (sbyte)value; - } - } -} +namespace IM_API.Models +{ + public partial class Admin + { + public AdminState StateEnum + { + get => (AdminState)State; + set => State = (sbyte)value; + } + } +} diff --git a/backend/IM_API/Models/AdminState.cs b/backend/IM_API/Models/AdminState.cs index ca160b9..94e407d 100644 --- a/backend/IM_API/Models/AdminState.cs +++ b/backend/IM_API/Models/AdminState.cs @@ -1,8 +1,8 @@ -namespace IM_API.Models -{ - public enum AdminState - { - Normal = 0, - Blocked = 2 - } -} +namespace IM_API.Models +{ + public enum AdminState + { + Normal = 0, + Blocked = 2 + } +} diff --git a/backend/IM_API/Models/ChatType.cs b/backend/IM_API/Models/ChatType.cs index 6a85a7e..fbfa45f 100644 --- a/backend/IM_API/Models/ChatType.cs +++ b/backend/IM_API/Models/ChatType.cs @@ -1,8 +1,8 @@ -namespace IM_API.Models -{ - public enum ChatType - { - PRIVATE = 0, - GROUP = 1 - } -} +namespace IM_API.Models +{ + public enum ChatType + { + PRIVATE = 0, + GROUP = 1 + } +} diff --git a/backend/IM_API/Models/Conversation.cs b/backend/IM_API/Models/Conversation.cs index eec14a6..ace5802 100644 --- a/backend/IM_API/Models/Conversation.cs +++ b/backend/IM_API/Models/Conversation.cs @@ -1,51 +1,51 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Models; - -public partial class Conversation -{ - public int Id { get; set; } - - /// - /// 用户 - /// - public int UserId { get; set; } - - /// - /// 对方ID(群聊为群聊ID,单聊为单聊ID) - /// - public int TargetId { get; set; } - - /// - /// 最后一条未读消息ID - /// - public long? LastReadSequenceId { get; set; } - - /// - /// 未读消息数 - /// - public int UnreadCount { get; set; } - - public ChatType ChatType { get; set; } - - /// - /// 消息推送唯一标识符 - /// - public string StreamKey { get; set; } = null!; - - /// - /// 最后一条最新消息 - /// - public string LastMessage { get; set; } = null!; - - /// - /// 最后一条消息发送时间 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset LastMessageTime { get; set; } - - - public virtual User User { get; set; } = null!; -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Models; + +public partial class Conversation +{ + public int Id { get; set; } + + /// + /// 用户 + /// + public int UserId { get; set; } + + /// + /// 对方ID(群聊为群聊ID,单聊为单聊ID) + /// + public int TargetId { get; set; } + + /// + /// 最后一条未读消息ID + /// + public long? LastReadSequenceId { get; set; } + + /// + /// 未读消息数 + /// + public int UnreadCount { get; set; } + + public ChatType ChatType { get; set; } + + /// + /// 消息推送唯一标识符 + /// + public string StreamKey { get; set; } = null!; + + /// + /// 最后一条最新消息 + /// + public string LastMessage { get; set; } = null!; + + /// + /// 最后一条消息发送时间 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset LastMessageTime { get; set; } + + + public virtual User User { get; set; } = null!; +} diff --git a/backend/IM_API/Models/ConversationExt.cs b/backend/IM_API/Models/ConversationExt.cs index 816e812..a38e4d1 100644 --- a/backend/IM_API/Models/ConversationExt.cs +++ b/backend/IM_API/Models/ConversationExt.cs @@ -1,18 +1,18 @@ -using IM_API.Dtos.Conversation; - -namespace IM_API.Models -{ - public partial class Conversation - { - public ChatType ChatTypeEnum { - get - { - return ChatType; - } - set - { - ChatType = value; - } - } - } -} +using IM_API.Dtos.Conversation; + +namespace IM_API.Models +{ + public partial class Conversation + { + public ChatType ChatTypeEnum { + get + { + return ChatType; + } + set + { + ChatType = value; + } + } + } +} diff --git a/backend/IM_API/Models/Device.cs b/backend/IM_API/Models/Device.cs index 4bfbbb8..a500ed7 100644 --- a/backend/IM_API/Models/Device.cs +++ b/backend/IM_API/Models/Device.cs @@ -1,29 +1,29 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Models; - -public partial class Device -{ - public int Id { get; set; } - - /// - /// 设备所属用户 - /// - public int UserId { get; set; } - - /// - /// 设备类型( - /// 0:Android,1:Ios,2:PC,3:Pad,4:未知) - /// - public sbyte Dtype { get; set; } - - /// - /// 最后一次登录 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset LastLogin { get; set; } - - public virtual User User { get; set; } = null!; -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Models; + +public partial class Device +{ + public int Id { get; set; } + + /// + /// 设备所属用户 + /// + public int UserId { get; set; } + + /// + /// 设备类型( + /// 0:Android,1:Ios,2:PC,3:Pad,4:未知) + /// + public sbyte Dtype { get; set; } + + /// + /// 最后一次登录 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset LastLogin { get; set; } + + public virtual User User { get; set; } = null!; +} diff --git a/backend/IM_API/Models/DeviceDtype.cs b/backend/IM_API/Models/DeviceDtype.cs index 117a96c..5dcfb7e 100644 --- a/backend/IM_API/Models/DeviceDtype.cs +++ b/backend/IM_API/Models/DeviceDtype.cs @@ -1,26 +1,26 @@ -namespace IM_API.Models -{ - /// - /// 设备类型枚举 - /// - public enum DeviceDtype - { - /// - /// 安卓端 - /// - ANDROID = 0, - /// - /// IOS端 - /// - IOS = 1, - /// - /// PC - /// - PC = 2, - PAD = 3, - /// - /// 未知端 - /// - OTHER = 4 - } -} +namespace IM_API.Models +{ + /// + /// 设备类型枚举 + /// + public enum DeviceDtype + { + /// + /// 安卓端 + /// + ANDROID = 0, + /// + /// IOS端 + /// + IOS = 1, + /// + /// PC + /// + PC = 2, + PAD = 3, + /// + /// 未知端 + /// + OTHER = 4 + } +} diff --git a/backend/IM_API/Models/DeviceExt.cs b/backend/IM_API/Models/DeviceExt.cs index 162b007..7f08ced 100644 --- a/backend/IM_API/Models/DeviceExt.cs +++ b/backend/IM_API/Models/DeviceExt.cs @@ -1,11 +1,11 @@ -namespace IM_API.Models -{ - public partial class Device - { - public DeviceDtype DtypeEnum - { - get => (DeviceDtype)Dtype; - set => Dtype = (sbyte)value; - } - } -} +namespace IM_API.Models +{ + public partial class Device + { + public DeviceDtype DtypeEnum + { + get => (DeviceDtype)Dtype; + set => Dtype = (sbyte)value; + } + } +} diff --git a/backend/IM_API/Models/File.cs b/backend/IM_API/Models/File.cs index 5acf177..31de38e 100644 --- a/backend/IM_API/Models/File.cs +++ b/backend/IM_API/Models/File.cs @@ -1,43 +1,43 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Models; - -public partial class File -{ - public int Id { get; set; } - - /// - /// 文件名 - /// - public string Name { get; set; } = null!; - - /// - /// 文件储存URL - /// - public string Url { get; set; } = null!; - - /// - /// 文件大小(单位:KB) - /// - public int Size { get; set; } - - /// - /// 文件类型 - /// - public string FileType { get; set; } = null!; - - /// - /// 关联消息ID - /// - public int MessageId { get; set; } - - /// - /// 创建时间 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset Created { get; set; } - - public virtual Message Message { get; set; } = null!; -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Models; + +public partial class File +{ + public int Id { get; set; } + + /// + /// 文件名 + /// + public string Name { get; set; } = null!; + + /// + /// 文件储存URL + /// + public string Url { get; set; } = null!; + + /// + /// 文件大小(单位:KB) + /// + public int Size { get; set; } + + /// + /// 文件类型 + /// + public string FileType { get; set; } = null!; + + /// + /// 关联消息ID + /// + public int MessageId { get; set; } + + /// + /// 创建时间 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset Created { get; set; } + + public virtual Message Message { get; set; } = null!; +} diff --git a/backend/IM_API/Models/Friend.cs b/backend/IM_API/Models/Friend.cs index 92fc208..7763caa 100644 --- a/backend/IM_API/Models/Friend.cs +++ b/backend/IM_API/Models/Friend.cs @@ -1,46 +1,46 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Models; - -public partial class Friend -{ - public int Id { get; set; } - - /// - /// 用户ID - /// - public int UserId { get; set; } - - /// - /// 用户2ID - /// - public int FriendId { get; set; } - - /// - /// 当前好友关系状态 - /// (0:待通过,1:已添加,2:已拒绝,3:已拉黑) - /// - public sbyte Status { get; set; } - - /// - /// 好友关系创建时间 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset Created { get; set; } - - /// - /// 好友备注名 - /// - public string RemarkName { get; set; } = null!; - - /// - /// 好友头像 - /// - public string? Avatar { get; set; } - - public virtual User FriendNavigation { get; set; } = null!; - - public virtual User User { get; set; } = null!; -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Models; + +public partial class Friend +{ + public int Id { get; set; } + + /// + /// 用户ID + /// + public int UserId { get; set; } + + /// + /// 用户2ID + /// + public int FriendId { get; set; } + + /// + /// 当前好友关系状态 + /// (0:待通过,1:已添加,2:已拒绝,3:已拉黑) + /// + public sbyte Status { get; set; } + + /// + /// 好友关系创建时间 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset Created { get; set; } + + /// + /// 好友备注名 + /// + public string RemarkName { get; set; } = null!; + + /// + /// 好友头像 + /// + public string? Avatar { get; set; } + + public virtual User FriendNavigation { get; set; } = null!; + + public virtual User User { get; set; } = null!; +} diff --git a/backend/IM_API/Models/FriendExt.cs b/backend/IM_API/Models/FriendExt.cs index cc9e250..f81bf0c 100644 --- a/backend/IM_API/Models/FriendExt.cs +++ b/backend/IM_API/Models/FriendExt.cs @@ -1,11 +1,11 @@ -namespace IM_API.Models -{ - public partial class Friend - { - public FriendStatus StatusEnum - { - get => (FriendStatus)Status; - set => Status = (sbyte)value; - } - } -} +namespace IM_API.Models +{ + public partial class Friend + { + public FriendStatus StatusEnum + { + get => (FriendStatus)Status; + set => Status = (sbyte)value; + } + } +} diff --git a/backend/IM_API/Models/FriendRequestExt.cs b/backend/IM_API/Models/FriendRequestExt.cs index 0deaddb..ea367db 100644 --- a/backend/IM_API/Models/FriendRequestExt.cs +++ b/backend/IM_API/Models/FriendRequestExt.cs @@ -1,11 +1,11 @@ -namespace IM_API.Models -{ - public partial class FriendRequest - { - public FriendRequestState StateEnum - { - get => (FriendRequestState)State; - set => State = (sbyte)value; - } - } -} +namespace IM_API.Models +{ + public partial class FriendRequest + { + public FriendRequestState StateEnum + { + get => (FriendRequestState)State; + set => State = (sbyte)value; + } + } +} diff --git a/backend/IM_API/Models/FriendRequestState.cs b/backend/IM_API/Models/FriendRequestState.cs index e9eb8d2..91e7e56 100644 --- a/backend/IM_API/Models/FriendRequestState.cs +++ b/backend/IM_API/Models/FriendRequestState.cs @@ -1,25 +1,25 @@ -namespace IM_API.Models -{ - /// - /// 好友请求状态 - /// - public enum FriendRequestState - { - /// - /// 待处理 - /// - Pending = 0, - /// - /// 已通过 - /// - Passed = 2, - /// - /// 已拒绝 - /// - Declined = 1, - /// - /// 拉黑 - /// - Blocked = 3 - } -} +namespace IM_API.Models +{ + /// + /// 好友请求状态 + /// + public enum FriendRequestState + { + /// + /// 待处理 + /// + Pending = 0, + /// + /// 已通过 + /// + Passed = 2, + /// + /// 已拒绝 + /// + Declined = 1, + /// + /// 拉黑 + /// + Blocked = 3 + } +} diff --git a/backend/IM_API/Models/FriendStatus.cs b/backend/IM_API/Models/FriendStatus.cs index eb7c049..b7cfaf6 100644 --- a/backend/IM_API/Models/FriendStatus.cs +++ b/backend/IM_API/Models/FriendStatus.cs @@ -1,25 +1,25 @@ -namespace IM_API.Models -{ - /// - /// 好友关系状态 - /// - public enum FriendStatus:SByte - { - /// - /// 待处理 - /// - Pending = 0, - /// - /// 已添加 - /// - Added = 1, - /// - /// 已拒绝 - /// - Declined = 2, - /// - /// 已拉黑 - /// - Blocked = 3 - } -} +namespace IM_API.Models +{ + /// + /// 好友关系状态 + /// + public enum FriendStatus:SByte + { + /// + /// 待处理 + /// + Pending = 0, + /// + /// 已添加 + /// + Added = 1, + /// + /// 已拒绝 + /// + Declined = 2, + /// + /// 已拉黑 + /// + Blocked = 3 + } +} diff --git a/backend/IM_API/Models/Friendrequest.cs b/backend/IM_API/Models/Friendrequest.cs index 410ee9d..e98e23b 100644 --- a/backend/IM_API/Models/Friendrequest.cs +++ b/backend/IM_API/Models/Friendrequest.cs @@ -1,45 +1,45 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Models; - -public partial class FriendRequest -{ - public int Id { get; set; } - - /// - /// 申请人 - /// - public int RequestUser { get; set; } - - /// - /// 被申请人 - /// - public int ResponseUser { get; set; } - - /// - /// 申请时间 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset Created { get; set; } - - /// - /// 申请附言 - /// - public string? Description { get; set; } - - /// - /// 申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) - /// - public sbyte State { get; set; } - - /// - /// 备注 - /// - public string RemarkName { get; set; } = null!; - - public virtual User RequestUserNavigation { get; set; } = null!; - - public virtual User ResponseUserNavigation { get; set; } = null!; -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Models; + +public partial class FriendRequest +{ + public int Id { get; set; } + + /// + /// 申请人 + /// + public int RequestUser { get; set; } + + /// + /// 被申请人 + /// + public int ResponseUser { get; set; } + + /// + /// 申请时间 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset Created { get; set; } + + /// + /// 申请附言 + /// + public string? Description { get; set; } + + /// + /// 申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) + /// + public sbyte State { get; set; } + + /// + /// 备注 + /// + public string RemarkName { get; set; } = null!; + + public virtual User RequestUserNavigation { get; set; } = null!; + + public virtual User ResponseUserNavigation { get; set; } = null!; +} diff --git a/backend/IM_API/Models/Group.cs b/backend/IM_API/Models/Group.cs index 8d06fee..b439250 100644 --- a/backend/IM_API/Models/Group.cs +++ b/backend/IM_API/Models/Group.cs @@ -1,66 +1,66 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Models; - -public partial class Group -{ - public int Id { get; set; } - - /// - /// 群聊名称 - /// - public string Name { get; set; } = null!; - - /// - /// 群主 - /// - public int GroupMaster { get; set; } - - /// - /// 群权限 - /// (0:需管理员同意,1:任意人可加群,2:不允许任何人加入) - /// - public sbyte Auhority { get; set; } - - /// - /// 全员禁言(0允许发言,2全员禁言) - /// - public sbyte AllMembersBanned { get; set; } - - /// - /// 群聊状态 - /// (1:正常,2:封禁) - /// - public sbyte Status { get; set; } - - /// - /// 群公告 - /// - public string? Announcement { get; set; } - - /// - /// 群聊创建时间 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset Created { get; set; } - - /// - /// 群头像 - /// - public string Avatar { get; set; } = null!; - public long MaxSequenceId { get; set; } = 0; - public string LastMessage { get; set; } = string.Empty; - public string LastSenderName { get; set; } = string.Empty; - public DateTimeOffset LastUpdateTime { get; set; } = DateTime.UtcNow; - - - public virtual ICollection GroupInvites { get; set; } = new List(); - - public virtual User GroupMasterNavigation { get; set; } = null!; - - public virtual ICollection GroupMembers { get; set; } = new List(); - - public virtual ICollection GroupRequests { get; set; } = new List(); -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Models; + +public partial class Group +{ + public int Id { get; set; } + + /// + /// 群聊名称 + /// + public string Name { get; set; } = null!; + + /// + /// 群主 + /// + public int GroupMaster { get; set; } + + /// + /// 群权限 + /// (0:需管理员同意,1:任意人可加群,2:不允许任何人加入) + /// + public sbyte Auhority { get; set; } + + /// + /// 全员禁言(0允许发言,2全员禁言) + /// + public sbyte AllMembersBanned { get; set; } + + /// + /// 群聊状态 + /// (1:正常,2:封禁) + /// + public sbyte Status { get; set; } + + /// + /// 群公告 + /// + public string? Announcement { get; set; } + + /// + /// 群聊创建时间 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset Created { get; set; } + + /// + /// 群头像 + /// + public string Avatar { get; set; } = null!; + public long MaxSequenceId { get; set; } = 0; + public string LastMessage { get; set; } = string.Empty; + public string LastSenderName { get; set; } = string.Empty; + public DateTimeOffset LastUpdateTime { get; set; } = DateTime.UtcNow; + + + public virtual ICollection GroupInvites { get; set; } = new List(); + + public virtual User GroupMasterNavigation { get; set; } = null!; + + public virtual ICollection GroupMembers { get; set; } = new List(); + + public virtual ICollection GroupRequests { get; set; } = new List(); +} diff --git a/backend/IM_API/Models/GroupAllMembersBanned.cs b/backend/IM_API/Models/GroupAllMembersBanned.cs index 10e253f..bc6ed66 100644 --- a/backend/IM_API/Models/GroupAllMembersBanned.cs +++ b/backend/IM_API/Models/GroupAllMembersBanned.cs @@ -1,14 +1,14 @@ -namespace IM_API.Models -{ - public enum GroupAllMembersBanned - { - /// - /// 可发言 - /// - ALLOWED = 0, - /// - /// 全员禁言 - /// - BANNED = 2 - } -} +namespace IM_API.Models +{ + public enum GroupAllMembersBanned + { + /// + /// 可发言 + /// + ALLOWED = 0, + /// + /// 全员禁言 + /// + BANNED = 2 + } +} diff --git a/backend/IM_API/Models/GroupAuhority.cs b/backend/IM_API/Models/GroupAuhority.cs index c7b70c0..254c48f 100644 --- a/backend/IM_API/Models/GroupAuhority.cs +++ b/backend/IM_API/Models/GroupAuhority.cs @@ -1,22 +1,22 @@ -namespace IM_API.Models -{ - /// - /// 群加入权限 - /// - public enum GroupAuhority - { - /// - /// 需管理员同意 - /// - REQUIRE_CONSENT = 0, - /// - /// 任何人可加入 - /// - ANYONE_CAN_JOIN = 1, - /// - /// 不允许加入 - /// - NOT_ALLOWED_TO_JOIN = 2 - - } -} +namespace IM_API.Models +{ + /// + /// 群加入权限 + /// + public enum GroupAuhority + { + /// + /// 需管理员同意 + /// + REQUIRE_CONSENT = 0, + /// + /// 任何人可加入 + /// + ANYONE_CAN_JOIN = 1, + /// + /// 不允许加入 + /// + NOT_ALLOWED_TO_JOIN = 2 + + } +} diff --git a/backend/IM_API/Models/GroupExt.cs b/backend/IM_API/Models/GroupExt.cs index d9e2610..221ff15 100644 --- a/backend/IM_API/Models/GroupExt.cs +++ b/backend/IM_API/Models/GroupExt.cs @@ -1,21 +1,21 @@ -namespace IM_API.Models -{ - public partial class Group - { - public GroupAuhority AuhorityEnum - { - get => (GroupAuhority)Auhority; - set => Auhority = (sbyte) value; - } - public GroupAllMembersBanned AllMembersBannedEnum - { - get => (GroupAllMembersBanned)AllMembersBanned; - set => AllMembersBanned = (sbyte)value; - } - public GroupStatus StatusEnum - { - get => (GroupStatus)Status; - set => Status = (sbyte)value; - } - } -} +namespace IM_API.Models +{ + public partial class Group + { + public GroupAuhority AuhorityEnum + { + get => (GroupAuhority)Auhority; + set => Auhority = (sbyte) value; + } + public GroupAllMembersBanned AllMembersBannedEnum + { + get => (GroupAllMembersBanned)AllMembersBanned; + set => AllMembersBanned = (sbyte)value; + } + public GroupStatus StatusEnum + { + get => (GroupStatus)Status; + set => Status = (sbyte)value; + } + } +} diff --git a/backend/IM_API/Models/GroupInviteExt.cs b/backend/IM_API/Models/GroupInviteExt.cs index 1202368..02d9166 100644 --- a/backend/IM_API/Models/GroupInviteExt.cs +++ b/backend/IM_API/Models/GroupInviteExt.cs @@ -1,11 +1,11 @@ -namespace IM_API.Models -{ - public partial class GroupInvite - { - public GroupInviteState StateEnum - { - get => (GroupInviteState)State; - set => State = (sbyte)value; - } - } -} +namespace IM_API.Models +{ + public partial class GroupInvite + { + public GroupInviteState StateEnum + { + get => (GroupInviteState)State; + set => State = (sbyte)value; + } + } +} diff --git a/backend/IM_API/Models/GroupInviteState.cs b/backend/IM_API/Models/GroupInviteState.cs index 0a69d35..bd3d7f8 100644 --- a/backend/IM_API/Models/GroupInviteState.cs +++ b/backend/IM_API/Models/GroupInviteState.cs @@ -1,17 +1,17 @@ -namespace IM_API.Models -{ - /// - /// 群邀请状态 - /// - public enum GroupInviteState - { - /// - /// 待处理 - /// - Pending = 0, - /// - /// 已同意 - /// - Passed = 1 - } -} +namespace IM_API.Models +{ + /// + /// 群邀请状态 + /// + public enum GroupInviteState + { + /// + /// 待处理 + /// + Pending = 0, + /// + /// 已同意 + /// + Passed = 1 + } +} diff --git a/backend/IM_API/Models/GroupMemberExt.cs b/backend/IM_API/Models/GroupMemberExt.cs index 5c47caa..f39d0f2 100644 --- a/backend/IM_API/Models/GroupMemberExt.cs +++ b/backend/IM_API/Models/GroupMemberExt.cs @@ -1,11 +1,11 @@ -namespace IM_API.Models -{ - public partial class GroupMember - { - public GroupMemberRole RoleEnum - { - get => (GroupMemberRole)Role; - set => Role = (sbyte)value; - } - } -} +namespace IM_API.Models +{ + public partial class GroupMember + { + public GroupMemberRole RoleEnum + { + get => (GroupMemberRole)Role; + set => Role = (sbyte)value; + } + } +} diff --git a/backend/IM_API/Models/GroupMemberRole.cs b/backend/IM_API/Models/GroupMemberRole.cs index 6129e77..fc1aeba 100644 --- a/backend/IM_API/Models/GroupMemberRole.cs +++ b/backend/IM_API/Models/GroupMemberRole.cs @@ -1,18 +1,18 @@ -namespace IM_API.Models -{ - public enum GroupMemberRole - { - /// - /// 普通成员 - /// - Normal = 0, - /// - /// 管理员 - /// - Administrator = 1, - /// - /// 群主 - /// - Master = 2 - } -} +namespace IM_API.Models +{ + public enum GroupMemberRole + { + /// + /// 普通成员 + /// + Normal = 0, + /// + /// 管理员 + /// + Administrator = 1, + /// + /// 群主 + /// + Master = 2 + } +} diff --git a/backend/IM_API/Models/GroupRequestExt.cs b/backend/IM_API/Models/GroupRequestExt.cs index be685ee..96b3cb0 100644 --- a/backend/IM_API/Models/GroupRequestExt.cs +++ b/backend/IM_API/Models/GroupRequestExt.cs @@ -1,11 +1,11 @@ -namespace IM_API.Models -{ - public partial class GroupRequest - { - public GroupRequestState StateEnum - { - get => (GroupRequestState)State; - set => State = (sbyte)value; - } - } -} +namespace IM_API.Models +{ + public partial class GroupRequest + { + public GroupRequestState StateEnum + { + get => (GroupRequestState)State; + set => State = (sbyte)value; + } + } +} diff --git a/backend/IM_API/Models/GroupRequestState.cs b/backend/IM_API/Models/GroupRequestState.cs index ccc0d94..977a3b5 100644 --- a/backend/IM_API/Models/GroupRequestState.cs +++ b/backend/IM_API/Models/GroupRequestState.cs @@ -1,18 +1,18 @@ -namespace IM_API.Models -{ - public enum GroupRequestState - { - /// - /// 待管理员处理 - /// - Pending = 0, - /// - /// 已拒绝 - /// - Declined = 1, - /// - /// 已同意 - /// - Passed = 2 - } -} +namespace IM_API.Models +{ + public enum GroupRequestState + { + /// + /// 待管理员处理 + /// + Pending = 0, + /// + /// 已拒绝 + /// + Declined = 1, + /// + /// 已同意 + /// + Passed = 2 + } +} diff --git a/backend/IM_API/Models/GroupStatus.cs b/backend/IM_API/Models/GroupStatus.cs index a2d331e..175fefd 100644 --- a/backend/IM_API/Models/GroupStatus.cs +++ b/backend/IM_API/Models/GroupStatus.cs @@ -1,14 +1,14 @@ -namespace IM_API.Models -{ - public enum GroupStatus - { - /// - /// 正常 - /// - Normal = 1, - /// - /// 封禁 - /// - Blocked = 2 - } -} +namespace IM_API.Models +{ + public enum GroupStatus + { + /// + /// 正常 + /// + Normal = 1, + /// + /// 封禁 + /// + Blocked = 2 + } +} diff --git a/backend/IM_API/Models/Groupinvite.cs b/backend/IM_API/Models/Groupinvite.cs index cca0ad9..f3f71d4 100644 --- a/backend/IM_API/Models/Groupinvite.cs +++ b/backend/IM_API/Models/Groupinvite.cs @@ -1,41 +1,41 @@ -using System; -using System.Collections.Generic; - -namespace IM_API.Models; - -public partial class GroupInvite -{ - public int Id { get; set; } - - /// - /// 群聊编号 - /// - public int GroupId { get; set; } - - /// - /// 被邀请用户 - /// - public int? InvitedUser { get; set; } - - /// - /// 邀请用户 - /// - public int? InviteUser { get; set; } - - /// - /// 当前状态(0:待被邀请人同意 - /// 1:被邀请人已同意) - /// - public sbyte? State { get; set; } - - /// - /// 创建时间 - /// - public DateTimeOffset? Created { get; set; } - - public virtual Group Group { get; set; } = null!; - - public virtual User? InviteUserNavigation { get; set; } - - public virtual User? InvitedUserNavigation { get; set; } -} +using System; +using System.Collections.Generic; + +namespace IM_API.Models; + +public partial class GroupInvite +{ + public int Id { get; set; } + + /// + /// 群聊编号 + /// + public int GroupId { get; set; } + + /// + /// 被邀请用户 + /// + public int? InvitedUser { get; set; } + + /// + /// 邀请用户 + /// + public int? InviteUser { get; set; } + + /// + /// 当前状态(0:待被邀请人同意 + /// 1:被邀请人已同意) + /// + public sbyte? State { get; set; } + + /// + /// 创建时间 + /// + public DateTimeOffset? Created { get; set; } + + public virtual Group Group { get; set; } = null!; + + public virtual User? InviteUserNavigation { get; set; } + + public virtual User? InvitedUserNavigation { get; set; } +} diff --git a/backend/IM_API/Models/Groupmember.cs b/backend/IM_API/Models/Groupmember.cs index f3add73..ae2e28f 100644 --- a/backend/IM_API/Models/Groupmember.cs +++ b/backend/IM_API/Models/Groupmember.cs @@ -1,35 +1,35 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Models; - -public partial class GroupMember -{ - public int Id { get; set; } - - /// - /// 用户编号 - /// - public int UserId { get; set; } - - /// - /// 群聊编号 - /// - public int GroupId { get; set; } - - /// - /// 成员角色(0:普通成员,1:管理员,2:群主) - /// - public sbyte Role { get; set; } - - /// - /// 加入群聊时间 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset Created { get; set; } - - public virtual Group Group { get; set; } = null!; - - public virtual User User { get; set; } = null!; -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Models; + +public partial class GroupMember +{ + public int Id { get; set; } + + /// + /// 用户编号 + /// + public int UserId { get; set; } + + /// + /// 群聊编号 + /// + public int GroupId { get; set; } + + /// + /// 成员角色(0:普通成员,1:管理员,2:群主) + /// + public sbyte Role { get; set; } + + /// + /// 加入群聊时间 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset Created { get; set; } + + public virtual Group Group { get; set; } = null!; + + public virtual User User { get; set; } = null!; +} diff --git a/backend/IM_API/Models/Grouprequest.cs b/backend/IM_API/Models/Grouprequest.cs index a372610..f781481 100644 --- a/backend/IM_API/Models/Grouprequest.cs +++ b/backend/IM_API/Models/Grouprequest.cs @@ -1,41 +1,41 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Models; - -public partial class GroupRequest -{ - public int Id { get; set; } - - /// - /// 群聊编号 - /// - /// - public int GroupId { get; set; } - - /// - /// 申请人 - /// - public int UserId { get; set; } - - /// - /// 申请状态(0:待管理员同意,1:已拒绝,2:已同意) - /// - public sbyte State { get; set; } - - /// - /// 入群附言 - /// - public string Description { get; set; } = null!; - - /// - /// 创建时间 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset Created { get; set; } - - public virtual Group Group { get; set; } = null!; - - public virtual User User { get; set; } = null!; -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Models; + +public partial class GroupRequest +{ + public int Id { get; set; } + + /// + /// 群聊编号 + /// + /// + public int GroupId { get; set; } + + /// + /// 申请人 + /// + public int UserId { get; set; } + + /// + /// 申请状态(0:待管理员同意,1:已拒绝,2:已同意) + /// + public sbyte State { get; set; } + + /// + /// 入群附言 + /// + public string Description { get; set; } = null!; + + /// + /// 创建时间 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset Created { get; set; } + + public virtual Group Group { get; set; } = null!; + + public virtual User User { get; set; } = null!; +} diff --git a/backend/IM_API/Models/ImContext.Custom.cs b/backend/IM_API/Models/ImContext.Custom.cs index d02529d..9f6673d 100644 --- a/backend/IM_API/Models/ImContext.Custom.cs +++ b/backend/IM_API/Models/ImContext.Custom.cs @@ -1,100 +1,100 @@ -using Microsoft.EntityFrameworkCore; - -namespace IM_API.Models -{ - public partial class ImContext - { - partial void OnModelCreatingPartial(ModelBuilder modelBuilder) - { - modelBuilder.Entity(entity => - { - entity.Ignore(e => e.StateEnum); - }); - - modelBuilder.Entity(entity => - { - entity.Ignore(e => e.OnlineStatusEnum); - entity.Ignore(e => e.StatusEnum); - entity.HasQueryFilter(e => e.IsDeleted == 0); - }); - modelBuilder.Entity(entity => - { - entity.Ignore(e => e.ChatTypeEnum); - }); - - modelBuilder.Entity(entity => - { - entity.Ignore(e => e.DtypeEnum); - }); - - modelBuilder.Entity(entity => - { - - }); - - modelBuilder.Entity(entity => - { - entity.Ignore(e => e.StatusEnum); - }); - - modelBuilder.Entity(entity => - { - entity.Ignore(e => e.StateEnum); - }); - - modelBuilder.Entity(entity => - { - entity.Ignore(e => e.StatusEnum); - entity.Ignore(e => e.AllMembersBannedEnum); - entity.Ignore(e => e.AuhorityEnum); - }); - - modelBuilder.Entity(entity => - { - entity.Ignore(e => e.StateEnum); - }); - - modelBuilder.Entity(entity => - { - entity.Ignore(e => e.RoleEnum); - }); - - modelBuilder.Entity(entity => - { - entity.Ignore(e => e.StateEnum); - }); - - modelBuilder.Entity(entity => - { - entity.Ignore(e => e.StateEnum); - }); - - modelBuilder.Entity(entity => - { - entity.Ignore(e => e.StateEnum); - entity.Ignore(e => e.MsgTypeEnum); - entity.Ignore(e => e.ChatTypeEnum); - }); - - modelBuilder.Entity(entity => - { - - }); - - modelBuilder.Entity(entity => - { - - }); - - modelBuilder.Entity(entity => - { - - }); - - modelBuilder.Entity(entity => - { - - }); - } - } -} +using Microsoft.EntityFrameworkCore; + +namespace IM_API.Models +{ + public partial class ImContext + { + partial void OnModelCreatingPartial(ModelBuilder modelBuilder) + { + modelBuilder.Entity(entity => + { + entity.Ignore(e => e.StateEnum); + }); + + modelBuilder.Entity(entity => + { + entity.Ignore(e => e.OnlineStatusEnum); + entity.Ignore(e => e.StatusEnum); + entity.HasQueryFilter(e => e.IsDeleted == 0); + }); + modelBuilder.Entity(entity => + { + entity.Ignore(e => e.ChatTypeEnum); + }); + + modelBuilder.Entity(entity => + { + entity.Ignore(e => e.DtypeEnum); + }); + + modelBuilder.Entity(entity => + { + + }); + + modelBuilder.Entity(entity => + { + entity.Ignore(e => e.StatusEnum); + }); + + modelBuilder.Entity(entity => + { + entity.Ignore(e => e.StateEnum); + }); + + modelBuilder.Entity(entity => + { + entity.Ignore(e => e.StatusEnum); + entity.Ignore(e => e.AllMembersBannedEnum); + entity.Ignore(e => e.AuhorityEnum); + }); + + modelBuilder.Entity(entity => + { + entity.Ignore(e => e.StateEnum); + }); + + modelBuilder.Entity(entity => + { + entity.Ignore(e => e.RoleEnum); + }); + + modelBuilder.Entity(entity => + { + entity.Ignore(e => e.StateEnum); + }); + + modelBuilder.Entity(entity => + { + entity.Ignore(e => e.StateEnum); + }); + + modelBuilder.Entity(entity => + { + entity.Ignore(e => e.StateEnum); + entity.Ignore(e => e.MsgTypeEnum); + entity.Ignore(e => e.ChatTypeEnum); + }); + + modelBuilder.Entity(entity => + { + + }); + + modelBuilder.Entity(entity => + { + + }); + + modelBuilder.Entity(entity => + { + + }); + + modelBuilder.Entity(entity => + { + + }); + } + } +} diff --git a/backend/IM_API/Models/ImContext.cs b/backend/IM_API/Models/ImContext.cs index e09154c..1bea25b 100644 --- a/backend/IM_API/Models/ImContext.cs +++ b/backend/IM_API/Models/ImContext.cs @@ -1,741 +1,741 @@ -using System; -using System.Collections.Generic; -using Microsoft.EntityFrameworkCore; - -namespace IM_API.Models; - -public partial class ImContext : DbContext -{ - public ImContext(DbContextOptions options) - : base(options) - { - } - - public virtual DbSet Admins { get; set; } - - public virtual DbSet Conversations { get; set; } - - public virtual DbSet Devices { get; set; } - - public virtual DbSet Files { get; set; } - - public virtual DbSet Friends { get; set; } - - public virtual DbSet FriendRequests { get; set; } - - public virtual DbSet Groups { get; set; } - - public virtual DbSet GroupInvites { get; set; } - - public virtual DbSet GroupMembers { get; set; } - - public virtual DbSet GroupRequests { get; set; } - - public virtual DbSet LoginLogs { get; set; } - - public virtual DbSet Messages { get; set; } - - public virtual DbSet Notifications { get; set; } - - public virtual DbSet Permissions { get; set; } - - public virtual DbSet Permissionaroles { get; set; } - - public virtual DbSet Roles { get; set; } - - public virtual DbSet Users { get; set; } - - protected override void OnModelCreating(ModelBuilder modelBuilder) - { - modelBuilder - .UseCollation("latin1_swedish_ci") - .HasCharSet("latin1"); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("admins") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.RoleId, "RoleId"); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.Created) - .HasComment("创建时间 ") - .HasColumnType("datetime"); - entity.Property(e => e.Password) - .HasMaxLength(50) - .HasComment("密码"); - entity.Property(e => e.RoleId) - .HasComment("角色") - .HasColumnType("int(11)"); - entity.Property(e => e.State) - .HasComment("状态(0:正常,2:封禁) ") - .HasColumnType("tinyint(4)"); - entity.Property(e => e.Updated) - .HasComment("更新时间 ") - .HasColumnType("datetime"); - entity.Property(e => e.Username) - .HasMaxLength(50) - .HasComment("用户名"); - - entity.HasOne(d => d.Role).WithMany(p => p.Admins) - .HasForeignKey(d => d.RoleId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("admins_ibfk_1"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("conversations") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.UserId, "Userid"); - - entity.HasIndex(e => e.LastReadSequenceId, "LastReadSequenceId"); - - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.ChatType).HasColumnType("int(11)"); - entity.Property(e => e.LastMessage) - .HasMaxLength(255) - .HasComment("最后一条最新消息"); - entity.Property(e => e.LastMessageTime) - .HasComment("最后一条消息发送时间") - .HasColumnType("datetime"); - entity.Property(e => e.LastReadSequenceId) - .HasComment("最后一条未读消息ID ") - .HasColumnType("int(11)") - .HasColumnName("lastReadMessageId"); - entity.Property(e => e.StreamKey) - .HasMaxLength(255) - .HasComment("消息推送唯一标识符"); - entity.Property(e => e.TargetId) - .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) ") - .HasColumnType("int(11)"); - entity.Property(e => e.UnreadCount) - .HasComment("未读消息数 ") - .HasColumnType("int(11)"); - entity.Property(e => e.UserId) - .HasComment("用户") - .HasColumnType("int(11)"); - - entity.HasOne(d => d.User).WithMany(p => p.Conversations) - .HasForeignKey(d => d.UserId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("conversations_ibfk_1"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("devices") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.UserId, "Userid"); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.Dtype) - .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)") - .HasColumnType("tinyint(4)") - .HasColumnName("DType"); - entity.Property(e => e.LastLogin) - .HasComment("最后一次登录 ") - .HasColumnType("datetime"); - entity.Property(e => e.UserId) - .HasComment("设备所属用户 ") - .HasColumnType("int(11)"); - - entity.HasOne(d => d.User).WithMany(p => p.Devices) - .HasForeignKey(d => d.UserId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("devices_ibfk_1"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("files") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.MessageId, "Messageld"); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.Created) - .HasComment("创建时间 ") - .HasColumnType("datetime"); - entity.Property(e => e.MessageId) - .HasComment("关联消息ID ") - .HasColumnType("int(11)"); - entity.Property(e => e.Name) - .HasMaxLength(50) - .HasComment("文件名 "); - entity.Property(e => e.Size) - .HasComment("文件大小(单位:KB) ") - .HasColumnType("int(11)"); - entity.Property(e => e.FileType) - .HasMaxLength(10) - .HasComment("文件类型 "); - entity.Property(e => e.Url) - .HasMaxLength(100) - .HasComment("文件储存URL ") - .HasColumnName("URL"); - - entity.HasOne(d => d.Message).WithMany(p => p.Files) - .HasForeignKey(d => d.MessageId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("files_ibfk_1"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("friends") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.Id, "ID"); - - entity.HasIndex(e => new { e.UserId, e.FriendId }, "Userld"); - - entity.HasIndex(e => e.FriendId, "用户2id"); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.Avatar) - .HasMaxLength(255) - .HasComment("好友头像"); - entity.Property(e => e.Created) - .HasComment("好友关系创建时间") - .HasColumnType("datetime"); - entity.Property(e => e.FriendId) - .HasComment("用户2ID") - .HasColumnType("int(11)"); - entity.Property(e => e.RemarkName) - .HasMaxLength(20) - .HasComment("好友备注名"); - entity.Property(e => e.Status) - .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)") - .HasColumnType("tinyint(4)"); - entity.Property(e => e.UserId) - .HasComment("用户ID") - .HasColumnType("int(11)"); - - entity.HasOne(d => d.FriendNavigation).WithMany(p => p.FriendFriendNavigations) - .HasForeignKey(d => d.FriendId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("用户2id"); - - entity.HasOne(d => d.User).WithMany(p => p.FriendUsers) - .HasForeignKey(d => d.UserId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("用户id"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("friend_request") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.RequestUser, "RequestUser"); - - entity.HasIndex(e => e.ResponseUser, "ResponseUser"); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.Created) - .HasComment("申请时间 ") - .HasColumnType("datetime"); - entity.Property(e => e.Description) - .HasComment("申请附言 ") - .HasColumnType("text"); - entity.Property(e => e.RemarkName) - .HasMaxLength(20) - .HasComment("备注"); - entity.Property(e => e.RequestUser) - .HasComment("申请人 ") - .HasColumnType("int(11)"); - entity.Property(e => e.ResponseUser) - .HasComment("被申请人 ") - .HasColumnType("int(11)"); - entity.Property(e => e.State) - .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) ") - .HasColumnType("tinyint(4)"); - - entity.HasOne(d => d.RequestUserNavigation).WithMany(p => p.FriendRequestRequestUserNavigations) - .HasForeignKey(d => d.RequestUser) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("friend_request_ibfk_1"); - - entity.HasOne(d => d.ResponseUserNavigation).WithMany(p => p.FriendRequestResponseUserNavigations) - .HasForeignKey(d => d.ResponseUser) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("friend_request_ibfk_2"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("groups") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.GroupMaster, "GroupMaster"); - - entity.HasIndex(e => e.Id, "ID"); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.AllMembersBanned) - .HasComment("全员禁言(0允许发言,2全员禁言)") - .HasColumnType("tinyint(4)"); - entity.Property(e => e.Announcement) - .HasComment("群公告") - .HasColumnType("text"); - entity.Property(e => e.Auhority) - .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)") - .HasColumnType("tinyint(4)"); - entity.Property(e => e.Avatar) - .HasMaxLength(255) - .HasComment("群头像"); - entity.Property(e => e.Created) - .HasComment("群聊创建时间") - .HasColumnType("datetime"); - entity.Property(e => e.GroupMaster) - .HasComment("群主") - .HasColumnType("int(11)"); - entity.Property(e => e.Name) - .HasMaxLength(20) - .HasComment("群聊名称"); - entity.Property(e => e.Status) - .HasComment("群聊状态\r\n(1:正常,2:封禁)") - .HasColumnType("tinyint(4)"); - - entity.HasOne(d => d.GroupMasterNavigation).WithMany(p => p.Groups) - .HasForeignKey(d => d.GroupMaster) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("groups_ibfk_1"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("group_invite") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.GroupId, "GroupId"); - - entity.HasIndex(e => e.InviteUser, "InviteUser"); - - entity.HasIndex(e => e.InvitedUser, "InvitedUser"); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.Created) - .HasComment("创建时间") - .HasColumnType("datetime"); - entity.Property(e => e.GroupId) - .HasComment("群聊编号") - .HasColumnType("int(11)"); - entity.Property(e => e.InviteUser) - .HasComment("邀请用户") - .HasColumnType("int(11)"); - entity.Property(e => e.InvitedUser) - .HasComment("被邀请用户") - .HasColumnType("int(11)"); - entity.Property(e => e.State) - .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)") - .HasColumnType("tinyint(4)"); - - entity.HasOne(d => d.Group).WithMany(p => p.GroupInvites) - .HasForeignKey(d => d.GroupId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("group_invite_ibfk_2"); - - entity.HasOne(d => d.InviteUserNavigation).WithMany(p => p.GroupInviteInviteUserNavigations) - .HasForeignKey(d => d.InviteUser) - .HasConstraintName("group_invite_ibfk_1"); - - entity.HasOne(d => d.InvitedUserNavigation).WithMany(p => p.GroupInviteInvitedUserNavigations) - .HasForeignKey(d => d.InvitedUser) - .HasConstraintName("group_invite_ibfk_3"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("group_member") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.GroupId, "Groupld"); - - entity.HasIndex(e => e.Id, "ID"); - - entity.HasIndex(e => e.UserId, "Userld"); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.Created) - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("加入群聊时间") - .HasColumnType("datetime"); - entity.Property(e => e.GroupId) - .HasComment("群聊编号") - .HasColumnType("int(11)"); - entity.Property(e => e.Role) - .HasComment("成员角色(0:普通成员,1:管理员,2:群主)") - .HasColumnType("tinyint(4)"); - entity.Property(e => e.UserId) - .HasComment("用户编号") - .HasColumnType("int(11)"); - - entity.HasOne(d => d.Group).WithMany(p => p.GroupMembers) - .HasForeignKey(d => d.GroupId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("group_member_ibfk_2"); - - entity.HasOne(d => d.User).WithMany(p => p.GroupMembers) - .HasForeignKey(d => d.UserId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("group_member_ibfk_1"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("group_request") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.GroupId, "GroupId"); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.Created) - .HasComment("创建时间") - .HasColumnType("datetime"); - entity.Property(e => e.Description) - .HasComment("入群附言") - .HasColumnType("text"); - entity.Property(e => e.GroupId) - .HasComment("群聊编号\r\n") - .HasColumnType("int(11)"); - entity.Property(e => e.State) - .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)") - .HasColumnType("tinyint(4)"); - entity.Property(e => e.UserId) - .HasComment("申请人 ") - .HasColumnType("int(11)"); - - entity.HasOne(d => d.Group).WithMany(p => p.GroupRequests) - .HasForeignKey(d => d.GroupId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("group_request_ibfk_1"); - - entity.HasOne(d => d.User).WithMany(p => p.GroupRequests) - .HasForeignKey(d => d.UserId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("group_request_ibfk_2"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("login_log") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.UserId, "Userld"); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.Dtype) - .HasComment("设备类型(通Devices/DType) ") - .HasColumnType("tinyint(4)") - .HasColumnName("DType"); - entity.Property(e => e.Logined) - .HasComment("登录时间 ") - .HasColumnType("datetime"); - entity.Property(e => e.State) - .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) ") - .HasColumnType("tinyint(4)"); - entity.Property(e => e.UserId) - .HasComment("登录用户 ") - .HasColumnType("int(11)"); - - entity.HasOne(d => d.User).WithMany(p => p.LoginLogs) - .HasForeignKey(d => d.UserId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("login_log_ibfk_1"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("messages") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.Sender, "Sender"); - - - //设置联合唯一索引 - entity.HasIndex(e => new { e.SequenceId, e.StreamKey }) - .IsUnique(); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.ChatType) - .HasComment("聊天类型\r\n(0:私聊,1:群聊)") - .HasColumnType("tinyint(4)"); - entity.Property(e => e.Content) - .HasComment("消息内容 ") - .HasColumnType("text"); - entity.Property(e => e.Created) - .HasComment("发送时间 ") - .HasColumnType("datetime"); - entity.Property(e => e.MsgType) - .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)") - .HasColumnType("tinyint(4)"); - entity.Property(e => e.Recipient) - .HasComment("接收者(私聊为用户ID,群聊为群聊ID) ") - .HasColumnType("int(11)"); - entity.Property(e => e.Sender) - .HasComment("发送者 ") - .HasColumnType("int(11)"); - entity.Property(e => e.State) - .HasComment("消息状态(0:已发送,1:已撤回) ") - .HasColumnType("tinyint(4)"); - entity.Property(e => e.StreamKey) - .HasMaxLength(255) - .HasComment("消息推送唯一标识符"); - - entity.HasOne(d => d.SenderNavigation).WithMany(p => p.Messages) - .HasForeignKey(d => d.Sender) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("messages_ibfk_1"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("notifications") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.UserId, "Userld"); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.Content) - .HasComment("通知内容") - .HasColumnType("text"); - entity.Property(e => e.Created) - .HasComment("创建时间") - .HasColumnType("datetime"); - entity.Property(e => e.Ntype) - .HasComment("通知类型(0:文本)") - .HasColumnType("tinyint(4)") - .HasColumnName("NType"); - entity.Property(e => e.Title) - .HasMaxLength(40) - .HasComment("通知标题"); - entity.Property(e => e.UserId) - .HasComment("接收人(为空为全体通知)") - .HasColumnType("int(11)"); - - entity.HasOne(d => d.User).WithMany(p => p.Notifications) - .HasForeignKey(d => d.UserId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("notifications_ibfk_1"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("permissions") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.Code) - .HasComment("权限编码 ") - .HasColumnType("int(11)"); - entity.Property(e => e.Created) - .HasComment("创建时间 ") - .HasColumnType("datetime"); - entity.Property(e => e.Name) - .HasMaxLength(50) - .HasComment("权限名称 "); - entity.Property(e => e.Ptype) - .HasComment("权限类型(0:增,1:删,2:改,3:查) ") - .HasColumnType("int(11)") - .HasColumnName("PType"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("permissionarole") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.PermissionId, "Permissionld"); - - entity.HasIndex(e => e.RoleId, "Roleld"); - - entity.Property(e => e.Id) - .ValueGeneratedNever() - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.PermissionId) - .HasComment("权限 ") - .HasColumnType("int(11)"); - entity.Property(e => e.RoleId) - .HasComment("角色 ") - .HasColumnType("int(11)"); - - entity.HasOne(d => d.Permission).WithMany(p => p.Permissionaroles) - .HasForeignKey(d => d.PermissionId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("permissionarole_ibfk_2"); - - entity.HasOne(d => d.Role).WithMany(p => p.Permissionaroles) - .HasForeignKey(d => d.RoleId) - .OnDelete(DeleteBehavior.ClientSetNull) - .HasConstraintName("permissionarole_ibfk_1"); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("roles") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.Created) - .HasComment("创建时间 ") - .HasColumnType("datetime"); - entity.Property(e => e.Description) - .HasComment("角色描述 ") - .HasColumnType("text"); - entity.Property(e => e.Name) - .HasMaxLength(20) - .HasComment("角色名称 "); - }); - - modelBuilder.Entity(entity => - { - entity.HasKey(e => e.Id).HasName("PRIMARY"); - - entity - .ToTable("users") - .HasCharSet("utf8mb4") - .UseCollation("utf8mb4_general_ci"); - - entity.HasIndex(e => e.Id, "ID"); - - entity.HasIndex(e => e.Username, "Username").IsUnique(); - - entity.Property(e => e.Id) - .HasColumnType("int(11)") - .HasColumnName("ID"); - entity.Property(e => e.Avatar) - .HasMaxLength(255) - .HasComment("用户头像链接"); - entity.Property(e => e.Created) - .HasDefaultValueSql("'1970-01-01 00:00:00'") - .HasComment("创建时间") - .HasColumnType("datetime"); - entity.Property(e => e.IsDeleted) - .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除") - .HasColumnType("tinyint(4)"); - entity.Property(e => e.NickName) - .HasMaxLength(50) - .HasComment("用户昵称"); - entity.Property(e => e.OnlineStatus) - .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线") - .HasColumnType("tinyint(4)"); - entity.Property(e => e.Password) - .HasMaxLength(50) - .HasComment("密码"); - entity.Property(e => e.Status) - .HasDefaultValueSql("'1'") - .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)") - .HasColumnType("tinyint(4)"); - entity.Property(e => e.Updated) - .HasComment("修改时间") - .HasColumnType("datetime"); - entity.Property(e => e.Username) - .HasMaxLength(50) - .HasComment("唯一用户名"); - }); - - OnModelCreatingPartial(modelBuilder); - } - - partial void OnModelCreatingPartial(ModelBuilder modelBuilder); -} +using System; +using System.Collections.Generic; +using Microsoft.EntityFrameworkCore; + +namespace IM_API.Models; + +public partial class ImContext : DbContext +{ + public ImContext(DbContextOptions options) + : base(options) + { + } + + public virtual DbSet Admins { get; set; } + + public virtual DbSet Conversations { get; set; } + + public virtual DbSet Devices { get; set; } + + public virtual DbSet Files { get; set; } + + public virtual DbSet Friends { get; set; } + + public virtual DbSet FriendRequests { get; set; } + + public virtual DbSet Groups { get; set; } + + public virtual DbSet GroupInvites { get; set; } + + public virtual DbSet GroupMembers { get; set; } + + public virtual DbSet GroupRequests { get; set; } + + public virtual DbSet LoginLogs { get; set; } + + public virtual DbSet Messages { get; set; } + + public virtual DbSet Notifications { get; set; } + + public virtual DbSet Permissions { get; set; } + + public virtual DbSet Permissionaroles { get; set; } + + public virtual DbSet Roles { get; set; } + + public virtual DbSet Users { get; set; } + + protected override void OnModelCreating(ModelBuilder modelBuilder) + { + modelBuilder + .UseCollation("latin1_swedish_ci") + .HasCharSet("latin1"); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("admins") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.RoleId, "RoleId"); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.Created) + .HasComment("创建时间 ") + .HasColumnType("datetime"); + entity.Property(e => e.Password) + .HasMaxLength(50) + .HasComment("密码"); + entity.Property(e => e.RoleId) + .HasComment("角色") + .HasColumnType("int(11)"); + entity.Property(e => e.State) + .HasComment("状态(0:正常,2:封禁) ") + .HasColumnType("tinyint(4)"); + entity.Property(e => e.Updated) + .HasComment("更新时间 ") + .HasColumnType("datetime"); + entity.Property(e => e.Username) + .HasMaxLength(50) + .HasComment("用户名"); + + entity.HasOne(d => d.Role).WithMany(p => p.Admins) + .HasForeignKey(d => d.RoleId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("admins_ibfk_1"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("conversations") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.UserId, "Userid"); + + entity.HasIndex(e => e.LastReadSequenceId, "LastReadSequenceId"); + + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.ChatType).HasColumnType("int(11)"); + entity.Property(e => e.LastMessage) + .HasMaxLength(255) + .HasComment("最后一条最新消息"); + entity.Property(e => e.LastMessageTime) + .HasComment("最后一条消息发送时间") + .HasColumnType("datetime"); + entity.Property(e => e.LastReadSequenceId) + .HasComment("最后一条未读消息ID ") + .HasColumnType("int(11)") + .HasColumnName("lastReadMessageId"); + entity.Property(e => e.StreamKey) + .HasMaxLength(255) + .HasComment("消息推送唯一标识符"); + entity.Property(e => e.TargetId) + .HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) ") + .HasColumnType("int(11)"); + entity.Property(e => e.UnreadCount) + .HasComment("未读消息数 ") + .HasColumnType("int(11)"); + entity.Property(e => e.UserId) + .HasComment("用户") + .HasColumnType("int(11)"); + + entity.HasOne(d => d.User).WithMany(p => p.Conversations) + .HasForeignKey(d => d.UserId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("conversations_ibfk_1"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("devices") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.UserId, "Userid"); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.Dtype) + .HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)") + .HasColumnType("tinyint(4)") + .HasColumnName("DType"); + entity.Property(e => e.LastLogin) + .HasComment("最后一次登录 ") + .HasColumnType("datetime"); + entity.Property(e => e.UserId) + .HasComment("设备所属用户 ") + .HasColumnType("int(11)"); + + entity.HasOne(d => d.User).WithMany(p => p.Devices) + .HasForeignKey(d => d.UserId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("devices_ibfk_1"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("files") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.MessageId, "Messageld"); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.Created) + .HasComment("创建时间 ") + .HasColumnType("datetime"); + entity.Property(e => e.MessageId) + .HasComment("关联消息ID ") + .HasColumnType("int(11)"); + entity.Property(e => e.Name) + .HasMaxLength(50) + .HasComment("文件名 "); + entity.Property(e => e.Size) + .HasComment("文件大小(单位:KB) ") + .HasColumnType("int(11)"); + entity.Property(e => e.FileType) + .HasMaxLength(10) + .HasComment("文件类型 "); + entity.Property(e => e.Url) + .HasMaxLength(100) + .HasComment("文件储存URL ") + .HasColumnName("URL"); + + entity.HasOne(d => d.Message).WithMany(p => p.Files) + .HasForeignKey(d => d.MessageId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("files_ibfk_1"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("friends") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.Id, "ID"); + + entity.HasIndex(e => new { e.UserId, e.FriendId }, "Userld"); + + entity.HasIndex(e => e.FriendId, "用户2id"); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.Avatar) + .HasMaxLength(255) + .HasComment("好友头像"); + entity.Property(e => e.Created) + .HasComment("好友关系创建时间") + .HasColumnType("datetime"); + entity.Property(e => e.FriendId) + .HasComment("用户2ID") + .HasColumnType("int(11)"); + entity.Property(e => e.RemarkName) + .HasMaxLength(20) + .HasComment("好友备注名"); + entity.Property(e => e.Status) + .HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)") + .HasColumnType("tinyint(4)"); + entity.Property(e => e.UserId) + .HasComment("用户ID") + .HasColumnType("int(11)"); + + entity.HasOne(d => d.FriendNavigation).WithMany(p => p.FriendFriendNavigations) + .HasForeignKey(d => d.FriendId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("用户2id"); + + entity.HasOne(d => d.User).WithMany(p => p.FriendUsers) + .HasForeignKey(d => d.UserId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("用户id"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("friend_request") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.RequestUser, "RequestUser"); + + entity.HasIndex(e => e.ResponseUser, "ResponseUser"); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.Created) + .HasComment("申请时间 ") + .HasColumnType("datetime"); + entity.Property(e => e.Description) + .HasComment("申请附言 ") + .HasColumnType("text"); + entity.Property(e => e.RemarkName) + .HasMaxLength(20) + .HasComment("备注"); + entity.Property(e => e.RequestUser) + .HasComment("申请人 ") + .HasColumnType("int(11)"); + entity.Property(e => e.ResponseUser) + .HasComment("被申请人 ") + .HasColumnType("int(11)"); + entity.Property(e => e.State) + .HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) ") + .HasColumnType("tinyint(4)"); + + entity.HasOne(d => d.RequestUserNavigation).WithMany(p => p.FriendRequestRequestUserNavigations) + .HasForeignKey(d => d.RequestUser) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("friend_request_ibfk_1"); + + entity.HasOne(d => d.ResponseUserNavigation).WithMany(p => p.FriendRequestResponseUserNavigations) + .HasForeignKey(d => d.ResponseUser) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("friend_request_ibfk_2"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("groups") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.GroupMaster, "GroupMaster"); + + entity.HasIndex(e => e.Id, "ID"); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.AllMembersBanned) + .HasComment("全员禁言(0允许发言,2全员禁言)") + .HasColumnType("tinyint(4)"); + entity.Property(e => e.Announcement) + .HasComment("群公告") + .HasColumnType("text"); + entity.Property(e => e.Auhority) + .HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)") + .HasColumnType("tinyint(4)"); + entity.Property(e => e.Avatar) + .HasMaxLength(255) + .HasComment("群头像"); + entity.Property(e => e.Created) + .HasComment("群聊创建时间") + .HasColumnType("datetime"); + entity.Property(e => e.GroupMaster) + .HasComment("群主") + .HasColumnType("int(11)"); + entity.Property(e => e.Name) + .HasMaxLength(20) + .HasComment("群聊名称"); + entity.Property(e => e.Status) + .HasComment("群聊状态\r\n(1:正常,2:封禁)") + .HasColumnType("tinyint(4)"); + + entity.HasOne(d => d.GroupMasterNavigation).WithMany(p => p.Groups) + .HasForeignKey(d => d.GroupMaster) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("groups_ibfk_1"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("group_invite") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.GroupId, "GroupId"); + + entity.HasIndex(e => e.InviteUser, "InviteUser"); + + entity.HasIndex(e => e.InvitedUser, "InvitedUser"); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.Created) + .HasComment("创建时间") + .HasColumnType("datetime"); + entity.Property(e => e.GroupId) + .HasComment("群聊编号") + .HasColumnType("int(11)"); + entity.Property(e => e.InviteUser) + .HasComment("邀请用户") + .HasColumnType("int(11)"); + entity.Property(e => e.InvitedUser) + .HasComment("被邀请用户") + .HasColumnType("int(11)"); + entity.Property(e => e.State) + .HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)") + .HasColumnType("tinyint(4)"); + + entity.HasOne(d => d.Group).WithMany(p => p.GroupInvites) + .HasForeignKey(d => d.GroupId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("group_invite_ibfk_2"); + + entity.HasOne(d => d.InviteUserNavigation).WithMany(p => p.GroupInviteInviteUserNavigations) + .HasForeignKey(d => d.InviteUser) + .HasConstraintName("group_invite_ibfk_1"); + + entity.HasOne(d => d.InvitedUserNavigation).WithMany(p => p.GroupInviteInvitedUserNavigations) + .HasForeignKey(d => d.InvitedUser) + .HasConstraintName("group_invite_ibfk_3"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("group_member") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.GroupId, "Groupld"); + + entity.HasIndex(e => e.Id, "ID"); + + entity.HasIndex(e => e.UserId, "Userld"); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.Created) + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("加入群聊时间") + .HasColumnType("datetime"); + entity.Property(e => e.GroupId) + .HasComment("群聊编号") + .HasColumnType("int(11)"); + entity.Property(e => e.Role) + .HasComment("成员角色(0:普通成员,1:管理员,2:群主)") + .HasColumnType("tinyint(4)"); + entity.Property(e => e.UserId) + .HasComment("用户编号") + .HasColumnType("int(11)"); + + entity.HasOne(d => d.Group).WithMany(p => p.GroupMembers) + .HasForeignKey(d => d.GroupId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("group_member_ibfk_2"); + + entity.HasOne(d => d.User).WithMany(p => p.GroupMembers) + .HasForeignKey(d => d.UserId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("group_member_ibfk_1"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("group_request") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.GroupId, "GroupId"); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.Created) + .HasComment("创建时间") + .HasColumnType("datetime"); + entity.Property(e => e.Description) + .HasComment("入群附言") + .HasColumnType("text"); + entity.Property(e => e.GroupId) + .HasComment("群聊编号\r\n") + .HasColumnType("int(11)"); + entity.Property(e => e.State) + .HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)") + .HasColumnType("tinyint(4)"); + entity.Property(e => e.UserId) + .HasComment("申请人 ") + .HasColumnType("int(11)"); + + entity.HasOne(d => d.Group).WithMany(p => p.GroupRequests) + .HasForeignKey(d => d.GroupId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("group_request_ibfk_1"); + + entity.HasOne(d => d.User).WithMany(p => p.GroupRequests) + .HasForeignKey(d => d.UserId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("group_request_ibfk_2"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("login_log") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.UserId, "Userld"); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.Dtype) + .HasComment("设备类型(通Devices/DType) ") + .HasColumnType("tinyint(4)") + .HasColumnName("DType"); + entity.Property(e => e.Logined) + .HasComment("登录时间 ") + .HasColumnType("datetime"); + entity.Property(e => e.State) + .HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) ") + .HasColumnType("tinyint(4)"); + entity.Property(e => e.UserId) + .HasComment("登录用户 ") + .HasColumnType("int(11)"); + + entity.HasOne(d => d.User).WithMany(p => p.LoginLogs) + .HasForeignKey(d => d.UserId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("login_log_ibfk_1"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("messages") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.Sender, "Sender"); + + + //设置联合唯一索引 + entity.HasIndex(e => new { e.SequenceId, e.StreamKey }) + .IsUnique(); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.ChatType) + .HasComment("聊天类型\r\n(0:私聊,1:群聊)") + .HasColumnType("tinyint(4)"); + entity.Property(e => e.Content) + .HasComment("消息内容 ") + .HasColumnType("text"); + entity.Property(e => e.Created) + .HasComment("发送时间 ") + .HasColumnType("datetime"); + entity.Property(e => e.MsgType) + .HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)") + .HasColumnType("tinyint(4)"); + entity.Property(e => e.Recipient) + .HasComment("接收者(私聊为用户ID,群聊为群聊ID) ") + .HasColumnType("int(11)"); + entity.Property(e => e.Sender) + .HasComment("发送者 ") + .HasColumnType("int(11)"); + entity.Property(e => e.State) + .HasComment("消息状态(0:已发送,1:已撤回) ") + .HasColumnType("tinyint(4)"); + entity.Property(e => e.StreamKey) + .HasMaxLength(255) + .HasComment("消息推送唯一标识符"); + + entity.HasOne(d => d.SenderNavigation).WithMany(p => p.Messages) + .HasForeignKey(d => d.Sender) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("messages_ibfk_1"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("notifications") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.UserId, "Userld"); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.Content) + .HasComment("通知内容") + .HasColumnType("text"); + entity.Property(e => e.Created) + .HasComment("创建时间") + .HasColumnType("datetime"); + entity.Property(e => e.Ntype) + .HasComment("通知类型(0:文本)") + .HasColumnType("tinyint(4)") + .HasColumnName("NType"); + entity.Property(e => e.Title) + .HasMaxLength(40) + .HasComment("通知标题"); + entity.Property(e => e.UserId) + .HasComment("接收人(为空为全体通知)") + .HasColumnType("int(11)"); + + entity.HasOne(d => d.User).WithMany(p => p.Notifications) + .HasForeignKey(d => d.UserId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("notifications_ibfk_1"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("permissions") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.Code) + .HasComment("权限编码 ") + .HasColumnType("int(11)"); + entity.Property(e => e.Created) + .HasComment("创建时间 ") + .HasColumnType("datetime"); + entity.Property(e => e.Name) + .HasMaxLength(50) + .HasComment("权限名称 "); + entity.Property(e => e.Ptype) + .HasComment("权限类型(0:增,1:删,2:改,3:查) ") + .HasColumnType("int(11)") + .HasColumnName("PType"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("permissionarole") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.PermissionId, "Permissionld"); + + entity.HasIndex(e => e.RoleId, "Roleld"); + + entity.Property(e => e.Id) + .ValueGeneratedNever() + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.PermissionId) + .HasComment("权限 ") + .HasColumnType("int(11)"); + entity.Property(e => e.RoleId) + .HasComment("角色 ") + .HasColumnType("int(11)"); + + entity.HasOne(d => d.Permission).WithMany(p => p.Permissionaroles) + .HasForeignKey(d => d.PermissionId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("permissionarole_ibfk_2"); + + entity.HasOne(d => d.Role).WithMany(p => p.Permissionaroles) + .HasForeignKey(d => d.RoleId) + .OnDelete(DeleteBehavior.ClientSetNull) + .HasConstraintName("permissionarole_ibfk_1"); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("roles") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.Created) + .HasComment("创建时间 ") + .HasColumnType("datetime"); + entity.Property(e => e.Description) + .HasComment("角色描述 ") + .HasColumnType("text"); + entity.Property(e => e.Name) + .HasMaxLength(20) + .HasComment("角色名称 "); + }); + + modelBuilder.Entity(entity => + { + entity.HasKey(e => e.Id).HasName("PRIMARY"); + + entity + .ToTable("users") + .HasCharSet("utf8mb4") + .UseCollation("utf8mb4_general_ci"); + + entity.HasIndex(e => e.Id, "ID"); + + entity.HasIndex(e => e.Username, "Username").IsUnique(); + + entity.Property(e => e.Id) + .HasColumnType("int(11)") + .HasColumnName("ID"); + entity.Property(e => e.Avatar) + .HasMaxLength(255) + .HasComment("用户头像链接"); + entity.Property(e => e.Created) + .HasDefaultValueSql("'1970-01-01 00:00:00'") + .HasComment("创建时间") + .HasColumnType("datetime"); + entity.Property(e => e.IsDeleted) + .HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除") + .HasColumnType("tinyint(4)"); + entity.Property(e => e.NickName) + .HasMaxLength(50) + .HasComment("用户昵称"); + entity.Property(e => e.OnlineStatus) + .HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线") + .HasColumnType("tinyint(4)"); + entity.Property(e => e.Password) + .HasMaxLength(50) + .HasComment("密码"); + entity.Property(e => e.Status) + .HasDefaultValueSql("'1'") + .HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)") + .HasColumnType("tinyint(4)"); + entity.Property(e => e.Updated) + .HasComment("修改时间") + .HasColumnType("datetime"); + entity.Property(e => e.Username) + .HasMaxLength(50) + .HasComment("唯一用户名"); + }); + + OnModelCreatingPartial(modelBuilder); + } + + partial void OnModelCreatingPartial(ModelBuilder modelBuilder); +} diff --git a/backend/IM_API/Models/LoginLog.cs b/backend/IM_API/Models/LoginLog.cs index 1a71b72..5448de8 100644 --- a/backend/IM_API/Models/LoginLog.cs +++ b/backend/IM_API/Models/LoginLog.cs @@ -1,33 +1,33 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Models; - -public partial class LoginLog -{ - public int Id { get; set; } - - /// - /// 设备类型(通Devices/DType) - /// - public sbyte Dtype { get; set; } - - /// - /// 登录时间 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset Logined { get; set; } - - /// - /// 登录用户 - /// - public int UserId { get; set; } - - /// - /// 登录状态(0:登陆成功,1:未验证,2:已被拒绝) - /// - public sbyte State { get; set; } - - public virtual User User { get; set; } = null!; -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Models; + +public partial class LoginLog +{ + public int Id { get; set; } + + /// + /// 设备类型(通Devices/DType) + /// + public sbyte Dtype { get; set; } + + /// + /// 登录时间 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset Logined { get; set; } + + /// + /// 登录用户 + /// + public int UserId { get; set; } + + /// + /// 登录状态(0:登陆成功,1:未验证,2:已被拒绝) + /// + public sbyte State { get; set; } + + public virtual User User { get; set; } = null!; +} diff --git a/backend/IM_API/Models/LoginLogExt.cs b/backend/IM_API/Models/LoginLogExt.cs index 333a76a..25c0d79 100644 --- a/backend/IM_API/Models/LoginLogExt.cs +++ b/backend/IM_API/Models/LoginLogExt.cs @@ -1,11 +1,11 @@ -namespace IM_API.Models -{ - public partial class LoginLog - { - public LoginState StateEnum - { - get => (LoginState)State; - set => State = (sbyte)value; - } - } -} +namespace IM_API.Models +{ + public partial class LoginLog + { + public LoginState StateEnum + { + get => (LoginState)State; + set => State = (sbyte)value; + } + } +} diff --git a/backend/IM_API/Models/LoginState.cs b/backend/IM_API/Models/LoginState.cs index e2e32d4..91609dc 100644 --- a/backend/IM_API/Models/LoginState.cs +++ b/backend/IM_API/Models/LoginState.cs @@ -1,18 +1,18 @@ -namespace IM_API.Models -{ - public enum LoginState - { - /// - /// 登陆成功 - /// - Success = 0, - /// - /// 未验证 - /// - Unauthenticated = 1, - /// - /// 已拒绝 - /// - Declined = 2 - } -} +namespace IM_API.Models +{ + public enum LoginState + { + /// + /// 登陆成功 + /// + Success = 0, + /// + /// 未验证 + /// + Unauthenticated = 1, + /// + /// 已拒绝 + /// + Declined = 2 + } +} diff --git a/backend/IM_API/Models/Message.cs b/backend/IM_API/Models/Message.cs index df859ec..1b2871a 100644 --- a/backend/IM_API/Models/Message.cs +++ b/backend/IM_API/Models/Message.cs @@ -1,66 +1,66 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Models; - -public partial class Message -{ - public int Id { get; set; } - - /// - /// 聊天类型 - /// (0:私聊,1:群聊) - /// - public sbyte ChatType { get; set; } - - /// - /// 消息类型 - /// (0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天) - /// - public sbyte MsgType { get; set; } - public Guid ClientMsgId { get; set; } - - /// - /// 消息内容 - /// - public string Content { get; set; } = null!; - - /// - /// 发送者 - /// - public int Sender { get; set; } - - /// - /// 接收者(私聊为用户ID,群聊为群聊ID) - /// - public int Recipient { get; set; } - - /// - /// 消息状态(0:已发送,1:已撤回) - /// - public sbyte State { get; set; } - - /// - /// 发送时间 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset Created { get; set; } - - /// - /// 消息推送唯一标识符 - /// - public string StreamKey { get; set; } = null!; - - /// - /// 消息排序标识 - /// - - public long SequenceId { get; set; } - - public virtual ICollection Conversations { get; set; } = new List(); - - public virtual ICollection Files { get; set; } = new List(); - - public virtual User SenderNavigation { get; set; } = null!; -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Models; + +public partial class Message +{ + public int Id { get; set; } + + /// + /// 聊天类型 + /// (0:私聊,1:群聊) + /// + public sbyte ChatType { get; set; } + + /// + /// 消息类型 + /// (0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天) + /// + public sbyte MsgType { get; set; } + public Guid ClientMsgId { get; set; } + + /// + /// 消息内容 + /// + public string Content { get; set; } = null!; + + /// + /// 发送者 + /// + public int Sender { get; set; } + + /// + /// 接收者(私聊为用户ID,群聊为群聊ID) + /// + public int Recipient { get; set; } + + /// + /// 消息状态(0:已发送,1:已撤回) + /// + public sbyte State { get; set; } + + /// + /// 发送时间 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset Created { get; set; } + + /// + /// 消息推送唯一标识符 + /// + public string StreamKey { get; set; } = null!; + + /// + /// 消息排序标识 + /// + + public long SequenceId { get; set; } + + public virtual ICollection Conversations { get; set; } = new List(); + + public virtual ICollection Files { get; set; } = new List(); + + public virtual User SenderNavigation { get; set; } = null!; +} diff --git a/backend/IM_API/Models/MessageExt.cs b/backend/IM_API/Models/MessageExt.cs index 9ba3976..9343bb4 100644 --- a/backend/IM_API/Models/MessageExt.cs +++ b/backend/IM_API/Models/MessageExt.cs @@ -1,21 +1,21 @@ -namespace IM_API.Models -{ - public partial class Message - { - public MessageMsgType MsgTypeEnum - { - get => (MessageMsgType)MsgType; - set => MsgType = (sbyte) value; - } - public ChatType ChatTypeEnum - { - get => (ChatType)ChatType; - set => ChatType = (sbyte)value; - } - public MessageState StateEnum - { - get => (MessageState)State; - set => State = (sbyte) value; - } - } -} +namespace IM_API.Models +{ + public partial class Message + { + public MessageMsgType MsgTypeEnum + { + get => (MessageMsgType)MsgType; + set => MsgType = (sbyte) value; + } + public ChatType ChatTypeEnum + { + get => (ChatType)ChatType; + set => ChatType = (sbyte)value; + } + public MessageState StateEnum + { + get => (MessageState)State; + set => State = (sbyte) value; + } + } +} diff --git a/backend/IM_API/Models/MessageMsgType.cs b/backend/IM_API/Models/MessageMsgType.cs index a02832b..1a50e9f 100644 --- a/backend/IM_API/Models/MessageMsgType.cs +++ b/backend/IM_API/Models/MessageMsgType.cs @@ -1,13 +1,13 @@ -namespace IM_API.Models -{ - public enum MessageMsgType - { - Text = 0, - Image = 1, - Voice = 2, - Video = 3, - File = 4, - VoiceChat = 5, - VideoChat = 6 - } -} +namespace IM_API.Models +{ + public enum MessageMsgType + { + Text = 0, + Image = 1, + Voice = 2, + Video = 3, + File = 4, + VoiceChat = 5, + VideoChat = 6 + } +} diff --git a/backend/IM_API/Models/MessageState.cs b/backend/IM_API/Models/MessageState.cs index 8d75248..988b806 100644 --- a/backend/IM_API/Models/MessageState.cs +++ b/backend/IM_API/Models/MessageState.cs @@ -1,14 +1,14 @@ -namespace IM_API.Models -{ - public enum MessageState - { - /// - /// 已发送 - /// - Sent = 0, - /// - /// 已撤回 - /// - Withdrwan = 1 - } -} +namespace IM_API.Models +{ + public enum MessageState + { + /// + /// 已发送 + /// + Sent = 0, + /// + /// 已撤回 + /// + Withdrwan = 1 + } +} diff --git a/backend/IM_API/Models/Notification.cs b/backend/IM_API/Models/Notification.cs index 4286e14..c137ba3 100644 --- a/backend/IM_API/Models/Notification.cs +++ b/backend/IM_API/Models/Notification.cs @@ -1,38 +1,38 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Models; - -public partial class Notification -{ - public int Id { get; set; } - - /// - /// 接收人(为空为全体通知) - /// - public int UserId { get; set; } - - /// - /// 通知类型(0:文本) - /// - public sbyte Ntype { get; set; } - - /// - /// 通知标题 - /// - public string Title { get; set; } = null!; - - /// - /// 通知内容 - /// - public string Content { get; set; } = null!; - - /// - /// 创建时间 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset Created { get; set; } - - public virtual User User { get; set; } = null!; -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Models; + +public partial class Notification +{ + public int Id { get; set; } + + /// + /// 接收人(为空为全体通知) + /// + public int UserId { get; set; } + + /// + /// 通知类型(0:文本) + /// + public sbyte Ntype { get; set; } + + /// + /// 通知标题 + /// + public string Title { get; set; } = null!; + + /// + /// 通知内容 + /// + public string Content { get; set; } = null!; + + /// + /// 创建时间 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset Created { get; set; } + + public virtual User User { get; set; } = null!; +} diff --git a/backend/IM_API/Models/Permission.cs b/backend/IM_API/Models/Permission.cs index 9c522c1..2f0db7a 100644 --- a/backend/IM_API/Models/Permission.cs +++ b/backend/IM_API/Models/Permission.cs @@ -1,33 +1,33 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Models; - -public partial class Permission -{ - public int Id { get; set; } - - /// - /// 权限类型(0:增,1:删,2:改,3:查) - /// - public int Ptype { get; set; } - - /// - /// 权限名称 - /// - public string Name { get; set; } = null!; - - /// - /// 权限编码 - /// - public int Code { get; set; } - - /// - /// 创建时间 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset Created { get; set; } - - public virtual ICollection Permissionaroles { get; set; } = new List(); -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Models; + +public partial class Permission +{ + public int Id { get; set; } + + /// + /// 权限类型(0:增,1:删,2:改,3:查) + /// + public int Ptype { get; set; } + + /// + /// 权限名称 + /// + public string Name { get; set; } = null!; + + /// + /// 权限编码 + /// + public int Code { get; set; } + + /// + /// 创建时间 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset Created { get; set; } + + public virtual ICollection Permissionaroles { get; set; } = new List(); +} diff --git a/backend/IM_API/Models/Permissionarole.cs b/backend/IM_API/Models/Permissionarole.cs index 7ea65cb..1d63234 100644 --- a/backend/IM_API/Models/Permissionarole.cs +++ b/backend/IM_API/Models/Permissionarole.cs @@ -1,23 +1,23 @@ -using System; -using System.Collections.Generic; - -namespace IM_API.Models; - -public partial class Permissionarole -{ - public int Id { get; set; } - - /// - /// 角色 - /// - public int RoleId { get; set; } - - /// - /// 权限 - /// - public int PermissionId { get; set; } - - public virtual Permission Permission { get; set; } = null!; - - public virtual Role Role { get; set; } = null!; -} +using System; +using System.Collections.Generic; + +namespace IM_API.Models; + +public partial class Permissionarole +{ + public int Id { get; set; } + + /// + /// 角色 + /// + public int RoleId { get; set; } + + /// + /// 权限 + /// + public int PermissionId { get; set; } + + public virtual Permission Permission { get; set; } = null!; + + public virtual Role Role { get; set; } = null!; +} diff --git a/backend/IM_API/Models/Role.cs b/backend/IM_API/Models/Role.cs index a6a393e..471e3c9 100644 --- a/backend/IM_API/Models/Role.cs +++ b/backend/IM_API/Models/Role.cs @@ -1,30 +1,30 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; - -namespace IM_API.Models; - -public partial class Role -{ - public int Id { get; set; } - - /// - /// 角色名称 - /// - public string Name { get; set; } = null!; - - /// - /// 角色描述 - /// - public string Description { get; set; } = null!; - - /// - /// 创建时间 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset Created { get; set; } - - public virtual ICollection Admins { get; set; } = new List(); - - public virtual ICollection Permissionaroles { get; set; } = new List(); -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; + +namespace IM_API.Models; + +public partial class Role +{ + public int Id { get; set; } + + /// + /// 角色名称 + /// + public string Name { get; set; } = null!; + + /// + /// 角色描述 + /// + public string Description { get; set; } = null!; + + /// + /// 创建时间 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset Created { get; set; } + + public virtual ICollection Admins { get; set; } = new List(); + + public virtual ICollection Permissionaroles { get; set; } = new List(); +} diff --git a/backend/IM_API/Models/User.cs b/backend/IM_API/Models/User.cs index ece733f..3cbceb8 100644 --- a/backend/IM_API/Models/User.cs +++ b/backend/IM_API/Models/User.cs @@ -1,91 +1,91 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel.DataAnnotations.Schema; -using System.Text.Json.Serialization; - -namespace IM_API.Models; - -public partial class User -{ - public int Id { get; set; } - - /// - /// 唯一用户名 - /// - public string Username { get; set; } = null!; - - /// - /// 密码 - /// - public string Password { get; set; } = null!; - - /// - /// 用户昵称 - /// - public string? NickName { get; set; } - - /// - /// 用户在线状态 - /// 0(默认):不在线 - /// 1:在线 - /// - public sbyte OnlineStatus { get; set; } - - /// - /// 创建时间 - /// - public DateTimeOffset Created { get; set; } - - /// - /// 修改时间 - /// - [Column(TypeName = "datetimeoffset")] - public DateTimeOffset? Updated { get; set; } - - /// - /// 账户状态 - /// (0:未激活,1:正常,2:封禁) - /// - public sbyte Status { get; set; } - - /// - /// 软删除标识 - /// 0:账号正常 - /// 1:账号已删除 - /// - public sbyte IsDeleted { get; set; } - - /// - /// 用户头像链接 - /// - public string? Avatar { get; set; } - [JsonIgnore] - - public virtual ICollection Conversations { get; set; } = new List(); - [JsonIgnore] - public virtual ICollection Devices { get; set; } = new List(); - [JsonIgnore] - public virtual ICollection FriendFriendNavigations { get; set; } = new List(); - [JsonIgnore] - public virtual ICollection FriendRequestRequestUserNavigations { get; set; } = new List(); - [JsonIgnore] - public virtual ICollection FriendRequestResponseUserNavigations { get; set; } = new List(); - [JsonIgnore] - public virtual ICollection FriendUsers { get; set; } = new List(); - [JsonIgnore] - public virtual ICollection GroupInviteInviteUserNavigations { get; set; } = new List(); - [JsonIgnore] - public virtual ICollection GroupInviteInvitedUserNavigations { get; set; } = new List(); - [JsonIgnore] - public virtual ICollection GroupMembers { get; set; } = new List(); - [JsonIgnore] - public virtual ICollection GroupRequests { get; set; } = new List(); - [JsonIgnore] - public virtual ICollection Groups { get; set; } = new List(); - [JsonIgnore] - public virtual ICollection LoginLogs { get; set; } = new List(); - [JsonIgnore] - public virtual ICollection Messages { get; set; } = new List(); - [JsonIgnore] - public virtual ICollection Notifications { get; set; } = new List(); -} +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations.Schema; +using System.Text.Json.Serialization; + +namespace IM_API.Models; + +public partial class User +{ + public int Id { get; set; } + + /// + /// 唯一用户名 + /// + public string Username { get; set; } = null!; + + /// + /// 密码 + /// + public string Password { get; set; } = null!; + + /// + /// 用户昵称 + /// + public string? NickName { get; set; } + + /// + /// 用户在线状态 + /// 0(默认):不在线 + /// 1:在线 + /// + public sbyte OnlineStatus { get; set; } + + /// + /// 创建时间 + /// + public DateTimeOffset Created { get; set; } + + /// + /// 修改时间 + /// + [Column(TypeName = "datetimeoffset")] + public DateTimeOffset? Updated { get; set; } + + /// + /// 账户状态 + /// (0:未激活,1:正常,2:封禁) + /// + public sbyte Status { get; set; } + + /// + /// 软删除标识 + /// 0:账号正常 + /// 1:账号已删除 + /// + public sbyte IsDeleted { get; set; } + + /// + /// 用户头像链接 + /// + public string? Avatar { get; set; } + [JsonIgnore] + + public virtual ICollection Conversations { get; set; } = new List(); + [JsonIgnore] + public virtual ICollection Devices { get; set; } = new List(); + [JsonIgnore] + public virtual ICollection FriendFriendNavigations { get; set; } = new List(); + [JsonIgnore] + public virtual ICollection FriendRequestRequestUserNavigations { get; set; } = new List(); + [JsonIgnore] + public virtual ICollection FriendRequestResponseUserNavigations { get; set; } = new List(); + [JsonIgnore] + public virtual ICollection FriendUsers { get; set; } = new List(); + [JsonIgnore] + public virtual ICollection GroupInviteInviteUserNavigations { get; set; } = new List(); + [JsonIgnore] + public virtual ICollection GroupInviteInvitedUserNavigations { get; set; } = new List(); + [JsonIgnore] + public virtual ICollection GroupMembers { get; set; } = new List(); + [JsonIgnore] + public virtual ICollection GroupRequests { get; set; } = new List(); + [JsonIgnore] + public virtual ICollection Groups { get; set; } = new List(); + [JsonIgnore] + public virtual ICollection LoginLogs { get; set; } = new List(); + [JsonIgnore] + public virtual ICollection Messages { get; set; } = new List(); + [JsonIgnore] + public virtual ICollection Notifications { get; set; } = new List(); +} diff --git a/backend/IM_API/Models/UserExt.cs b/backend/IM_API/Models/UserExt.cs index 2ef533a..2d2dd9e 100644 --- a/backend/IM_API/Models/UserExt.cs +++ b/backend/IM_API/Models/UserExt.cs @@ -1,16 +1,16 @@ -namespace IM_API.Models -{ - public partial class User - { - public UserOnlineStatus OnlineStatusEnum - { - get => (UserOnlineStatus)OnlineStatus; - set => OnlineStatus = (sbyte)value; - } - public UserStatus StatusEnum - { - get => (UserStatus)Status; - set => Status = (sbyte)value; - } - } -} +namespace IM_API.Models +{ + public partial class User + { + public UserOnlineStatus OnlineStatusEnum + { + get => (UserOnlineStatus)OnlineStatus; + set => OnlineStatus = (sbyte)value; + } + public UserStatus StatusEnum + { + get => (UserStatus)Status; + set => Status = (sbyte)value; + } + } +} diff --git a/backend/IM_API/Models/UserOlineStatus.cs b/backend/IM_API/Models/UserOlineStatus.cs index ac3f15f..0957ae6 100644 --- a/backend/IM_API/Models/UserOlineStatus.cs +++ b/backend/IM_API/Models/UserOlineStatus.cs @@ -1,18 +1,18 @@ -namespace IM_API.Models -{ - /// - /// 用户在线状态 - /// - public enum UserOnlineStatus : sbyte - { - /// - /// 不在线 (0) - /// - Offline = 0, - - /// - /// 在线 (1) - /// - Online = 1 - } -} +namespace IM_API.Models +{ + /// + /// 用户在线状态 + /// + public enum UserOnlineStatus : sbyte + { + /// + /// 不在线 (0) + /// + Offline = 0, + + /// + /// 在线 (1) + /// + Online = 1 + } +} diff --git a/backend/IM_API/Models/UserStatus.cs b/backend/IM_API/Models/UserStatus.cs index e08f38b..5cfdcb8 100644 --- a/backend/IM_API/Models/UserStatus.cs +++ b/backend/IM_API/Models/UserStatus.cs @@ -1,9 +1,9 @@ -namespace IM_API.Models -{ - public enum UserStatus:SByte - { - Inactive = 0, - Normal = 1, - Banned = 2 - } -} +namespace IM_API.Models +{ + public enum UserStatus:SByte + { + Inactive = 0, + Normal = 1, + Banned = 2 + } +} diff --git a/backend/IM_API/Program.cs b/backend/IM_API/Program.cs index c006058..c5ee3be 100644 --- a/backend/IM_API/Program.cs +++ b/backend/IM_API/Program.cs @@ -1,160 +1,160 @@ - -using IM_API.Configs; -using IM_API.Configs.Options; -using IM_API.Filters; -using IM_API.Hubs; -using IM_API.Models; -using IM_API.Tools; -using Microsoft.AspNetCore.Authentication.JwtBearer; -using Microsoft.EntityFrameworkCore; -using Microsoft.IdentityModel.Tokens; -using StackExchange.Redis; -using System.Text; -using System.Text.Json; -using System.Text.Json.Serialization; - -namespace IM_API -{ - public class Program - { - public static void Main(string[] args) - { - var builder = WebApplication.CreateBuilder(args); - - // Add services to the container. - IConfiguration configuration = new ConfigurationBuilder() - .SetBasePath(Directory.GetCurrentDirectory()) - .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true) - .Build(); - var conOptions = configuration.GetSection("ConnectionStrings").Get(); - //עݿ - builder.Services.AddDbContext(options => - { - options.UseMySql(conOptions.DefaultConnection,ServerVersion.AutoDetect(conOptions.DefaultConnection)); - }); - //עredis - var redis = ConnectionMultiplexer.Connect(conOptions.Redis); - builder.Services.AddSingleton(redis); - - builder.Services.AddStackExchangeRedisCache(options => - { - options.ConnectionMultiplexerFactory = () => Task.FromResult(redis); - }); - - builder.Services.AddRabbitMQ(configuration.GetSection("RabbitMqOptions").Get()); - - builder.Services.AddAllService(configuration); - - builder.Services.AddSignalR().AddJsonProtocol(options => - { - // öַ - options.PayloadSerializerOptions.Converters.Add(new JsonStringEnumConverter()); - options.PayloadSerializerOptions.PropertyNamingPolicy = JsonNamingPolicy.CamelCase; - }); - //Դ - builder.Services.AddCors(options => - { - options.AddDefaultPolicy(policy => - { - policy.AllowAnyHeader() - .AllowAnyMethod() - .AllowAnyHeader() - .AllowCredentials() - .SetIsOriginAllowed(origin => - { - // Աػضε - var host = new Uri(origin).Host; - return host == "localhost" || host.StartsWith("192.168."); - }); - }); - }); - //ƾ֤ - builder.Services.AddAuthentication(options => - { - options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme; - options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; - }) - .AddJwtBearer(options => - { - //httpsDZ - options.RequireHttpsMetadata = false; - //token - options.SaveToken = true; - options.TokenValidationParameters = new Microsoft.IdentityModel.Tokens.TokenValidationParameters - { - //֤ǩ - ValidateIssuer = true, - ValidIssuer = configuration["Jwt:Issuer"], - //֤ - ValidateAudience = true, - ValidAudience = configuration["Jwt:Audience"], - //֤ǩԿ - ValidateIssuerSigningKey = true, - IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(configuration["Jwt:Key"])), - //ʱƫ - ValidateLifetime = true, - ClockSkew = TimeSpan.FromSeconds(30) - - - }; - //websocket tokenƾ֤ - options.Events = new JwtBearerEvents { - OnMessageReceived = context => - { - var accessToken = context.Request.Query["access_token"]; - if (!string.IsNullOrEmpty(accessToken)) - { - context.Token = accessToken; - } - return Task.CompletedTask; - }, - OnAuthenticationFailed = context => - { - Console.WriteLine("Authentication failed: " + context.Exception.Message); - return Task.CompletedTask; - } - }; - }); - builder.Services.AddControllers(options => - { - options.Filters.Add(); - }).AddJsonOptions(options => - { - // ISO 8601 ʽ - //options.JsonSerializerOptions.Converters.Add(new UtcDateTimeConverter()); - // öתΪַ - options.JsonSerializerOptions.Converters.Add(new JsonStringEnumConverter()); - // 飺շ - options.JsonSerializerOptions.PropertyNamingPolicy = JsonNamingPolicy.CamelCase; - }); - builder.Services.AddModelValidation(configuration); - // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle - builder.Services.AddEndpointsApiExplorer(); - builder.Services.AddSwaggerGen(); - - var app = builder.Build(); - - app.UseCors(); - - // Configure the HTTP request pipeline. - if (app.Environment.IsDevelopment()) - { - app.UseSwagger(); - app.UseSwaggerUI(); - } - - app.UseHttpsRedirection(); - - app.UseAuthentication(); - app.UseAuthorization(); - - - - app.MapControllers(); - - app.MapHub("/chat").RequireCors(); - - app.Run(); - } - } -} + +using IM_API.Configs; +using IM_API.Configs.Options; +using IM_API.Filters; +using IM_API.Hubs; +using IM_API.Models; +using IM_API.Tools; +using Microsoft.AspNetCore.Authentication.JwtBearer; +using Microsoft.EntityFrameworkCore; +using Microsoft.IdentityModel.Tokens; +using StackExchange.Redis; +using System.Text; +using System.Text.Json; +using System.Text.Json.Serialization; + +namespace IM_API +{ + public class Program + { + public static void Main(string[] args) + { + var builder = WebApplication.CreateBuilder(args); + + // Add services to the container. + IConfiguration configuration = new ConfigurationBuilder() + .SetBasePath(Directory.GetCurrentDirectory()) + .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true) + .Build(); + var conOptions = configuration.GetSection("ConnectionStrings").Get(); + //עݿ + builder.Services.AddDbContext(options => + { + options.UseMySql(conOptions.DefaultConnection,ServerVersion.AutoDetect(conOptions.DefaultConnection)); + }); + //עredis + var redis = ConnectionMultiplexer.Connect(conOptions.Redis); + builder.Services.AddSingleton(redis); + + builder.Services.AddStackExchangeRedisCache(options => + { + options.ConnectionMultiplexerFactory = () => Task.FromResult(redis); + }); + + builder.Services.AddRabbitMQ(configuration.GetSection("RabbitMqOptions").Get()); + + builder.Services.AddAllService(configuration); + + builder.Services.AddSignalR().AddJsonProtocol(options => + { + // öַ + options.PayloadSerializerOptions.Converters.Add(new JsonStringEnumConverter()); + options.PayloadSerializerOptions.PropertyNamingPolicy = JsonNamingPolicy.CamelCase; + }); + //Դ + builder.Services.AddCors(options => + { + options.AddDefaultPolicy(policy => + { + policy.AllowAnyHeader() + .AllowAnyMethod() + .AllowAnyHeader() + .AllowCredentials() + .SetIsOriginAllowed(origin => + { + // Աػضε + var host = new Uri(origin).Host; + return host == "localhost" || host.StartsWith("192.168."); + }); + }); + }); + //ƾ֤ + builder.Services.AddAuthentication(options => + { + options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme; + options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; + }) + .AddJwtBearer(options => + { + //httpsDZ + options.RequireHttpsMetadata = false; + //token + options.SaveToken = true; + options.TokenValidationParameters = new Microsoft.IdentityModel.Tokens.TokenValidationParameters + { + //֤ǩ + ValidateIssuer = true, + ValidIssuer = configuration["Jwt:Issuer"], + //֤ + ValidateAudience = true, + ValidAudience = configuration["Jwt:Audience"], + //֤ǩԿ + ValidateIssuerSigningKey = true, + IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(configuration["Jwt:Key"])), + //ʱƫ + ValidateLifetime = true, + ClockSkew = TimeSpan.FromSeconds(30) + + + }; + //websocket tokenƾ֤ + options.Events = new JwtBearerEvents { + OnMessageReceived = context => + { + var accessToken = context.Request.Query["access_token"]; + if (!string.IsNullOrEmpty(accessToken)) + { + context.Token = accessToken; + } + return Task.CompletedTask; + }, + OnAuthenticationFailed = context => + { + Console.WriteLine("Authentication failed: " + context.Exception.Message); + return Task.CompletedTask; + } + }; + }); + builder.Services.AddControllers(options => + { + options.Filters.Add(); + }).AddJsonOptions(options => + { + // ISO 8601 ʽ + //options.JsonSerializerOptions.Converters.Add(new UtcDateTimeConverter()); + // öתΪַ + options.JsonSerializerOptions.Converters.Add(new JsonStringEnumConverter()); + // 飺շ + options.JsonSerializerOptions.PropertyNamingPolicy = JsonNamingPolicy.CamelCase; + }); + builder.Services.AddModelValidation(configuration); + // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle + builder.Services.AddEndpointsApiExplorer(); + builder.Services.AddSwaggerGen(); + + var app = builder.Build(); + + app.UseCors(); + + // Configure the HTTP request pipeline. + if (app.Environment.IsDevelopment()) + { + app.UseSwagger(); + app.UseSwaggerUI(); + } + + app.UseHttpsRedirection(); + + app.UseAuthentication(); + app.UseAuthorization(); + + + + app.MapControllers(); + + app.MapHub("/chat").RequireCors(); + + app.Run(); + } + } +} diff --git a/backend/IM_API/Properties/launchSettings.json b/backend/IM_API/Properties/launchSettings.json index 758bd87..9d70aa6 100644 --- a/backend/IM_API/Properties/launchSettings.json +++ b/backend/IM_API/Properties/launchSettings.json @@ -1,52 +1,52 @@ -{ - "profiles": { - "http": { - "commandName": "Project", - "launchBrowser": true, - "launchUrl": "swagger", - "environmentVariables": { - "ASPNETCORE_ENVIRONMENT": "Development" - }, - "dotnetRunMessages": true, - "applicationUrl": "http://localhost:5202" - }, - "https": { - "commandName": "Project", - "launchBrowser": true, - "launchUrl": "swagger", - "environmentVariables": { - "ASPNETCORE_ENVIRONMENT": "Development" - }, - "dotnetRunMessages": true, - "applicationUrl": "https://localhost:7157;http://localhost:5202" - }, - "IIS Express": { - "commandName": "IISExpress", - "launchBrowser": true, - "launchUrl": "swagger", - "environmentVariables": { - "ASPNETCORE_ENVIRONMENT": "Development" - } - }, - "Container (Dockerfile)": { - "commandName": "Docker", - "launchBrowser": true, - "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}/swagger", - "environmentVariables": { - "ASPNETCORE_HTTPS_PORTS": "8081", - "ASPNETCORE_HTTP_PORTS": "8080" - }, - "publishAllPorts": true, - "useSSL": true - } - }, - "$schema": "http://json.schemastore.org/launchsettings.json", - "iisSettings": { - "windowsAuthentication": false, - "anonymousAuthentication": true, - "iisExpress": { - "applicationUrl": "http://localhost:39786", - "sslPort": 44308 - } - } +{ + "profiles": { + "http": { + "commandName": "Project", + "launchBrowser": true, + "launchUrl": "swagger", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + }, + "dotnetRunMessages": true, + "applicationUrl": "http://localhost:5202" + }, + "https": { + "commandName": "Project", + "launchBrowser": true, + "launchUrl": "swagger", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + }, + "dotnetRunMessages": true, + "applicationUrl": "https://localhost:7157;http://localhost:5202" + }, + "IIS Express": { + "commandName": "IISExpress", + "launchBrowser": true, + "launchUrl": "swagger", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + }, + "Container (Dockerfile)": { + "commandName": "Docker", + "launchBrowser": true, + "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}/swagger", + "environmentVariables": { + "ASPNETCORE_HTTPS_PORTS": "8081", + "ASPNETCORE_HTTP_PORTS": "8080" + }, + "publishAllPorts": true, + "useSSL": true + } + }, + "$schema": "http://json.schemastore.org/launchsettings.json", + "iisSettings": { + "windowsAuthentication": false, + "anonymousAuthentication": true, + "iisExpress": { + "applicationUrl": "http://localhost:39786", + "sslPort": 44308 + } + } } \ No newline at end of file diff --git a/backend/IM_API/Services/AuthService.cs b/backend/IM_API/Services/AuthService.cs index 71898c1..c988c13 100644 --- a/backend/IM_API/Services/AuthService.cs +++ b/backend/IM_API/Services/AuthService.cs @@ -1,53 +1,53 @@ -using AutoMapper; -using IM_API.Dtos.Auth; -using IM_API.Dtos.User; -using IM_API.Exceptions; -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.Tools; -using Microsoft.EntityFrameworkCore; - -namespace IM_API.Services -{ - public class AuthService : IAuthService - { - private readonly ImContext _context; - private readonly ILogger _logger; - private readonly IMapper _mapper; - private readonly ICacheService _cache; - public AuthService(ImContext context, ILogger logger, IMapper mapper, ICacheService cache) - { - _context = context; - _logger = logger; - _mapper = mapper; - _cache = cache; - } - - public async Task LoginAsync(LoginRequestDto dto) - { - var userinfo = await _cache.GetUserCacheAsync(dto.Username); - if (userinfo != null && userinfo.Password == dto.Password) return userinfo; - string username = dto.Username; - string password = dto.Password; - var user = await _context.Users.FirstOrDefaultAsync(x => x.Username == username && x.Password == password); - if(user is null) - { - throw new BaseException(CodeDefine.PASSWORD_ERROR); - } - await _cache.SetUserCacheAsync(user); - return user; - } - - public async Task RegisterAsync(RegisterRequestDto dto) - { - string username = dto.Username; - //用户是否存在 - bool isExist = await _context.Users.AnyAsync(x => x.Username == username); - if (isExist) throw new BaseException(CodeDefine.USER_ALREADY_EXISTS); - User user = _mapper.Map(dto); - _context.Users.Add(user); - await _context.SaveChangesAsync(); - return _mapper.Map(user); - } - } -} +using AutoMapper; +using IM_API.Dtos.Auth; +using IM_API.Dtos.User; +using IM_API.Exceptions; +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.Tools; +using Microsoft.EntityFrameworkCore; + +namespace IM_API.Services +{ + public class AuthService : IAuthService + { + private readonly ImContext _context; + private readonly ILogger _logger; + private readonly IMapper _mapper; + private readonly ICacheService _cache; + public AuthService(ImContext context, ILogger logger, IMapper mapper, ICacheService cache) + { + _context = context; + _logger = logger; + _mapper = mapper; + _cache = cache; + } + + public async Task LoginAsync(LoginRequestDto dto) + { + var userinfo = await _cache.GetUserCacheAsync(dto.Username); + if (userinfo != null && userinfo.Password == dto.Password) return userinfo; + string username = dto.Username; + string password = dto.Password; + var user = await _context.Users.FirstOrDefaultAsync(x => x.Username == username && x.Password == password); + if(user is null) + { + throw new BaseException(CodeDefine.PASSWORD_ERROR); + } + await _cache.SetUserCacheAsync(user); + return user; + } + + public async Task RegisterAsync(RegisterRequestDto dto) + { + string username = dto.Username; + //用户是否存在 + bool isExist = await _context.Users.AnyAsync(x => x.Username == username); + if (isExist) throw new BaseException(CodeDefine.USER_ALREADY_EXISTS); + User user = _mapper.Map(dto); + _context.Users.Add(user); + await _context.SaveChangesAsync(); + return _mapper.Map(user); + } + } +} diff --git a/backend/IM_API/Services/ConversationService.cs b/backend/IM_API/Services/ConversationService.cs index 52c6856..3d35929 100644 --- a/backend/IM_API/Services/ConversationService.cs +++ b/backend/IM_API/Services/ConversationService.cs @@ -1,182 +1,182 @@ -using AutoMapper; -using IM_API.Dtos.Conversation; -using IM_API.Exceptions; -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.Tools; -using IM_API.VOs.Conversation; -using Microsoft.EntityFrameworkCore; - -namespace IM_API.Services -{ - public class ConversationService : IConversationService - { - private readonly ImContext _context; - private readonly IMapper _mapper; - public ConversationService(ImContext context, IMapper mapper) - { - _context = context; - _mapper = mapper; - } - #region 删除用户会话 - public async Task ClearConversationsAsync(int userId) - { - await _context.Conversations.Where(x => x.UserId == userId).ExecuteDeleteAsync(); - return true; - } - - - #endregion - #region 获取用户会话列表 - public async Task> GetConversationsAsync(int userId) - { - // 1. 获取私聊会话 - var privateList = await (from c in _context.Conversations - join f in _context.Friends on new { c.UserId, c.TargetId } - equals new { UserId = f.UserId, TargetId = f.FriendId } - where c.UserId == userId && c.ChatType == ChatType.PRIVATE - select new { c, f.Avatar, f.RemarkName }) - .ToListAsync(); - - // 2. 获取群聊会话 - var groupList = await (from c in _context.Conversations - join g in _context.Groups on c.TargetId equals g.Id - where c.UserId == userId && c.ChatType == ChatType.GROUP - select new { c, g.Avatar, g.Name,g.MaxSequenceId,g.LastMessage }) - .ToListAsync(); - - var privateDtos = privateList.Select(x => - { - var dto = _mapper.Map(x.c); - dto.TargetAvatar = x.Avatar; - dto.TargetName = x.RemarkName; - return dto; - }); - - var groupDtos = groupList.Select(x => - { - var dto = _mapper.Map(x.c); - dto.TargetAvatar = x.Avatar; - dto.TargetName = x.Name; - dto.UnreadCount = (int)(x.MaxSequenceId - x.c.LastReadSequenceId ?? 0); - dto.LastSequenceId = x.MaxSequenceId; - dto.LastMessage = x.LastMessage; - return dto; - }); - - // 4. 合并并排序 - return privateDtos.Concat(groupDtos) - .OrderByDescending(x => x.DateTime) - .ToList(); - } - #endregion - #region 删除单个会话 - public async Task DeleteConversationAsync(int conversationId) - { - var conversation = await _context.Conversations.FirstOrDefaultAsync(x => x.Id == conversationId); - if (conversation == null) throw new BaseException(CodeDefine.CONVERSATION_NOT_FOUND); - _context.Conversations.Remove(conversation); - await _context.SaveChangesAsync(); - return true; - } - - - #endregion - #region 获取用户所有统一聊天凭证 - public async Task> GetUserAllStreamKeyAsync(int userId) - { - return await _context.Conversations.Where(x => x.UserId == userId) - .Select(x => x.StreamKey) - .Distinct() - .ToListAsync(); - } - #endregion - - #region 获取单个会话信息 - public async Task GetConversationByIdAsync(int userId, int conversationId) - { - var conversation = await _context.Conversations - .FirstOrDefaultAsync( - x => x.UserId == userId && x.Id == conversationId - ); - if (conversation is null) throw new BaseException(CodeDefine.CONVERSATION_NOT_FOUND); - var dto = _mapper.Map(conversation); - if(conversation.ChatType == ChatType.PRIVATE) - { - var friendInfo = await _context.Friends.Include(n => n.FriendNavigation).FirstOrDefaultAsync( - x => x.UserId == conversation.UserId && x.FriendId == conversation.TargetId - ); - if (friendInfo is null) throw new BaseException(CodeDefine.FRIEND_RELATION_NOT_FOUND); - _mapper.Map(friendInfo,dto); - } - if(conversation.ChatType == ChatType.GROUP) - { - var groupInfo = await _context.Groups.FirstOrDefaultAsync( - x => x.Id == conversation.TargetId - ); - if (groupInfo is null) throw new BaseException(CodeDefine.GROUP_NOT_FOUND); - _mapper.Map(groupInfo, dto); - } - return dto; - } - #endregion - - public async Task ClearUnreadCountAsync(int userId, int conversationId) - { - var conversation = await _context.Conversations.FirstOrDefaultAsync(x => x.UserId == userId && x.Id == conversationId); - if (conversation is null) throw new BaseException(CodeDefine.CONVERSATION_NOT_FOUND); - var message = await _context.Messages - .Where(x => x.StreamKey == conversation.StreamKey) - .OrderByDescending(x => x.SequenceId) - .FirstOrDefaultAsync(); - if(message != null) - { - conversation.UnreadCount = 0; - conversation.LastMessage = message.Content; - conversation.LastReadSequenceId = message.SequenceId; - conversation.LastMessageTime = message.Created; - _context.Conversations.Update(conversation); - await _context.SaveChangesAsync(); - } - - return true; - - } - - public async Task MakeConversationAsync(int userAId, int userBId, ChatType chatType) - { - var userAcExist = await _context.Conversations.AnyAsync(x => x.UserId == userAId && x.TargetId == userBId); - if (userAcExist) return; - var streamKey = chatType == ChatType.PRIVATE ? - StreamKeyBuilder.Private(userAId, userBId) : StreamKeyBuilder.Group(userBId); - var conversation = new Conversation() - { - ChatType = chatType, - LastMessage = "", - LastMessageTime = DateTime.Now, - LastReadSequenceId = null, - StreamKey = streamKey, - TargetId = userBId, - UnreadCount = 0, - UserId = userAId - - }; - _context.Conversations.Add(conversation); - await _context.SaveChangesAsync(); - } - public async Task UpdateConversationAfterSentAsync(UpdateConversationDto dto) - { - var cList = await _context.Conversations.Where(x => x.StreamKey == dto.StreamKey).ToListAsync(); - foreach(var c in cList) - { - bool isSender = dto.SenderId == c.UserId; - c.LastMessage = dto.LastMessage; - c.LastMessageTime = dto.DateTime; - c.LastReadSequenceId = isSender ? dto.LastSequenceId : c.LastReadSequenceId; - c.UnreadCount = isSender ? 0 : c.UnreadCount + 1; - } - _context.Conversations.UpdateRange(cList); - await _context.SaveChangesAsync(); - } - } +using AutoMapper; +using IM_API.Dtos.Conversation; +using IM_API.Exceptions; +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.Tools; +using IM_API.VOs.Conversation; +using Microsoft.EntityFrameworkCore; + +namespace IM_API.Services +{ + public class ConversationService : IConversationService + { + private readonly ImContext _context; + private readonly IMapper _mapper; + public ConversationService(ImContext context, IMapper mapper) + { + _context = context; + _mapper = mapper; + } + #region 删除用户会话 + public async Task ClearConversationsAsync(int userId) + { + await _context.Conversations.Where(x => x.UserId == userId).ExecuteDeleteAsync(); + return true; + } + + + #endregion + #region 获取用户会话列表 + public async Task> GetConversationsAsync(int userId) + { + // 1. 获取私聊会话 + var privateList = await (from c in _context.Conversations + join f in _context.Friends on new { c.UserId, c.TargetId } + equals new { UserId = f.UserId, TargetId = f.FriendId } + where c.UserId == userId && c.ChatType == ChatType.PRIVATE + select new { c, f.Avatar, f.RemarkName }) + .ToListAsync(); + + // 2. 获取群聊会话 + var groupList = await (from c in _context.Conversations + join g in _context.Groups on c.TargetId equals g.Id + where c.UserId == userId && c.ChatType == ChatType.GROUP + select new { c, g.Avatar, g.Name,g.MaxSequenceId,g.LastMessage }) + .ToListAsync(); + + var privateDtos = privateList.Select(x => + { + var dto = _mapper.Map(x.c); + dto.TargetAvatar = x.Avatar; + dto.TargetName = x.RemarkName; + return dto; + }); + + var groupDtos = groupList.Select(x => + { + var dto = _mapper.Map(x.c); + dto.TargetAvatar = x.Avatar; + dto.TargetName = x.Name; + dto.UnreadCount = (int)(x.MaxSequenceId - x.c.LastReadSequenceId ?? 0); + dto.LastSequenceId = x.MaxSequenceId; + dto.LastMessage = x.LastMessage; + return dto; + }); + + // 4. 合并并排序 + return privateDtos.Concat(groupDtos) + .OrderByDescending(x => x.DateTime) + .ToList(); + } + #endregion + #region 删除单个会话 + public async Task DeleteConversationAsync(int conversationId) + { + var conversation = await _context.Conversations.FirstOrDefaultAsync(x => x.Id == conversationId); + if (conversation == null) throw new BaseException(CodeDefine.CONVERSATION_NOT_FOUND); + _context.Conversations.Remove(conversation); + await _context.SaveChangesAsync(); + return true; + } + + + #endregion + #region 获取用户所有统一聊天凭证 + public async Task> GetUserAllStreamKeyAsync(int userId) + { + return await _context.Conversations.Where(x => x.UserId == userId) + .Select(x => x.StreamKey) + .Distinct() + .ToListAsync(); + } + #endregion + + #region 获取单个会话信息 + public async Task GetConversationByIdAsync(int userId, int conversationId) + { + var conversation = await _context.Conversations + .FirstOrDefaultAsync( + x => x.UserId == userId && x.Id == conversationId + ); + if (conversation is null) throw new BaseException(CodeDefine.CONVERSATION_NOT_FOUND); + var dto = _mapper.Map(conversation); + if(conversation.ChatType == ChatType.PRIVATE) + { + var friendInfo = await _context.Friends.Include(n => n.FriendNavigation).FirstOrDefaultAsync( + x => x.UserId == conversation.UserId && x.FriendId == conversation.TargetId + ); + if (friendInfo is null) throw new BaseException(CodeDefine.FRIEND_RELATION_NOT_FOUND); + _mapper.Map(friendInfo,dto); + } + if(conversation.ChatType == ChatType.GROUP) + { + var groupInfo = await _context.Groups.FirstOrDefaultAsync( + x => x.Id == conversation.TargetId + ); + if (groupInfo is null) throw new BaseException(CodeDefine.GROUP_NOT_FOUND); + _mapper.Map(groupInfo, dto); + } + return dto; + } + #endregion + + public async Task ClearUnreadCountAsync(int userId, int conversationId) + { + var conversation = await _context.Conversations.FirstOrDefaultAsync(x => x.UserId == userId && x.Id == conversationId); + if (conversation is null) throw new BaseException(CodeDefine.CONVERSATION_NOT_FOUND); + var message = await _context.Messages + .Where(x => x.StreamKey == conversation.StreamKey) + .OrderByDescending(x => x.SequenceId) + .FirstOrDefaultAsync(); + if(message != null) + { + conversation.UnreadCount = 0; + conversation.LastMessage = message.Content; + conversation.LastReadSequenceId = message.SequenceId; + conversation.LastMessageTime = message.Created; + _context.Conversations.Update(conversation); + await _context.SaveChangesAsync(); + } + + return true; + + } + + public async Task MakeConversationAsync(int userAId, int userBId, ChatType chatType) + { + var userAcExist = await _context.Conversations.AnyAsync(x => x.UserId == userAId && x.TargetId == userBId); + if (userAcExist) return; + var streamKey = chatType == ChatType.PRIVATE ? + StreamKeyBuilder.Private(userAId, userBId) : StreamKeyBuilder.Group(userBId); + var conversation = new Conversation() + { + ChatType = chatType, + LastMessage = "", + LastMessageTime = DateTime.Now, + LastReadSequenceId = null, + StreamKey = streamKey, + TargetId = userBId, + UnreadCount = 0, + UserId = userAId + + }; + _context.Conversations.Add(conversation); + await _context.SaveChangesAsync(); + } + public async Task UpdateConversationAfterSentAsync(UpdateConversationDto dto) + { + var cList = await _context.Conversations.Where(x => x.StreamKey == dto.StreamKey).ToListAsync(); + foreach(var c in cList) + { + bool isSender = dto.SenderId == c.UserId; + c.LastMessage = dto.LastMessage; + c.LastMessageTime = dto.DateTime; + c.LastReadSequenceId = isSender ? dto.LastSequenceId : c.LastReadSequenceId; + c.UnreadCount = isSender ? 0 : c.UnreadCount + 1; + } + _context.Conversations.UpdateRange(cList); + await _context.SaveChangesAsync(); + } + } } \ No newline at end of file diff --git a/backend/IM_API/Services/FriendService.cs b/backend/IM_API/Services/FriendService.cs index 8ed6ba8..a53a441 100644 --- a/backend/IM_API/Services/FriendService.cs +++ b/backend/IM_API/Services/FriendService.cs @@ -1,220 +1,220 @@ -using AutoMapper; -using IM_API.Domain.Events; -using IM_API.Dtos.Friend; -using IM_API.Exceptions; -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.Tools; -using MassTransit; -using Microsoft.EntityFrameworkCore; - -namespace IM_API.Services -{ - public class FriendService : IFriendSerivce - { - private readonly ImContext _context; - private readonly ILogger _logger; - private readonly IMapper _mapper; - private readonly IPublishEndpoint _endpoint; - public FriendService(ImContext context, ILogger logger, IMapper mapper, IPublishEndpoint endpoint) - { - _context = context; - _logger = logger; - _mapper = mapper; - _endpoint = endpoint; - } - #region 拉黑好友 - public async Task BlockeFriendAsync(int friendId) - { - var friend = await _context.Friends.FirstOrDefaultAsync(x => x.Id == friendId); - if (friend == null) throw new BaseException(CodeDefine.FRIEND_RELATION_NOT_FOUND); - friend.StatusEnum = FriendStatus.Blocked; - await _context.SaveChangesAsync(); - return true; - } - #endregion - #region 通过用户id拉黑好友 - public async Task BlockFriendByUserIdAsync(int userId, int toUserId) - { - var friend = await _context.Friends.FirstOrDefaultAsync(x => x.UserId == userId && x.FriendId == toUserId); - if (friend == null) throw new BaseException(CodeDefine.FRIEND_RELATION_NOT_FOUND); - friend.StatusEnum = FriendStatus.Blocked; - await _context.SaveChangesAsync(); - return true; - } - #endregion - #region 删除好友关系 - public async Task DeleteFriendAsync(int friendId) - { - var friend = await _context.Friends.FirstOrDefaultAsync(x => x.Id == friendId); - if (friend is null) throw new BaseException(CodeDefine.FRIEND_RELATION_NOT_FOUND); - _context.Friends.Remove(friend); - await _context.SaveChangesAsync(); - return true; - } - #endregion - #region 通过用户id删除好友关系 - public async Task DeleteFriendByUserIdAsync(int userId, int toUserId) - { - var friend = await _context.Friends.FirstOrDefaultAsync(x => x.UserId == userId && x.FriendId == toUserId); - if (friend is null) throw new BaseException(CodeDefine.FRIEND_RELATION_NOT_FOUND); - _context.Friends.Remove(friend); - await _context.SaveChangesAsync(); - return true; - } - #endregion - #region 获取好友列表 - - public async Task> GetFriendListAsync(int userId, int page, int limit, bool desc) - { - var query = _context.Friends.Include(u => u.FriendNavigation).Where(x => x.UserId == userId && x.Status == (sbyte)FriendStatus.Added); - if (desc) - { - query = query.OrderByDescending(x => x.UserId); - } - var friendList = await query.Skip(((page - 1) * limit)).Take(limit).ToListAsync(); - return _mapper.Map>(friendList); - } - #endregion - #region 获取好友请求列表 - public async Task> GetFriendRequestListAsync(int userId, int page, int limit, bool desc) - { - var query = _context.FriendRequests - .Include(x => x.ResponseUserNavigation) - .Include(x => x.RequestUserNavigation) - .Where( - x => (x.ResponseUser == userId) || - x.RequestUser == userId - ) - .Select(s => new FriendRequestResDto - { - Id = s.Id, - RequestUser = s.RequestUser, - ResponseUser = s.ResponseUser, - Avatar = s.RequestUser == userId ? s.ResponseUserNavigation.Avatar : s.RequestUserNavigation.Avatar, - Created = s.Created, - NickName = s.RequestUser == userId ? s.ResponseUserNavigation.NickName : s.RequestUserNavigation.NickName, - Description = s.Description, - State = (FriendRequestState)s.State - }) - ; - query = query.OrderByDescending(x => x.Id); - var friendRequestList = await query.Skip(((page - 1) * limit)).Take(limit).ToListAsync(); - return friendRequestList; - } - #endregion - #region 处理好友请求 - public async Task HandleFriendRequestAsync(HandleFriendRequestDto requestDto) - { - //查询好友请求记录 - var friendRequest = await _context.FriendRequests - .Include(e => e.ResponseUserNavigation) - .FirstOrDefaultAsync(x => x.Id == requestDto.RequestId); - - if (friendRequest is null) throw new BaseException(CodeDefine.FRIEND_REQUEST_NOT_FOUND); - - //查询好友关系 - var friend = await _context.Friends.FirstOrDefaultAsync( - x => x.UserId == friendRequest.RequestUser && x.FriendId == friendRequest.ResponseUser - ); - if (friend != null) throw new BaseException(CodeDefine.ALREADY_FRIENDS); - //处理好友请求操作 - switch (requestDto.Action) - { - //拒绝后标记 - case HandleFriendRequestAction.Reject: - friendRequest.StateEnum = FriendRequestState.Declined; - break; - - //同意后标记 - case HandleFriendRequestAction.Accept: - friendRequest.StateEnum = FriendRequestState.Passed; - await _endpoint.Publish(new FriendAddEvent() - { - AggregateId = friendRequest.Id.ToString(), - OccurredAt = DateTime.Now, - Created = DateTime.Now, - EventId = Guid.NewGuid(), - OperatorId = friendRequest.ResponseUser, - RequestInfo = _mapper.Map(friendRequest), - requestUserRemarkname = requestDto.RemarkName, - RequestUserId = friendRequest.RequestUser, - ResponseUserId = friendRequest.ResponseUser - - }); - break; - - //无效操作 - default: - throw new BaseException(CodeDefine.INVALID_ACTION); - } - - await _context.SaveChangesAsync(); - return true; - } - #endregion - #region 发起好友请求 - public async Task SendFriendRequestAsync(FriendRequestDto dto) - { - //查询用户是否存在 - bool isExist = await _context.Users.AnyAsync(x => x.Id == dto.ToUserId); - if (!isExist) throw new BaseException(CodeDefine.USER_NOT_FOUND); - bool isExistUser2 = await _context.Users.AnyAsync(x => x.Id == dto.FromUserId); - if(!isExistUser2) throw new BaseException(CodeDefine.USER_NOT_FOUND); - // 检查是否已有好友关系或待处理请求 - bool alreadyExists = await _context.FriendRequests.AnyAsync(x => - x.RequestUser == dto.FromUserId && x.ResponseUser == dto.ToUserId && x.State == (sbyte)FriendRequestState.Pending - ); - if (alreadyExists) - throw new BaseException(CodeDefine.FRIEND_REQUEST_EXISTS); - - var friendShip = await _context.Friends.FirstOrDefaultAsync(x => x.UserId == dto.FromUserId && x.FriendId == dto.ToUserId); - - //检查是否被对方拉黑 - bool isBlocked = friendShip != null && friendShip.StatusEnum == FriendStatus.Blocked; - if (isBlocked) - throw new BaseException(CodeDefine.FRIEND_REQUEST_REJECTED); - if (friendShip != null) - throw new BaseException(CodeDefine.ALREADY_FRIENDS); - //生成实体 - var friendRequst = _mapper.Map(dto); - _context.FriendRequests.Add(friendRequst); - await _context.SaveChangesAsync(); - await _endpoint.Publish(new RequestFriendEvent() - { - AggregateId = friendRequst.Id.ToString(), - OccurredAt = friendRequst.Created.UtcDateTime, - Description = friendRequst.Description, - EventId = Guid.NewGuid(), - FromUserId = friendRequst.RequestUser, - ToUserId = friendRequst.ResponseUser, - OperatorId = friendRequst.RequestUser - }); - return true; - } - #endregion - - #region 创建好友关系 - public async Task MakeFriendshipAsync(int userAId, int userBId, string? remarkName) - { - bool userAexist = await _context.Friends.AnyAsync(x => x.UserId == userAId && x.FriendId == userBId); - if (!userAexist) - { - User? userbInfo = await _context.Users.FirstOrDefaultAsync(x => x.Id == userBId); - if (userbInfo is null) throw new BaseException(CodeDefine.USER_NOT_FOUND); - Friend friendA = new Friend() - { - Avatar = userbInfo.Avatar, - Created = DateTime.Now, - FriendId = userbInfo.Id, - RemarkName = remarkName ?? userbInfo.NickName, - StatusEnum = FriendStatus.Added, - UserId = userAId - }; - _context.Friends.Add(friendA); - await _context.SaveChangesAsync(); - } - } - #endregion - } -} +using AutoMapper; +using IM_API.Domain.Events; +using IM_API.Dtos.Friend; +using IM_API.Exceptions; +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.Tools; +using MassTransit; +using Microsoft.EntityFrameworkCore; + +namespace IM_API.Services +{ + public class FriendService : IFriendSerivce + { + private readonly ImContext _context; + private readonly ILogger _logger; + private readonly IMapper _mapper; + private readonly IPublishEndpoint _endpoint; + public FriendService(ImContext context, ILogger logger, IMapper mapper, IPublishEndpoint endpoint) + { + _context = context; + _logger = logger; + _mapper = mapper; + _endpoint = endpoint; + } + #region 拉黑好友 + public async Task BlockeFriendAsync(int friendId) + { + var friend = await _context.Friends.FirstOrDefaultAsync(x => x.Id == friendId); + if (friend == null) throw new BaseException(CodeDefine.FRIEND_RELATION_NOT_FOUND); + friend.StatusEnum = FriendStatus.Blocked; + await _context.SaveChangesAsync(); + return true; + } + #endregion + #region 通过用户id拉黑好友 + public async Task BlockFriendByUserIdAsync(int userId, int toUserId) + { + var friend = await _context.Friends.FirstOrDefaultAsync(x => x.UserId == userId && x.FriendId == toUserId); + if (friend == null) throw new BaseException(CodeDefine.FRIEND_RELATION_NOT_FOUND); + friend.StatusEnum = FriendStatus.Blocked; + await _context.SaveChangesAsync(); + return true; + } + #endregion + #region 删除好友关系 + public async Task DeleteFriendAsync(int friendId) + { + var friend = await _context.Friends.FirstOrDefaultAsync(x => x.Id == friendId); + if (friend is null) throw new BaseException(CodeDefine.FRIEND_RELATION_NOT_FOUND); + _context.Friends.Remove(friend); + await _context.SaveChangesAsync(); + return true; + } + #endregion + #region 通过用户id删除好友关系 + public async Task DeleteFriendByUserIdAsync(int userId, int toUserId) + { + var friend = await _context.Friends.FirstOrDefaultAsync(x => x.UserId == userId && x.FriendId == toUserId); + if (friend is null) throw new BaseException(CodeDefine.FRIEND_RELATION_NOT_FOUND); + _context.Friends.Remove(friend); + await _context.SaveChangesAsync(); + return true; + } + #endregion + #region 获取好友列表 + + public async Task> GetFriendListAsync(int userId, int page, int limit, bool desc) + { + var query = _context.Friends.Include(u => u.FriendNavigation).Where(x => x.UserId == userId && x.Status == (sbyte)FriendStatus.Added); + if (desc) + { + query = query.OrderByDescending(x => x.UserId); + } + var friendList = await query.Skip(((page - 1) * limit)).Take(limit).ToListAsync(); + return _mapper.Map>(friendList); + } + #endregion + #region 获取好友请求列表 + public async Task> GetFriendRequestListAsync(int userId, int page, int limit, bool desc) + { + var query = _context.FriendRequests + .Include(x => x.ResponseUserNavigation) + .Include(x => x.RequestUserNavigation) + .Where( + x => (x.ResponseUser == userId) || + x.RequestUser == userId + ) + .Select(s => new FriendRequestResDto + { + Id = s.Id, + RequestUser = s.RequestUser, + ResponseUser = s.ResponseUser, + Avatar = s.RequestUser == userId ? s.ResponseUserNavigation.Avatar : s.RequestUserNavigation.Avatar, + Created = s.Created, + NickName = s.RequestUser == userId ? s.ResponseUserNavigation.NickName : s.RequestUserNavigation.NickName, + Description = s.Description, + State = (FriendRequestState)s.State + }) + ; + query = query.OrderByDescending(x => x.Id); + var friendRequestList = await query.Skip(((page - 1) * limit)).Take(limit).ToListAsync(); + return friendRequestList; + } + #endregion + #region 处理好友请求 + public async Task HandleFriendRequestAsync(HandleFriendRequestDto requestDto) + { + //查询好友请求记录 + var friendRequest = await _context.FriendRequests + .Include(e => e.ResponseUserNavigation) + .FirstOrDefaultAsync(x => x.Id == requestDto.RequestId); + + if (friendRequest is null) throw new BaseException(CodeDefine.FRIEND_REQUEST_NOT_FOUND); + + //查询好友关系 + var friend = await _context.Friends.FirstOrDefaultAsync( + x => x.UserId == friendRequest.RequestUser && x.FriendId == friendRequest.ResponseUser + ); + if (friend != null) throw new BaseException(CodeDefine.ALREADY_FRIENDS); + //处理好友请求操作 + switch (requestDto.Action) + { + //拒绝后标记 + case HandleFriendRequestAction.Reject: + friendRequest.StateEnum = FriendRequestState.Declined; + break; + + //同意后标记 + case HandleFriendRequestAction.Accept: + friendRequest.StateEnum = FriendRequestState.Passed; + await _endpoint.Publish(new FriendAddEvent() + { + AggregateId = friendRequest.Id.ToString(), + OccurredAt = DateTime.Now, + Created = DateTime.Now, + EventId = Guid.NewGuid(), + OperatorId = friendRequest.ResponseUser, + RequestInfo = _mapper.Map(friendRequest), + requestUserRemarkname = requestDto.RemarkName, + RequestUserId = friendRequest.RequestUser, + ResponseUserId = friendRequest.ResponseUser + + }); + break; + + //无效操作 + default: + throw new BaseException(CodeDefine.INVALID_ACTION); + } + + await _context.SaveChangesAsync(); + return true; + } + #endregion + #region 发起好友请求 + public async Task SendFriendRequestAsync(FriendRequestDto dto) + { + //查询用户是否存在 + bool isExist = await _context.Users.AnyAsync(x => x.Id == dto.ToUserId); + if (!isExist) throw new BaseException(CodeDefine.USER_NOT_FOUND); + bool isExistUser2 = await _context.Users.AnyAsync(x => x.Id == dto.FromUserId); + if(!isExistUser2) throw new BaseException(CodeDefine.USER_NOT_FOUND); + // 检查是否已有好友关系或待处理请求 + bool alreadyExists = await _context.FriendRequests.AnyAsync(x => + x.RequestUser == dto.FromUserId && x.ResponseUser == dto.ToUserId && x.State == (sbyte)FriendRequestState.Pending + ); + if (alreadyExists) + throw new BaseException(CodeDefine.FRIEND_REQUEST_EXISTS); + + var friendShip = await _context.Friends.FirstOrDefaultAsync(x => x.UserId == dto.FromUserId && x.FriendId == dto.ToUserId); + + //检查是否被对方拉黑 + bool isBlocked = friendShip != null && friendShip.StatusEnum == FriendStatus.Blocked; + if (isBlocked) + throw new BaseException(CodeDefine.FRIEND_REQUEST_REJECTED); + if (friendShip != null) + throw new BaseException(CodeDefine.ALREADY_FRIENDS); + //生成实体 + var friendRequst = _mapper.Map(dto); + _context.FriendRequests.Add(friendRequst); + await _context.SaveChangesAsync(); + await _endpoint.Publish(new RequestFriendEvent() + { + AggregateId = friendRequst.Id.ToString(), + OccurredAt = friendRequst.Created.UtcDateTime, + Description = friendRequst.Description, + EventId = Guid.NewGuid(), + FromUserId = friendRequst.RequestUser, + ToUserId = friendRequst.ResponseUser, + OperatorId = friendRequst.RequestUser + }); + return true; + } + #endregion + + #region 创建好友关系 + public async Task MakeFriendshipAsync(int userAId, int userBId, string? remarkName) + { + bool userAexist = await _context.Friends.AnyAsync(x => x.UserId == userAId && x.FriendId == userBId); + if (!userAexist) + { + User? userbInfo = await _context.Users.FirstOrDefaultAsync(x => x.Id == userBId); + if (userbInfo is null) throw new BaseException(CodeDefine.USER_NOT_FOUND); + Friend friendA = new Friend() + { + Avatar = userbInfo.Avatar, + Created = DateTime.Now, + FriendId = userbInfo.Id, + RemarkName = remarkName ?? userbInfo.NickName, + StatusEnum = FriendStatus.Added, + UserId = userAId + }; + _context.Friends.Add(friendA); + await _context.SaveChangesAsync(); + } + } + #endregion + } +} diff --git a/backend/IM_API/Services/GroupService.cs b/backend/IM_API/Services/GroupService.cs index c78ebb9..85c0bb1 100644 --- a/backend/IM_API/Services/GroupService.cs +++ b/backend/IM_API/Services/GroupService.cs @@ -1,251 +1,251 @@ -using AutoMapper; -using AutoMapper.QueryableExtensions; -using IM_API.Domain.Events; -using IM_API.Dtos.Group; -using IM_API.Exceptions; -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.Tools; -using MassTransit; -using Microsoft.EntityFrameworkCore; -using System; - -namespace IM_API.Services -{ - public class GroupService : IGroupService - { - private readonly ImContext _context; - private readonly IMapper _mapper; - private readonly ILogger _logger; - private readonly IPublishEndpoint _endPoint; - private readonly IUserService _userService; - public GroupService(ImContext context, IMapper mapper, ILogger logger, - IPublishEndpoint publishEndpoint, IUserService userService) - { - _context = context; - _mapper = mapper; - _logger = logger; - _endPoint = publishEndpoint; - _userService = userService; - } - - private async Task> validFriendshipAsync (int userId, List ids) - { - DateTime dateTime = DateTime.UtcNow; - //验证被邀请用户是否为好友 - return await _context.Friends - .Where(f => f.UserId == userId && ids.Contains(f.FriendId)) - .Select(f => f.FriendId) - .ToListAsync(); - } - - public async Task CreateGroupAsync(int userId, GroupCreateDto groupCreateDto) - { - List userIds = groupCreateDto.UserIDs ?? []; - using var transaction = await _context.Database.BeginTransactionAsync(); - try - { - //先创建群 - DateTime dateTime = DateTime.Now; - Group group = _mapper.Map(groupCreateDto); - group.GroupMaster = userId; - _context.Groups.Add(group); - await _context.SaveChangesAsync(); - if (userIds.Count > 0) - { - //邀请好友 - await InviteUsersAsync(userId, group.Id ,userIds); - } - await transaction.CommitAsync(); - await _endPoint.Publish(new GroupJoinEvent - { - EventId = Guid.NewGuid(), - AggregateId = userId.ToString(), - GroupId = group.Id, - OccurredAt = dateTime, - OperatorId = userId, - UserId = userId, - IsCreated = true - }); - return _mapper.Map(group); - } - catch - { - await transaction.RollbackAsync(); - throw; - } - } - - public Task DeleteGroupAsync(int userId, int groupId) - { - throw new NotImplementedException(); - } - - public async Task InviteUsersAsync(int userId, int groupId, List userIds) - { - var group = await _context.Groups.FirstOrDefaultAsync( - x => x.Id == groupId) ?? throw new BaseException(CodeDefine.GROUP_NOT_FOUND); - //过滤非好友 - var groupInviteIds = await validFriendshipAsync(userId, userIds); - var inviteList = groupInviteIds.Select(id => new GroupInvite - { - Created = DateTime.UtcNow, - GroupId = group.Id, - InviteUser = userId, - InvitedUser = id, - StateEnum = GroupInviteState.Pending - }).ToList(); - _context.GroupInvites.AddRange(inviteList); - await _context.SaveChangesAsync(); - await _endPoint.Publish(new GroupInviteEvent - { - GroupId = groupId, - AggregateId = userId.ToString(), - OccurredAt = DateTime.UtcNow, - EventId = Guid.NewGuid(), - Ids = userIds, - OperatorId = userId, - UserId = userId - }); - } - - public async Task MakeGroupMemberAsync(int userId, int groupId ,GroupMemberRole? role) - { - var isExist = await _context.GroupMembers.AnyAsync(x => x.GroupId == groupId && x.UserId == userId); - if (isExist) return; - var groupMember = new GroupMember - { - UserId = userId, - Created = DateTime.UtcNow, - RoleEnum = role ?? GroupMemberRole.Normal, - GroupId = groupId - }; - _context.GroupMembers.Add(groupMember); - await _context.SaveChangesAsync(); - } - - public Task JoinGroupAsync(int userId, int groupId) - { - throw new NotImplementedException(); - } - - public async Task> GetGroupListAsync(int userId, int page, int limit, bool desc) - { - var query = _context.GroupMembers - .Where(x => x.UserId == userId) - .Select(s => s.Group); - if (desc) - { - query = query.OrderByDescending(x => x.Id); - } - var list = await query - .Skip((page - 1) * limit) - .Take(limit) - .ProjectTo(_mapper.ConfigurationProvider) - .ToListAsync(); - return list; - } - public async Task UpdateGroupConversationAsync(GroupUpdateConversationDto dto) - { - var group = await _context.Groups.FirstOrDefaultAsync(x => x.Id == dto.GroupId); - if (group is null) return; - group.LastMessage = dto.LastMessage; - group.MaxSequenceId = dto.MaxSequenceId; - group.LastSenderName = dto.LastSenderName; - group.LastUpdateTime = dto.LastUpdateTime; - _context.Groups.Update(group); - await _context.SaveChangesAsync(); - } - public async Task HandleGroupInviteAsync(int userid, HandleGroupInviteDto dto) - { - var user = _userService.GetUserInfoAsync(userid); - var inviteInfo = await _context.GroupInvites.FirstOrDefaultAsync(x => x.Id == dto.InviteId) - ?? throw new BaseException(CodeDefine.INVALID_ACTION); - if (inviteInfo.InvitedUser != userid) throw new BaseException(CodeDefine.AUTH_FAILED); - inviteInfo.StateEnum = dto.Action; - _context.GroupInvites.Update(inviteInfo); - await _context.SaveChangesAsync(); - await _endPoint.Publish(new GroupInviteActionUpdateEvent - { - Action = dto.Action, - AggregateId = userid.ToString(), - OccurredAt = DateTime.UtcNow, - EventId = Guid.NewGuid(), - GroupId = inviteInfo.GroupId, - InviteId = inviteInfo.Id, - InviteUserId = inviteInfo.InviteUser.Value, - OperatorId = userid, - UserId = userid - - }); - } - public async Task HandleGroupRequestAsync(int userid, HandleGroupRequestDto dto) - { - var user = _userService.GetUserInfoAsync(userid); - //判断请求存在 - var requestInfo = await _context.GroupRequests.FirstOrDefaultAsync(x => x.Id == dto.RequestId) - ?? throw new BaseException(CodeDefine.INVALID_ACTION); - //判断成员存在 - var memberInfo = await _context.GroupMembers.FirstOrDefaultAsync(x => x.UserId == userid) - ?? throw new BaseException(CodeDefine.NO_GROUP_PERMISSION); - //判断成员权限 - if (memberInfo.RoleEnum != GroupMemberRole.Master && memberInfo.RoleEnum != GroupMemberRole.Administrator) - throw new BaseException(CodeDefine.NO_GROUP_PERMISSION); - - requestInfo.StateEnum = dto.Action; - _context.GroupRequests.Update(requestInfo); - await _context.SaveChangesAsync(); - - await _endPoint.Publish(new GroupRequestUpdateEvent - { - Action = requestInfo.StateEnum, - AdminUserId = userid, - AggregateId = userid.ToString(), - OccurredAt = DateTime.UtcNow, - EventId = Guid.NewGuid(), - GroupId = requestInfo.GroupId, - OperatorId = userid, - UserId = requestInfo.UserId, - RequestId = requestInfo.Id - }); - } - public async Task MakeGroupRequestAsync(int userId, int? adminUserId, int groupId) - { - var requestInfo = await _context.GroupRequests - .FirstOrDefaultAsync(x => x.UserId == userId && x.GroupId == groupId); - if (requestInfo != null) return; - - var member = await _context.GroupMembers.FirstOrDefaultAsync( - x => x.UserId == adminUserId && x.GroupId == groupId); - var request = new GroupRequest - { - Created = DateTime.UtcNow, - Description = string.Empty, - GroupId = groupId, - UserId = userId, - StateEnum = GroupRequestState.Pending - }; - if(member != null && ( - member.RoleEnum == GroupMemberRole.Administrator || member.RoleEnum == GroupMemberRole.Master)) - { - request.StateEnum = GroupRequestState.Passed; - } - - _context.GroupRequests.Add(request); - await _context.SaveChangesAsync(); - - await _endPoint.Publish(new GroupRequestEvent - { - OccurredAt = DateTime.UtcNow, - Description = request.Description, - GroupId = request.GroupId, - Action = request.StateEnum, - UserId = userId, - AggregateId = userId.ToString(), - EventId = Guid.NewGuid(), - OperatorId = userId - }); - return; - } - } -} +using AutoMapper; +using AutoMapper.QueryableExtensions; +using IM_API.Domain.Events; +using IM_API.Dtos.Group; +using IM_API.Exceptions; +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.Tools; +using MassTransit; +using Microsoft.EntityFrameworkCore; +using System; + +namespace IM_API.Services +{ + public class GroupService : IGroupService + { + private readonly ImContext _context; + private readonly IMapper _mapper; + private readonly ILogger _logger; + private readonly IPublishEndpoint _endPoint; + private readonly IUserService _userService; + public GroupService(ImContext context, IMapper mapper, ILogger logger, + IPublishEndpoint publishEndpoint, IUserService userService) + { + _context = context; + _mapper = mapper; + _logger = logger; + _endPoint = publishEndpoint; + _userService = userService; + } + + private async Task> validFriendshipAsync (int userId, List ids) + { + DateTime dateTime = DateTime.UtcNow; + //验证被邀请用户是否为好友 + return await _context.Friends + .Where(f => f.UserId == userId && ids.Contains(f.FriendId)) + .Select(f => f.FriendId) + .ToListAsync(); + } + + public async Task CreateGroupAsync(int userId, GroupCreateDto groupCreateDto) + { + List userIds = groupCreateDto.UserIDs ?? []; + using var transaction = await _context.Database.BeginTransactionAsync(); + try + { + //先创建群 + DateTime dateTime = DateTime.Now; + Group group = _mapper.Map(groupCreateDto); + group.GroupMaster = userId; + _context.Groups.Add(group); + await _context.SaveChangesAsync(); + if (userIds.Count > 0) + { + //邀请好友 + await InviteUsersAsync(userId, group.Id ,userIds); + } + await transaction.CommitAsync(); + await _endPoint.Publish(new GroupJoinEvent + { + EventId = Guid.NewGuid(), + AggregateId = userId.ToString(), + GroupId = group.Id, + OccurredAt = dateTime, + OperatorId = userId, + UserId = userId, + IsCreated = true + }); + return _mapper.Map(group); + } + catch + { + await transaction.RollbackAsync(); + throw; + } + } + + public Task DeleteGroupAsync(int userId, int groupId) + { + throw new NotImplementedException(); + } + + public async Task InviteUsersAsync(int userId, int groupId, List userIds) + { + var group = await _context.Groups.FirstOrDefaultAsync( + x => x.Id == groupId) ?? throw new BaseException(CodeDefine.GROUP_NOT_FOUND); + //过滤非好友 + var groupInviteIds = await validFriendshipAsync(userId, userIds); + var inviteList = groupInviteIds.Select(id => new GroupInvite + { + Created = DateTime.UtcNow, + GroupId = group.Id, + InviteUser = userId, + InvitedUser = id, + StateEnum = GroupInviteState.Pending + }).ToList(); + _context.GroupInvites.AddRange(inviteList); + await _context.SaveChangesAsync(); + await _endPoint.Publish(new GroupInviteEvent + { + GroupId = groupId, + AggregateId = userId.ToString(), + OccurredAt = DateTime.UtcNow, + EventId = Guid.NewGuid(), + Ids = userIds, + OperatorId = userId, + UserId = userId + }); + } + + public async Task MakeGroupMemberAsync(int userId, int groupId ,GroupMemberRole? role) + { + var isExist = await _context.GroupMembers.AnyAsync(x => x.GroupId == groupId && x.UserId == userId); + if (isExist) return; + var groupMember = new GroupMember + { + UserId = userId, + Created = DateTime.UtcNow, + RoleEnum = role ?? GroupMemberRole.Normal, + GroupId = groupId + }; + _context.GroupMembers.Add(groupMember); + await _context.SaveChangesAsync(); + } + + public Task JoinGroupAsync(int userId, int groupId) + { + throw new NotImplementedException(); + } + + public async Task> GetGroupListAsync(int userId, int page, int limit, bool desc) + { + var query = _context.GroupMembers + .Where(x => x.UserId == userId) + .Select(s => s.Group); + if (desc) + { + query = query.OrderByDescending(x => x.Id); + } + var list = await query + .Skip((page - 1) * limit) + .Take(limit) + .ProjectTo(_mapper.ConfigurationProvider) + .ToListAsync(); + return list; + } + public async Task UpdateGroupConversationAsync(GroupUpdateConversationDto dto) + { + var group = await _context.Groups.FirstOrDefaultAsync(x => x.Id == dto.GroupId); + if (group is null) return; + group.LastMessage = dto.LastMessage; + group.MaxSequenceId = dto.MaxSequenceId; + group.LastSenderName = dto.LastSenderName; + group.LastUpdateTime = dto.LastUpdateTime; + _context.Groups.Update(group); + await _context.SaveChangesAsync(); + } + public async Task HandleGroupInviteAsync(int userid, HandleGroupInviteDto dto) + { + var user = _userService.GetUserInfoAsync(userid); + var inviteInfo = await _context.GroupInvites.FirstOrDefaultAsync(x => x.Id == dto.InviteId) + ?? throw new BaseException(CodeDefine.INVALID_ACTION); + if (inviteInfo.InvitedUser != userid) throw new BaseException(CodeDefine.AUTH_FAILED); + inviteInfo.StateEnum = dto.Action; + _context.GroupInvites.Update(inviteInfo); + await _context.SaveChangesAsync(); + await _endPoint.Publish(new GroupInviteActionUpdateEvent + { + Action = dto.Action, + AggregateId = userid.ToString(), + OccurredAt = DateTime.UtcNow, + EventId = Guid.NewGuid(), + GroupId = inviteInfo.GroupId, + InviteId = inviteInfo.Id, + InviteUserId = inviteInfo.InviteUser.Value, + OperatorId = userid, + UserId = userid + + }); + } + public async Task HandleGroupRequestAsync(int userid, HandleGroupRequestDto dto) + { + var user = _userService.GetUserInfoAsync(userid); + //判断请求存在 + var requestInfo = await _context.GroupRequests.FirstOrDefaultAsync(x => x.Id == dto.RequestId) + ?? throw new BaseException(CodeDefine.INVALID_ACTION); + //判断成员存在 + var memberInfo = await _context.GroupMembers.FirstOrDefaultAsync(x => x.UserId == userid) + ?? throw new BaseException(CodeDefine.NO_GROUP_PERMISSION); + //判断成员权限 + if (memberInfo.RoleEnum != GroupMemberRole.Master && memberInfo.RoleEnum != GroupMemberRole.Administrator) + throw new BaseException(CodeDefine.NO_GROUP_PERMISSION); + + requestInfo.StateEnum = dto.Action; + _context.GroupRequests.Update(requestInfo); + await _context.SaveChangesAsync(); + + await _endPoint.Publish(new GroupRequestUpdateEvent + { + Action = requestInfo.StateEnum, + AdminUserId = userid, + AggregateId = userid.ToString(), + OccurredAt = DateTime.UtcNow, + EventId = Guid.NewGuid(), + GroupId = requestInfo.GroupId, + OperatorId = userid, + UserId = requestInfo.UserId, + RequestId = requestInfo.Id + }); + } + public async Task MakeGroupRequestAsync(int userId, int? adminUserId, int groupId) + { + var requestInfo = await _context.GroupRequests + .FirstOrDefaultAsync(x => x.UserId == userId && x.GroupId == groupId); + if (requestInfo != null) return; + + var member = await _context.GroupMembers.FirstOrDefaultAsync( + x => x.UserId == adminUserId && x.GroupId == groupId); + var request = new GroupRequest + { + Created = DateTime.UtcNow, + Description = string.Empty, + GroupId = groupId, + UserId = userId, + StateEnum = GroupRequestState.Pending + }; + if(member != null && ( + member.RoleEnum == GroupMemberRole.Administrator || member.RoleEnum == GroupMemberRole.Master)) + { + request.StateEnum = GroupRequestState.Passed; + } + + _context.GroupRequests.Add(request); + await _context.SaveChangesAsync(); + + await _endPoint.Publish(new GroupRequestEvent + { + OccurredAt = DateTime.UtcNow, + Description = request.Description, + GroupId = request.GroupId, + Action = request.StateEnum, + UserId = userId, + AggregateId = userId.ToString(), + EventId = Guid.NewGuid(), + OperatorId = userId + }); + return; + } + } +} diff --git a/backend/IM_API/Services/JWTService.cs b/backend/IM_API/Services/JWTService.cs index 030beb4..aec98cd 100644 --- a/backend/IM_API/Services/JWTService.cs +++ b/backend/IM_API/Services/JWTService.cs @@ -1,55 +1,55 @@ -using IM_API.Interface.Services; -using Microsoft.IdentityModel.Tokens; -using System.IdentityModel.Tokens.Jwt; -using System.Security.Claims; -using System.Text; - -namespace IM_API.Services -{ - public class JWTService : IJWTService - { - private readonly IConfiguration _config; - private readonly string _key; - private readonly string _issuer; - private readonly string _audience; - private readonly int _accessMinutes; - - public JWTService(IConfiguration config) - { - _config = config; - _key = _config["Jwt:Key"]!; - _issuer = _config["Jwt:Issuer"]!; - _audience = _config["Jwt:Audience"]!; - _accessMinutes = int.Parse(_config["Jwt:AccessTokenMinutes"] ?? "15"); - } - - public string GenerateAccessToken(IEnumerable claims, DateTime expiresAt) - { - var keyBytes = Encoding.UTF8.GetBytes(_key); - var creds = new SigningCredentials(new SymmetricSecurityKey(keyBytes), SecurityAlgorithms.HmacSha256); - - var token = new JwtSecurityToken( - issuer: _issuer, - audience: _audience, - claims: claims, - expires: expiresAt, - signingCredentials: creds - ); - - return new JwtSecurityTokenHandler().WriteToken(token); - } - - public (string token, DateTime expiresAt) CreateAccessTokenForUser(int userId, string username, string role) - { - var expiresAt = DateTime.Now.AddMinutes(_accessMinutes); - var claims = new[] - { - new Claim(JwtRegisteredClaimNames.Sub, userId.ToString()), - new Claim(ClaimTypes.Name, username), - new Claim(ClaimTypes.Role, role) - }; - var token = GenerateAccessToken(claims, expiresAt); - return (token, expiresAt); - } - } -} +using IM_API.Interface.Services; +using Microsoft.IdentityModel.Tokens; +using System.IdentityModel.Tokens.Jwt; +using System.Security.Claims; +using System.Text; + +namespace IM_API.Services +{ + public class JWTService : IJWTService + { + private readonly IConfiguration _config; + private readonly string _key; + private readonly string _issuer; + private readonly string _audience; + private readonly int _accessMinutes; + + public JWTService(IConfiguration config) + { + _config = config; + _key = _config["Jwt:Key"]!; + _issuer = _config["Jwt:Issuer"]!; + _audience = _config["Jwt:Audience"]!; + _accessMinutes = int.Parse(_config["Jwt:AccessTokenMinutes"] ?? "15"); + } + + public string GenerateAccessToken(IEnumerable claims, DateTime expiresAt) + { + var keyBytes = Encoding.UTF8.GetBytes(_key); + var creds = new SigningCredentials(new SymmetricSecurityKey(keyBytes), SecurityAlgorithms.HmacSha256); + + var token = new JwtSecurityToken( + issuer: _issuer, + audience: _audience, + claims: claims, + expires: expiresAt, + signingCredentials: creds + ); + + return new JwtSecurityTokenHandler().WriteToken(token); + } + + public (string token, DateTime expiresAt) CreateAccessTokenForUser(int userId, string username, string role) + { + var expiresAt = DateTime.Now.AddMinutes(_accessMinutes); + var claims = new[] + { + new Claim(JwtRegisteredClaimNames.Sub, userId.ToString()), + new Claim(ClaimTypes.Name, username), + new Claim(ClaimTypes.Role, role) + }; + var token = GenerateAccessToken(claims, expiresAt); + return (token, expiresAt); + } + } +} diff --git a/backend/IM_API/Services/MessageService.cs b/backend/IM_API/Services/MessageService.cs index 07b0528..2ca00e7 100644 --- a/backend/IM_API/Services/MessageService.cs +++ b/backend/IM_API/Services/MessageService.cs @@ -1,164 +1,164 @@ -using AutoMapper; -using IM_API.Application.Interfaces; -using IM_API.Domain.Events; -using IM_API.Dtos; -using IM_API.Dtos.Message; -using IM_API.Exceptions; -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.Tools; -using IM_API.VOs.Message; -using MassTransit; -using Microsoft.EntityFrameworkCore; -using StackExchange.Redis; -using System.Text.Json; -using System.Text.RegularExpressions; -using static MassTransit.Monitoring.Performance.BuiltInCounters; -using static Microsoft.EntityFrameworkCore.DbLoggerCategory; - -namespace IM_API.Services -{ - public class MessageService : IMessageSevice - { - private readonly ImContext _context; - private readonly ILogger _logger; - private readonly IMapper _mapper; - //废弃,此处已使用rabbitMQ替代 - //private readonly IEventBus _eventBus; - private readonly IPublishEndpoint _endpoint; - private readonly ISequenceIdService _sequenceIdService; - private readonly IUserService _userService; - public MessageService( - ImContext context, ILogger logger, IMapper mapper, - IPublishEndpoint publishEndpoint, ISequenceIdService sequenceIdService, - IUserService userService - ) - { - _context = context; - _logger = logger; - _mapper = mapper; - //_eventBus = eventBus; - _endpoint = publishEndpoint; - _sequenceIdService = sequenceIdService; - _userService = userService; - } - - public async Task> GetMessagesAsync(int userId,MessageQueryDto dto) - { - //获取会话信息,用于获取双方聊天的唯一标识streamkey - Conversation? conversation = await _context.Conversations.FirstOrDefaultAsync( - x => x.Id == dto.ConversationId && x.UserId == userId - ); - if (conversation is null) throw new BaseException(CodeDefine.CONVERSATION_NOT_FOUND); - - var baseQuery = _context.Messages.Where(x => x.StreamKey == conversation.StreamKey); - List messages = new List(); - if (dto.Direction == 0) // Before: 找比锚点小的,按倒序排 - { - if (dto.Cursor.HasValue) - baseQuery = baseQuery.Where(m => m.SequenceId < dto.Cursor.Value); - - var list = await baseQuery - .OrderByDescending(m => m.SequenceId) // 最新消息在最前 - .Take(dto.Limit) - .Select(m => _mapper.Map(m)) - .ToListAsync(); - - messages = list.OrderBy(s => s.SequenceId).ToList(); - } - else // After: 找比锚点大的,按正序排(用于补洞或刷新) - { - // 如果 Cursor 为空且是 After,逻辑上说不通,通常直接返回空或报错 - if (!dto.Cursor.HasValue) return new List(); - - messages = await baseQuery - .Where(m => m.SequenceId > dto.Cursor.Value) - .OrderBy(m => m.SequenceId) // 按时间线正序 - .Take(dto.Limit) - .Select(m => _mapper.Map(m)) - .ToListAsync(); - } - //取发送者信息,用于前端展示 - if(messages.Count > 0) - { - var ids = messages - .Select(s => s.SenderId) - .Distinct() - .ToList(); - var userinfoList = await _userService.GetUserInfoListAsync(ids); - // 转为字典,提高查询效率 - var userDict = userinfoList.ToDictionary(x => x.Id, x => x); - - foreach (var item in messages) - { - if(userDict.TryGetValue(item.SenderId, out var user)) - { - item.SenderName = user.NickName; - item.SenderAvatar = user.Avatar ?? ""; - } - } - } - return messages; - } - - public Task GetUnreadCountAsync(int userId) - { - throw new NotImplementedException(); - } - - public Task> GetUnreadMessagesAsync(int userId) - { - throw new NotImplementedException(); - } - - public Task MarkAsReadAsync(int userId, long messageId) - { - throw new NotImplementedException(); - } - - public Task MarkConversationAsReadAsync(int userId, int? userBId, int? groupId) - { - throw new NotImplementedException(); - } - - public Task RecallMessageAsync(int userId, int messageId) - { - throw new NotImplementedException(); - } - - public async Task MakeMessageAsync(Message message) - { - _context.Messages.Add(message); - await _context.SaveChangesAsync(); - } - #region 发送群消息 - public async Task SendGroupMessageAsync(int senderId, int groupId, MessageBaseDto dto) - { - //判断群存在 - var isExist = await _context.Groups.AnyAsync(x => x.Id == groupId); - if (!isExist) throw new BaseException(CodeDefine.GROUP_NOT_FOUND); - //判断是否是群成员 - var isMember = await _context.GroupMembers.AnyAsync(x => x.GroupId == groupId && x.UserId == senderId); - if (!isMember) throw new BaseException(CodeDefine.NO_GROUP_PERMISSION); - var message = _mapper.Map(dto); - message.StreamKey = StreamKeyBuilder.Group(groupId); - message.SequenceId = await _sequenceIdService.GetNextSquenceIdAsync(message.StreamKey); - await _endpoint.Publish(_mapper.Map(message)); - return _mapper.Map(message); - - } - #endregion - #region 发送私聊消息 - public async Task SendPrivateMessageAsync(int senderId, int receiverId, MessageBaseDto dto) - { - bool isExist = await _context.Friends.AnyAsync(x => x.FriendId == receiverId); - if (!isExist) throw new BaseException(CodeDefine.FRIEND_RELATION_NOT_FOUND); - var message = _mapper.Map(dto); - message.StreamKey = StreamKeyBuilder.Private(senderId, receiverId); - message.SequenceId = await _sequenceIdService.GetNextSquenceIdAsync(message.StreamKey); - await _endpoint.Publish(_mapper.Map(message)); - return _mapper.Map(message); - } - #endregion - } -} +using AutoMapper; +using IM_API.Application.Interfaces; +using IM_API.Domain.Events; +using IM_API.Dtos; +using IM_API.Dtos.Message; +using IM_API.Exceptions; +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.Tools; +using IM_API.VOs.Message; +using MassTransit; +using Microsoft.EntityFrameworkCore; +using StackExchange.Redis; +using System.Text.Json; +using System.Text.RegularExpressions; +using static MassTransit.Monitoring.Performance.BuiltInCounters; +using static Microsoft.EntityFrameworkCore.DbLoggerCategory; + +namespace IM_API.Services +{ + public class MessageService : IMessageSevice + { + private readonly ImContext _context; + private readonly ILogger _logger; + private readonly IMapper _mapper; + //废弃,此处已使用rabbitMQ替代 + //private readonly IEventBus _eventBus; + private readonly IPublishEndpoint _endpoint; + private readonly ISequenceIdService _sequenceIdService; + private readonly IUserService _userService; + public MessageService( + ImContext context, ILogger logger, IMapper mapper, + IPublishEndpoint publishEndpoint, ISequenceIdService sequenceIdService, + IUserService userService + ) + { + _context = context; + _logger = logger; + _mapper = mapper; + //_eventBus = eventBus; + _endpoint = publishEndpoint; + _sequenceIdService = sequenceIdService; + _userService = userService; + } + + public async Task> GetMessagesAsync(int userId,MessageQueryDto dto) + { + //获取会话信息,用于获取双方聊天的唯一标识streamkey + Conversation? conversation = await _context.Conversations.FirstOrDefaultAsync( + x => x.Id == dto.ConversationId && x.UserId == userId + ); + if (conversation is null) throw new BaseException(CodeDefine.CONVERSATION_NOT_FOUND); + + var baseQuery = _context.Messages.Where(x => x.StreamKey == conversation.StreamKey); + List messages = new List(); + if (dto.Direction == 0) // Before: 找比锚点小的,按倒序排 + { + if (dto.Cursor.HasValue) + baseQuery = baseQuery.Where(m => m.SequenceId < dto.Cursor.Value); + + var list = await baseQuery + .OrderByDescending(m => m.SequenceId) // 最新消息在最前 + .Take(dto.Limit) + .Select(m => _mapper.Map(m)) + .ToListAsync(); + + messages = list.OrderBy(s => s.SequenceId).ToList(); + } + else // After: 找比锚点大的,按正序排(用于补洞或刷新) + { + // 如果 Cursor 为空且是 After,逻辑上说不通,通常直接返回空或报错 + if (!dto.Cursor.HasValue) return new List(); + + messages = await baseQuery + .Where(m => m.SequenceId > dto.Cursor.Value) + .OrderBy(m => m.SequenceId) // 按时间线正序 + .Take(dto.Limit) + .Select(m => _mapper.Map(m)) + .ToListAsync(); + } + //取发送者信息,用于前端展示 + if(messages.Count > 0) + { + var ids = messages + .Select(s => s.SenderId) + .Distinct() + .ToList(); + var userinfoList = await _userService.GetUserInfoListAsync(ids); + // 转为字典,提高查询效率 + var userDict = userinfoList.ToDictionary(x => x.Id, x => x); + + foreach (var item in messages) + { + if(userDict.TryGetValue(item.SenderId, out var user)) + { + item.SenderName = user.NickName; + item.SenderAvatar = user.Avatar ?? ""; + } + } + } + return messages; + } + + public Task GetUnreadCountAsync(int userId) + { + throw new NotImplementedException(); + } + + public Task> GetUnreadMessagesAsync(int userId) + { + throw new NotImplementedException(); + } + + public Task MarkAsReadAsync(int userId, long messageId) + { + throw new NotImplementedException(); + } + + public Task MarkConversationAsReadAsync(int userId, int? userBId, int? groupId) + { + throw new NotImplementedException(); + } + + public Task RecallMessageAsync(int userId, int messageId) + { + throw new NotImplementedException(); + } + + public async Task MakeMessageAsync(Message message) + { + _context.Messages.Add(message); + await _context.SaveChangesAsync(); + } + #region 发送群消息 + public async Task SendGroupMessageAsync(int senderId, int groupId, MessageBaseDto dto) + { + //判断群存在 + var isExist = await _context.Groups.AnyAsync(x => x.Id == groupId); + if (!isExist) throw new BaseException(CodeDefine.GROUP_NOT_FOUND); + //判断是否是群成员 + var isMember = await _context.GroupMembers.AnyAsync(x => x.GroupId == groupId && x.UserId == senderId); + if (!isMember) throw new BaseException(CodeDefine.NO_GROUP_PERMISSION); + var message = _mapper.Map(dto); + message.StreamKey = StreamKeyBuilder.Group(groupId); + message.SequenceId = await _sequenceIdService.GetNextSquenceIdAsync(message.StreamKey); + await _endpoint.Publish(_mapper.Map(message)); + return _mapper.Map(message); + + } + #endregion + #region 发送私聊消息 + public async Task SendPrivateMessageAsync(int senderId, int receiverId, MessageBaseDto dto) + { + bool isExist = await _context.Friends.AnyAsync(x => x.FriendId == receiverId); + if (!isExist) throw new BaseException(CodeDefine.FRIEND_RELATION_NOT_FOUND); + var message = _mapper.Map(dto); + message.StreamKey = StreamKeyBuilder.Private(senderId, receiverId); + message.SequenceId = await _sequenceIdService.GetNextSquenceIdAsync(message.StreamKey); + await _endpoint.Publish(_mapper.Map(message)); + return _mapper.Map(message); + } + #endregion + } +} diff --git a/backend/IM_API/Services/RedisCacheService.cs b/backend/IM_API/Services/RedisCacheService.cs index b6bb9a9..383fdca 100644 --- a/backend/IM_API/Services/RedisCacheService.cs +++ b/backend/IM_API/Services/RedisCacheService.cs @@ -1,62 +1,62 @@ -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.Tools; -using Microsoft.Extensions.Caching.Distributed; -using System.Text.Json; - -namespace IM_API.Services -{ - public class RedisCacheService:ICacheService - { - private readonly IDistributedCache _cache; - public RedisCacheService(IDistributedCache cache) - { - _cache = cache; - } - - public async Task GetAsync(string key) - { - var valueBytes= await _cache.GetAsync(key); - if (valueBytes is null || valueBytes.Length == 0) return default; - return JsonSerializer.Deserialize(valueBytes); - } - - public async Task GetUserCacheAsync(string username) - { - var usernameKey = RedisKeys.GetUserinfoKeyByUsername(username); - var userid = await GetAsync(usernameKey); - if (userid is null) return default; - var key = RedisKeys.GetUserinfoKey(userid); - return await GetAsync(key); - } - - public async Task RemoveAsync(string key) => await _cache.RemoveAsync(key); - - public async Task RemoveUserCacheAsync(string username) - { - var usernameKey = RedisKeys.GetUserinfoKeyByUsername(username); - var userid = await GetAsync(usernameKey); - if (userid is null) return; - var key = RedisKeys.GetUserinfoKey(userid); - await RemoveAsync(key); - } - - public async Task SetAsync(string key, T value, TimeSpan? expiration = null) - { - var options = new DistributedCacheEntryOptions - { - AbsoluteExpirationRelativeToNow = expiration ?? TimeSpan.FromHours(1) - }; - var valueBytes = JsonSerializer.SerializeToUtf8Bytes(value); - await _cache.SetAsync(key, valueBytes, options); - } - - public async Task SetUserCacheAsync(User user) - { - var idKey = RedisKeys.GetUserinfoKey(user.Id.ToString()); - await SetAsync(idKey, user); - var usernameKey = RedisKeys.GetUserinfoKeyByUsername(user.Username); - await SetAsync(usernameKey, user.Id.ToString()); - } - } -} +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.Tools; +using Microsoft.Extensions.Caching.Distributed; +using System.Text.Json; + +namespace IM_API.Services +{ + public class RedisCacheService:ICacheService + { + private readonly IDistributedCache _cache; + public RedisCacheService(IDistributedCache cache) + { + _cache = cache; + } + + public async Task GetAsync(string key) + { + var valueBytes= await _cache.GetAsync(key); + if (valueBytes is null || valueBytes.Length == 0) return default; + return JsonSerializer.Deserialize(valueBytes); + } + + public async Task GetUserCacheAsync(string username) + { + var usernameKey = RedisKeys.GetUserinfoKeyByUsername(username); + var userid = await GetAsync(usernameKey); + if (userid is null) return default; + var key = RedisKeys.GetUserinfoKey(userid); + return await GetAsync(key); + } + + public async Task RemoveAsync(string key) => await _cache.RemoveAsync(key); + + public async Task RemoveUserCacheAsync(string username) + { + var usernameKey = RedisKeys.GetUserinfoKeyByUsername(username); + var userid = await GetAsync(usernameKey); + if (userid is null) return; + var key = RedisKeys.GetUserinfoKey(userid); + await RemoveAsync(key); + } + + public async Task SetAsync(string key, T value, TimeSpan? expiration = null) + { + var options = new DistributedCacheEntryOptions + { + AbsoluteExpirationRelativeToNow = expiration ?? TimeSpan.FromHours(1) + }; + var valueBytes = JsonSerializer.SerializeToUtf8Bytes(value); + await _cache.SetAsync(key, valueBytes, options); + } + + public async Task SetUserCacheAsync(User user) + { + var idKey = RedisKeys.GetUserinfoKey(user.Id.ToString()); + await SetAsync(idKey, user); + var usernameKey = RedisKeys.GetUserinfoKeyByUsername(user.Username); + await SetAsync(usernameKey, user.Id.ToString()); + } + } +} diff --git a/backend/IM_API/Services/RedisRefreshTokenService.cs b/backend/IM_API/Services/RedisRefreshTokenService.cs index 60b3a81..f5512af 100644 --- a/backend/IM_API/Services/RedisRefreshTokenService.cs +++ b/backend/IM_API/Services/RedisRefreshTokenService.cs @@ -1,66 +1,66 @@ -using IM_API.Interface.Services; -using Microsoft.AspNetCore.Connections; -using Newtonsoft.Json; -using StackExchange.Redis; -using System.Numerics; -using System.Security.Cryptography; -using System.Text.Json; - -namespace IM_API.Services -{ - public class RedisRefreshTokenService : IRefreshTokenService - { - private readonly ILogger _logger; - //redis数据库 - private readonly IDatabase _db; - private IConfiguration configuration; - //过期时长 - private readonly TimeSpan _refreshTTL; - public RedisRefreshTokenService(ILogger logger, IConnectionMultiplexer multiplexer, IConfiguration configuration) - { - _logger = logger; - _db = multiplexer.GetDatabase(); - this.configuration = configuration; - //设置refresh过期时间 - var days = int.Parse(this.configuration["Jwt:RefreshTokenDays"] ?? "30"); - _refreshTTL = TimeSpan.FromDays(days); - } - - private static string GenerateTokenStr() - { - var bytes = RandomNumberGenerator.GetBytes(32); - return Convert.ToBase64String(bytes); - } - - public async Task CreateRefreshTokenAsync(int userId, CancellationToken ct = default) - { - string token = GenerateTokenStr(); - var payload = new { UserId = userId,CreateAt = DateTime.Now}; - string json = JsonConvert.SerializeObject(payload); - //token写入redis - await _db.StringSetAsync(token,json,_refreshTTL); - return token; - } - - public async Task RevokeRefreshTokenAsync(string token, CancellationToken ct = default) - { - await _db.KeyDeleteAsync(token); - } - - public async Task<(bool ok, int userId)> ValidateRefreshTokenAsync(string token, CancellationToken ct = default) - { - var json = await _db.StringGetAsync(token); - if (json.IsNullOrEmpty) return (false,-1); - try - { - using var doc = JsonDocument.Parse(json.ToString()); - var userId = doc.RootElement.GetProperty("UserId").GetInt32(); - return (true,userId); - } - catch - { - return (false,-1); - } - } - } -} +using IM_API.Interface.Services; +using Microsoft.AspNetCore.Connections; +using Newtonsoft.Json; +using StackExchange.Redis; +using System.Numerics; +using System.Security.Cryptography; +using System.Text.Json; + +namespace IM_API.Services +{ + public class RedisRefreshTokenService : IRefreshTokenService + { + private readonly ILogger _logger; + //redis数据库 + private readonly IDatabase _db; + private IConfiguration configuration; + //过期时长 + private readonly TimeSpan _refreshTTL; + public RedisRefreshTokenService(ILogger logger, IConnectionMultiplexer multiplexer, IConfiguration configuration) + { + _logger = logger; + _db = multiplexer.GetDatabase(); + this.configuration = configuration; + //设置refresh过期时间 + var days = int.Parse(this.configuration["Jwt:RefreshTokenDays"] ?? "30"); + _refreshTTL = TimeSpan.FromDays(days); + } + + private static string GenerateTokenStr() + { + var bytes = RandomNumberGenerator.GetBytes(32); + return Convert.ToBase64String(bytes); + } + + public async Task CreateRefreshTokenAsync(int userId, CancellationToken ct = default) + { + string token = GenerateTokenStr(); + var payload = new { UserId = userId,CreateAt = DateTime.Now}; + string json = JsonConvert.SerializeObject(payload); + //token写入redis + await _db.StringSetAsync(token,json,_refreshTTL); + return token; + } + + public async Task RevokeRefreshTokenAsync(string token, CancellationToken ct = default) + { + await _db.KeyDeleteAsync(token); + } + + public async Task<(bool ok, int userId)> ValidateRefreshTokenAsync(string token, CancellationToken ct = default) + { + var json = await _db.StringGetAsync(token); + if (json.IsNullOrEmpty) return (false,-1); + try + { + using var doc = JsonDocument.Parse(json.ToString()); + var userId = doc.RootElement.GetProperty("UserId").GetInt32(); + return (true,userId); + } + catch + { + return (false,-1); + } + } + } +} diff --git a/backend/IM_API/Services/SequenceIdService.cs b/backend/IM_API/Services/SequenceIdService.cs index 3db52a6..f4229d8 100644 --- a/backend/IM_API/Services/SequenceIdService.cs +++ b/backend/IM_API/Services/SequenceIdService.cs @@ -1,46 +1,46 @@ -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.Tools; -using Microsoft.EntityFrameworkCore; -using RedLockNet; -using StackExchange.Redis; - -namespace IM_API.Services -{ - public class SequenceIdService : ISequenceIdService - { - private IDatabase _database; - private IDistributedLockFactory _lockFactory; - private ImContext _context; - public SequenceIdService(IConnectionMultiplexer connectionMultiplexer, - IDistributedLockFactory distributedLockFactory, ImContext imContext) - { - _database = connectionMultiplexer.GetDatabase(); - _lockFactory = distributedLockFactory; - _context = imContext; - } - public async Task GetNextSquenceIdAsync(string streamKey) - { - string key = RedisKeys.GetSequenceIdKey(streamKey); - string lockKey = RedisKeys.GetSequenceIdLockKey(streamKey); - var exists = await _database.KeyExistsAsync(key); - if (!exists) - { - using (var _lock = await _lockFactory.CreateLockAsync(lockKey, TimeSpan.FromSeconds(5))) - { - if (_lock.IsAcquired) - { - if(!await _database.KeyExistsAsync(key)) - { - var max = await _context.Messages - .Where(x => x.StreamKey == streamKey) - .MaxAsync(m => (long?)m.SequenceId) ?? 0; - await _database.StringSetAsync(key, max, TimeSpan.FromDays(7)); - } - } - } - } - return await _database.StringIncrementAsync(key); - } - } -} +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.Tools; +using Microsoft.EntityFrameworkCore; +using RedLockNet; +using StackExchange.Redis; + +namespace IM_API.Services +{ + public class SequenceIdService : ISequenceIdService + { + private IDatabase _database; + private IDistributedLockFactory _lockFactory; + private ImContext _context; + public SequenceIdService(IConnectionMultiplexer connectionMultiplexer, + IDistributedLockFactory distributedLockFactory, ImContext imContext) + { + _database = connectionMultiplexer.GetDatabase(); + _lockFactory = distributedLockFactory; + _context = imContext; + } + public async Task GetNextSquenceIdAsync(string streamKey) + { + string key = RedisKeys.GetSequenceIdKey(streamKey); + string lockKey = RedisKeys.GetSequenceIdLockKey(streamKey); + var exists = await _database.KeyExistsAsync(key); + if (!exists) + { + using (var _lock = await _lockFactory.CreateLockAsync(lockKey, TimeSpan.FromSeconds(5))) + { + if (_lock.IsAcquired) + { + if(!await _database.KeyExistsAsync(key)) + { + var max = await _context.Messages + .Where(x => x.StreamKey == streamKey) + .MaxAsync(m => (long?)m.SequenceId) ?? 0; + await _database.StringSetAsync(key, max, TimeSpan.FromDays(7)); + } + } + } + } + return await _database.StringIncrementAsync(key); + } + } +} diff --git a/backend/IM_API/Services/UserService.cs b/backend/IM_API/Services/UserService.cs index 1ffbe57..f0f86f1 100644 --- a/backend/IM_API/Services/UserService.cs +++ b/backend/IM_API/Services/UserService.cs @@ -1,129 +1,129 @@ -using AutoMapper; -using IM_API.Dtos.User; -using IM_API.Exceptions; -using IM_API.Interface.Services; -using IM_API.Models; -using IM_API.Tools; -using Microsoft.EntityFrameworkCore; -using StackExchange.Redis; -using System.Text.Json; - -namespace IM_API.Services -{ - public class UserService : IUserService - { - private readonly ImContext _context; - private readonly ILogger _logger; - private readonly IMapper _mapper; - private readonly ICacheService _cacheService; - private readonly IDatabase _redis; - public UserService( - ImContext imContext,ILogger logger, - IMapper mapper, ICacheService cacheService, IConnectionMultiplexer connectionMultiplexer) - { - this._context = imContext; - this._logger = logger; - this._mapper = mapper; - _cacheService = cacheService; - _redis = connectionMultiplexer.GetDatabase(); - } - #region 获取用户信息 - public async Task GetUserInfoAsync(int userId) - { - //查询redis缓存,如果存在直接返回不走查库逻辑 - var key = RedisKeys.GetUserinfoKey(userId.ToString()); - var userinfoCache = await _cacheService.GetAsync(key); - if (userinfoCache != null) return _mapper.Map(userinfoCache); - //无缓存查库 - var user = await _context.Users - .FirstOrDefaultAsync(x => x.Id == userId); - if (user == null) - { - throw new BaseException(CodeDefine.USER_NOT_FOUND); - } - await _cacheService.SetUserCacheAsync(user); - return _mapper.Map(user); - } - #endregion - #region 通过用户名获取用户信息 - public async Task GetUserInfoByUsernameAsync(string username) - { - var userinfo = await _cacheService.GetUserCacheAsync(username); - if (userinfo != null) return _mapper.Map(userinfo); - var user = await _context.Users.FirstOrDefaultAsync(x => x.Username == username); - if (user == null) - { - throw new BaseException(CodeDefine.USER_NOT_FOUND); - } - await _cacheService.SetUserCacheAsync(user); - return _mapper.Map(user); - } - #endregion - #region 重置用户密码 - public async Task ResetPasswordAsync(int userId, string oldPassword, string password) - { - var user = await _context.Users.FirstOrDefaultAsync(x => x.Id == userId); - if (user is null) throw new BaseException(CodeDefine.USER_NOT_FOUND); - //验证原密码 - if (user.Password != oldPassword) throw new BaseException(CodeDefine.PASSWORD_ERROR); - user.Password = password; - await _context.SaveChangesAsync(); - return true; - } - #endregion - #region 更新用户在线状态 - public async Task UpdateOlineStatusAsync(int userId,UserOnlineStatus onlineStatus) - { - var user = await _context.Users.FirstOrDefaultAsync(x => x.Id == userId); - if (user is null) throw new BaseException(CodeDefine.USER_NOT_FOUND); - user.OnlineStatusEnum = onlineStatus; - await _context.SaveChangesAsync(); - return true; - } - #endregion - #region 更新用户信息 - public async Task UpdateUserAsync(int userId,UpdateUserDto dto) - { - var user = await _context.Users.FirstOrDefaultAsync(x => x.Id == userId); - if (user is null) throw new BaseException(CodeDefine.USER_NOT_FOUND); - _mapper.Map(dto,user); - await _context.SaveChangesAsync(); - await _cacheService.SetUserCacheAsync(user); - return _mapper.Map(user); - } - #endregion - #region 批量获取用户信息 - public async Task> GetUserInfoListAsync(List ids) - { - //读取缓存中存在的用户,存在直接添加到结果列表 - var idKeyArr = ids.Select(s => (RedisKey)RedisKeys.GetUserinfoKey(s.ToString())).ToArray(); - var values = await _redis.StringGetAsync(idKeyArr); - List results = []; - List missingIds = []; - for(int i = 0; i < ids.Count; i++) - { - if (values[i].HasValue) - { - results.Add(JsonSerializer.Deserialize(values[i])); - } - else - { - missingIds.Add(ids[i]); - } - } - //如果存在没有缓存的用户则进行查库 - if (missingIds.Any()) - { - var dbUsers = await _context.Users - .Where(x => ids.Contains(x.Id)).ToListAsync(); - - results.AddRange(dbUsers); - - var setTasks = dbUsers.Select(s => _cacheService.SetUserCacheAsync(s)).ToList(); - await Task.WhenAll(setTasks); - } - return _mapper.Map>(results); - } - #endregion - } -} +using AutoMapper; +using IM_API.Dtos.User; +using IM_API.Exceptions; +using IM_API.Interface.Services; +using IM_API.Models; +using IM_API.Tools; +using Microsoft.EntityFrameworkCore; +using StackExchange.Redis; +using System.Text.Json; + +namespace IM_API.Services +{ + public class UserService : IUserService + { + private readonly ImContext _context; + private readonly ILogger _logger; + private readonly IMapper _mapper; + private readonly ICacheService _cacheService; + private readonly IDatabase _redis; + public UserService( + ImContext imContext,ILogger logger, + IMapper mapper, ICacheService cacheService, IConnectionMultiplexer connectionMultiplexer) + { + this._context = imContext; + this._logger = logger; + this._mapper = mapper; + _cacheService = cacheService; + _redis = connectionMultiplexer.GetDatabase(); + } + #region 获取用户信息 + public async Task GetUserInfoAsync(int userId) + { + //查询redis缓存,如果存在直接返回不走查库逻辑 + var key = RedisKeys.GetUserinfoKey(userId.ToString()); + var userinfoCache = await _cacheService.GetAsync(key); + if (userinfoCache != null) return _mapper.Map(userinfoCache); + //无缓存查库 + var user = await _context.Users + .FirstOrDefaultAsync(x => x.Id == userId); + if (user == null) + { + throw new BaseException(CodeDefine.USER_NOT_FOUND); + } + await _cacheService.SetUserCacheAsync(user); + return _mapper.Map(user); + } + #endregion + #region 通过用户名获取用户信息 + public async Task GetUserInfoByUsernameAsync(string username) + { + var userinfo = await _cacheService.GetUserCacheAsync(username); + if (userinfo != null) return _mapper.Map(userinfo); + var user = await _context.Users.FirstOrDefaultAsync(x => x.Username == username); + if (user == null) + { + throw new BaseException(CodeDefine.USER_NOT_FOUND); + } + await _cacheService.SetUserCacheAsync(user); + return _mapper.Map(user); + } + #endregion + #region 重置用户密码 + public async Task ResetPasswordAsync(int userId, string oldPassword, string password) + { + var user = await _context.Users.FirstOrDefaultAsync(x => x.Id == userId); + if (user is null) throw new BaseException(CodeDefine.USER_NOT_FOUND); + //验证原密码 + if (user.Password != oldPassword) throw new BaseException(CodeDefine.PASSWORD_ERROR); + user.Password = password; + await _context.SaveChangesAsync(); + return true; + } + #endregion + #region 更新用户在线状态 + public async Task UpdateOlineStatusAsync(int userId,UserOnlineStatus onlineStatus) + { + var user = await _context.Users.FirstOrDefaultAsync(x => x.Id == userId); + if (user is null) throw new BaseException(CodeDefine.USER_NOT_FOUND); + user.OnlineStatusEnum = onlineStatus; + await _context.SaveChangesAsync(); + return true; + } + #endregion + #region 更新用户信息 + public async Task UpdateUserAsync(int userId,UpdateUserDto dto) + { + var user = await _context.Users.FirstOrDefaultAsync(x => x.Id == userId); + if (user is null) throw new BaseException(CodeDefine.USER_NOT_FOUND); + _mapper.Map(dto,user); + await _context.SaveChangesAsync(); + await _cacheService.SetUserCacheAsync(user); + return _mapper.Map(user); + } + #endregion + #region 批量获取用户信息 + public async Task> GetUserInfoListAsync(List ids) + { + //读取缓存中存在的用户,存在直接添加到结果列表 + var idKeyArr = ids.Select(s => (RedisKey)RedisKeys.GetUserinfoKey(s.ToString())).ToArray(); + var values = await _redis.StringGetAsync(idKeyArr); + List results = []; + List missingIds = []; + for(int i = 0; i < ids.Count; i++) + { + if (values[i].HasValue) + { + results.Add(JsonSerializer.Deserialize(values[i])); + } + else + { + missingIds.Add(ids[i]); + } + } + //如果存在没有缓存的用户则进行查库 + if (missingIds.Any()) + { + var dbUsers = await _context.Users + .Where(x => ids.Contains(x.Id)).ToListAsync(); + + results.AddRange(dbUsers); + + var setTasks = dbUsers.Select(s => _cacheService.SetUserCacheAsync(s)).ToList(); + await Task.WhenAll(setTasks); + } + return _mapper.Map>(results); + } + #endregion + } +} diff --git a/backend/IM_API/Tools/CodeDefine.cs b/backend/IM_API/Tools/CodeDefine.cs index e62989e..cf0e8af 100644 --- a/backend/IM_API/Tools/CodeDefine.cs +++ b/backend/IM_API/Tools/CodeDefine.cs @@ -1,109 +1,109 @@ -namespace IM_API.Tools -{ - public class CodeDefine - { - public int Code { get; set; } - public string Message { get; set; } - - public CodeDefine(int code, string message) - { - Code = code; - Message = message; - } - // 3.1 成功类 - /// 成功响应 - public static CodeDefine SUCCESS = new CodeDefine(0, "成功"); - - // 3.2 系统级错误(1000 ~ 1999) - /// 未知异常 - public static CodeDefine SYSTEM_ERROR = new CodeDefine(1000, "系统错误"); - /// 服务器维护中或宕机 - public static CodeDefine SERVICE_UNAVAILABLE = new CodeDefine(1001, "服务不可用"); - /// 后端超时 - public static CodeDefine REQUEST_TIMEOUT = new CodeDefine(1002, "请求超时"); - /// 缺少或参数不合法 - public static CodeDefine PARAMETER_ERROR = new CodeDefine(1003, "参数错误"); - /// 数据库读写失败 - public static CodeDefine DATABASE_ERROR = new CodeDefine(1004, "数据库错误"); - /// 无权限访问 - public static CodeDefine PERMISSION_DENIED = new CodeDefine(1005, "权限不足"); - /// Token 无效/过期 - public static CodeDefine AUTH_FAILED = new CodeDefine(1006, "认证失败"); - - // 3.3 用户相关错误(2000 ~ 2099) - /// 查询不到用户 - public static CodeDefine USER_NOT_FOUND = new CodeDefine(2000, "用户不存在"); - /// 注册时用户已存在 - public static CodeDefine USER_ALREADY_EXISTS = new CodeDefine(2001, "用户已存在"); - /// 登录密码错误 - public static CodeDefine PASSWORD_ERROR = new CodeDefine(2002, "密码错误"); - /// 被管理员封禁 - public static CodeDefine USER_DISABLED = new CodeDefine(2003, "用户被禁用"); - /// 需重新登录 - public static CodeDefine LOGIN_EXPIRED = new CodeDefine(2004, "登录过期"); - - // 3.4 好友相关错误(2100 ~ 2199) - /// 重复申请 - public static CodeDefine FRIEND_REQUEST_EXISTS = new CodeDefine(2100, "好友申请已存在"); - /// 不是好友 - public static CodeDefine FRIEND_RELATION_NOT_FOUND = new CodeDefine(2101, "好友关系不存在"); - /// 重复添加 - public static CodeDefine ALREADY_FRIENDS = new CodeDefine(2102, "已经是好友"); - /// 被对方拒绝 - public static CodeDefine FRIEND_REQUEST_REJECTED = new CodeDefine(2103, "好友请求被拒绝"); - /// 被对方拉黑 - public static CodeDefine CANNOT_ADD_FRIEND = new CodeDefine(2104, "无法申请加好友"); - /// 好友请求不存在 - public static CodeDefine FRIEND_REQUEST_NOT_FOUND = new CodeDefine(2105, "好友请求不存在"); - /// 处理好友请求操作无效 - public static CodeDefine INVALID_ACTION = new CodeDefine(2106, "处理好友请求操作无效"); - - // 3.5 群聊相关错误(2200 ~ 2299) - /// 查询不到群 - public static CodeDefine GROUP_NOT_FOUND = new CodeDefine(2200, "群不存在"); - /// 不能重复加入 - public static CodeDefine ALREADY_IN_GROUP = new CodeDefine(2201, "已在群中"); - /// 超出限制 - public static CodeDefine GROUP_FULL = new CodeDefine(2202, "群成员已满"); - /// 需要邀请/验证 - public static CodeDefine NO_GROUP_PERMISSION = new CodeDefine(2203, "无加群权限"); - /// 邀请链接过期 - public static CodeDefine GROUP_INVITE_EXPIRED = new CodeDefine(2204, "群邀请已过期"); - - // 3.6 消息相关错误(2300 ~ 2399) - /// 发送时异常 - public static CodeDefine MESSAGE_SEND_FAILED = new CodeDefine(2300, "消息发送失败"); - /// 查询不到消息 - public static CodeDefine MESSAGE_NOT_FOUND = new CodeDefine(2301, "消息不存在"); - /// 超过时间限制 - public static CodeDefine MESSAGE_RECALL_FAILED = new CodeDefine(2302, "消息撤回失败"); - /// message_type 不合法 - public static CodeDefine UNSUPPORTED_MESSAGE_TYPE = new CodeDefine(2303, "不支持的消息类型"); - - // 3.7 文件相关错误(2400 ~ 2499) - /// 存储服务错误 - public static CodeDefine FILE_UPLOAD_FAILED = new CodeDefine(2400, "文件上传失败"); - /// 下载时未找到 - public static CodeDefine FILE_NOT_FOUND = new CodeDefine(2401, "文件不存在"); - /// 超过配置限制 - public static CodeDefine FILE_TOO_LARGE = new CodeDefine(2402, "文件大小超限"); - /// 格式不允许 - public static CodeDefine FILE_TYPE_NOT_SUPPORTED = new CodeDefine(2403, "文件类型不支持"); - - // 3.8 管理后台相关错误(3000 ~ 3099) - /// 账号错误 - public static CodeDefine ADMIN_NOT_FOUND = new CodeDefine(3000, "管理员不存在"); - /// 后台登录失败 - public static CodeDefine ADMIN_PASSWORD_ERROR = new CodeDefine(3001, "密码错误"); - /// 角色未找到 - public static CodeDefine ROLE_NOT_FOUND = new CodeDefine(3002, "角色不存在"); - /// 无操作权限 - public static CodeDefine ADMIN_PERMISSION_DENIED = new CodeDefine(3003, "权限不足"); - /// 后台日志写入失败 - public static CodeDefine OPERATION_LOG_FAILED = new CodeDefine(3004, "操作记录失败"); - - // 3.9 会话相关错误(3100 ~ 3199) - /// 发送时异常 - public static CodeDefine CONVERSATION_NOT_FOUND = new CodeDefine(3100, "会话不存在"); - } -} +namespace IM_API.Tools +{ + public class CodeDefine + { + public int Code { get; set; } + public string Message { get; set; } + + public CodeDefine(int code, string message) + { + Code = code; + Message = message; + } + // 3.1 成功类 + /// 成功响应 + public static CodeDefine SUCCESS = new CodeDefine(0, "成功"); + + // 3.2 系统级错误(1000 ~ 1999) + /// 未知异常 + public static CodeDefine SYSTEM_ERROR = new CodeDefine(1000, "系统错误"); + /// 服务器维护中或宕机 + public static CodeDefine SERVICE_UNAVAILABLE = new CodeDefine(1001, "服务不可用"); + /// 后端超时 + public static CodeDefine REQUEST_TIMEOUT = new CodeDefine(1002, "请求超时"); + /// 缺少或参数不合法 + public static CodeDefine PARAMETER_ERROR = new CodeDefine(1003, "参数错误"); + /// 数据库读写失败 + public static CodeDefine DATABASE_ERROR = new CodeDefine(1004, "数据库错误"); + /// 无权限访问 + public static CodeDefine PERMISSION_DENIED = new CodeDefine(1005, "权限不足"); + /// Token 无效/过期 + public static CodeDefine AUTH_FAILED = new CodeDefine(1006, "认证失败"); + + // 3.3 用户相关错误(2000 ~ 2099) + /// 查询不到用户 + public static CodeDefine USER_NOT_FOUND = new CodeDefine(2000, "用户不存在"); + /// 注册时用户已存在 + public static CodeDefine USER_ALREADY_EXISTS = new CodeDefine(2001, "用户已存在"); + /// 登录密码错误 + public static CodeDefine PASSWORD_ERROR = new CodeDefine(2002, "密码错误"); + /// 被管理员封禁 + public static CodeDefine USER_DISABLED = new CodeDefine(2003, "用户被禁用"); + /// 需重新登录 + public static CodeDefine LOGIN_EXPIRED = new CodeDefine(2004, "登录过期"); + + // 3.4 好友相关错误(2100 ~ 2199) + /// 重复申请 + public static CodeDefine FRIEND_REQUEST_EXISTS = new CodeDefine(2100, "好友申请已存在"); + /// 不是好友 + public static CodeDefine FRIEND_RELATION_NOT_FOUND = new CodeDefine(2101, "好友关系不存在"); + /// 重复添加 + public static CodeDefine ALREADY_FRIENDS = new CodeDefine(2102, "已经是好友"); + /// 被对方拒绝 + public static CodeDefine FRIEND_REQUEST_REJECTED = new CodeDefine(2103, "好友请求被拒绝"); + /// 被对方拉黑 + public static CodeDefine CANNOT_ADD_FRIEND = new CodeDefine(2104, "无法申请加好友"); + /// 好友请求不存在 + public static CodeDefine FRIEND_REQUEST_NOT_FOUND = new CodeDefine(2105, "好友请求不存在"); + /// 处理好友请求操作无效 + public static CodeDefine INVALID_ACTION = new CodeDefine(2106, "处理好友请求操作无效"); + + // 3.5 群聊相关错误(2200 ~ 2299) + /// 查询不到群 + public static CodeDefine GROUP_NOT_FOUND = new CodeDefine(2200, "群不存在"); + /// 不能重复加入 + public static CodeDefine ALREADY_IN_GROUP = new CodeDefine(2201, "已在群中"); + /// 超出限制 + public static CodeDefine GROUP_FULL = new CodeDefine(2202, "群成员已满"); + /// 需要邀请/验证 + public static CodeDefine NO_GROUP_PERMISSION = new CodeDefine(2203, "无加群权限"); + /// 邀请链接过期 + public static CodeDefine GROUP_INVITE_EXPIRED = new CodeDefine(2204, "群邀请已过期"); + + // 3.6 消息相关错误(2300 ~ 2399) + /// 发送时异常 + public static CodeDefine MESSAGE_SEND_FAILED = new CodeDefine(2300, "消息发送失败"); + /// 查询不到消息 + public static CodeDefine MESSAGE_NOT_FOUND = new CodeDefine(2301, "消息不存在"); + /// 超过时间限制 + public static CodeDefine MESSAGE_RECALL_FAILED = new CodeDefine(2302, "消息撤回失败"); + /// message_type 不合法 + public static CodeDefine UNSUPPORTED_MESSAGE_TYPE = new CodeDefine(2303, "不支持的消息类型"); + + // 3.7 文件相关错误(2400 ~ 2499) + /// 存储服务错误 + public static CodeDefine FILE_UPLOAD_FAILED = new CodeDefine(2400, "文件上传失败"); + /// 下载时未找到 + public static CodeDefine FILE_NOT_FOUND = new CodeDefine(2401, "文件不存在"); + /// 超过配置限制 + public static CodeDefine FILE_TOO_LARGE = new CodeDefine(2402, "文件大小超限"); + /// 格式不允许 + public static CodeDefine FILE_TYPE_NOT_SUPPORTED = new CodeDefine(2403, "文件类型不支持"); + + // 3.8 管理后台相关错误(3000 ~ 3099) + /// 账号错误 + public static CodeDefine ADMIN_NOT_FOUND = new CodeDefine(3000, "管理员不存在"); + /// 后台登录失败 + public static CodeDefine ADMIN_PASSWORD_ERROR = new CodeDefine(3001, "密码错误"); + /// 角色未找到 + public static CodeDefine ROLE_NOT_FOUND = new CodeDefine(3002, "角色不存在"); + /// 无操作权限 + public static CodeDefine ADMIN_PERMISSION_DENIED = new CodeDefine(3003, "权限不足"); + /// 后台日志写入失败 + public static CodeDefine OPERATION_LOG_FAILED = new CodeDefine(3004, "操作记录失败"); + + // 3.9 会话相关错误(3100 ~ 3199) + /// 发送时异常 + public static CodeDefine CONVERSATION_NOT_FOUND = new CodeDefine(3100, "会话不存在"); + } +} diff --git a/backend/IM_API/Tools/PasswordHasher.cs b/backend/IM_API/Tools/PasswordHasher.cs index 3431848..07eb5d8 100644 --- a/backend/IM_API/Tools/PasswordHasher.cs +++ b/backend/IM_API/Tools/PasswordHasher.cs @@ -1,21 +1,21 @@ -using System.Security.Cryptography; -using System.Text; - -namespace IM_API.Tools -{ - public static class PasswordHasher - { - public static string HashPassword(string password) - { - using var sha256 = SHA256.Create(); - var hashedBytes = sha256.ComputeHash(Encoding.UTF8.GetBytes(password)); - return Convert.ToBase64String(hashedBytes); - } - - public static bool VerifyPassword(string password, string hashedPassword) - { - var hashedInput = HashPassword(password); - return hashedInput == hashedPassword; - } - } -} +using System.Security.Cryptography; +using System.Text; + +namespace IM_API.Tools +{ + public static class PasswordHasher + { + public static string HashPassword(string password) + { + using var sha256 = SHA256.Create(); + var hashedBytes = sha256.ComputeHash(Encoding.UTF8.GetBytes(password)); + return Convert.ToBase64String(hashedBytes); + } + + public static bool VerifyPassword(string password, string hashedPassword) + { + var hashedInput = HashPassword(password); + return hashedInput == hashedPassword; + } + } +} diff --git a/backend/IM_API/Tools/RedisKeys.cs b/backend/IM_API/Tools/RedisKeys.cs index d7949be..b218d1d 100644 --- a/backend/IM_API/Tools/RedisKeys.cs +++ b/backend/IM_API/Tools/RedisKeys.cs @@ -1,11 +1,11 @@ -namespace IM_API.Tools -{ - public static class RedisKeys - { - public static string GetUserinfoKey(string userId) => $"user::uinfo::{userId}"; - public static string GetUserinfoKeyByUsername(string username) => $"user::uinfobyid::{username}"; - public static string GetSequenceIdKey(string streamKey) => $"chat::seq::{streamKey}"; - public static string GetSequenceIdLockKey(string streamKey) => $"lock::seq::{streamKey}"; - public static string GetConnectionIdKey(string userId) => $"signalr::user::con::{userId}"; - } -} +namespace IM_API.Tools +{ + public static class RedisKeys + { + public static string GetUserinfoKey(string userId) => $"user::uinfo::{userId}"; + public static string GetUserinfoKeyByUsername(string username) => $"user::uinfobyid::{username}"; + public static string GetSequenceIdKey(string streamKey) => $"chat::seq::{streamKey}"; + public static string GetSequenceIdLockKey(string streamKey) => $"lock::seq::{streamKey}"; + public static string GetConnectionIdKey(string userId) => $"signalr::user::con::{userId}"; + } +} diff --git a/backend/IM_API/Tools/SignalRMethodDefine.cs b/backend/IM_API/Tools/SignalRMethodDefine.cs index 829ec14..85e14e1 100644 --- a/backend/IM_API/Tools/SignalRMethodDefine.cs +++ b/backend/IM_API/Tools/SignalRMethodDefine.cs @@ -1,7 +1,7 @@ -namespace IM_API.Tools -{ - public class SignalRMethodDefine - { - public static string ReceiveMessage = "ReceiveMessage"; - } -} +namespace IM_API.Tools +{ + public class SignalRMethodDefine + { + public static string ReceiveMessage = "ReceiveMessage"; + } +} diff --git a/backend/IM_API/Tools/StreamKeyBuilder.cs b/backend/IM_API/Tools/StreamKeyBuilder.cs index c7eee60..a14f43a 100644 --- a/backend/IM_API/Tools/StreamKeyBuilder.cs +++ b/backend/IM_API/Tools/StreamKeyBuilder.cs @@ -1,17 +1,17 @@ -namespace IM_API.Tools -{ - public static class StreamKeyBuilder - { - public static string Private(long a, long b) - { - if (a <= 0 || b <= 0) throw new ArgumentException(); - return $"p:{(a < b ? $"{a}_{b}" : $"{b}_{a}")}"; - } - - public static string Group(long groupId) - { - if (groupId <= 0) throw new ArgumentException(); - return $"g:{groupId}"; - } - } -} +namespace IM_API.Tools +{ + public static class StreamKeyBuilder + { + public static string Private(long a, long b) + { + if (a <= 0 || b <= 0) throw new ArgumentException(); + return $"p:{(a < b ? $"{a}_{b}" : $"{b}_{a}")}"; + } + + public static string Group(long groupId) + { + if (groupId <= 0) throw new ArgumentException(); + return $"g:{groupId}"; + } + } +} diff --git a/backend/IM_API/Tools/UTCConverter.cs b/backend/IM_API/Tools/UTCConverter.cs index bc422cd..06e374c 100644 --- a/backend/IM_API/Tools/UTCConverter.cs +++ b/backend/IM_API/Tools/UTCConverter.cs @@ -1,18 +1,18 @@ -using System.Text.Json; - -namespace IM_API.Tools -{ - public class UtcDateTimeConverter : System.Text.Json.Serialization.JsonConverter - { - public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) - => reader.GetDateTime(); - - public override void Write(Utf8JsonWriter writer, DateTime value, JsonSerializerOptions options) - { - // 如果 Kind 已经是 Utc,直接输出。 - // 如果不是,先 SpecifyKind 再输出,确保不会发生时区偏移计算 - var utcDate = value.Kind == DateTimeKind.Utc ? value : DateTime.SpecifyKind(value, DateTimeKind.Utc); - writer.WriteStringValue(utcDate.ToString("yyyy-MM-ddTHH:mm:ssZ")); - } - } -} +using System.Text.Json; + +namespace IM_API.Tools +{ + public class UtcDateTimeConverter : System.Text.Json.Serialization.JsonConverter + { + public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) + => reader.GetDateTime(); + + public override void Write(Utf8JsonWriter writer, DateTime value, JsonSerializerOptions options) + { + // 如果 Kind 已经是 Utc,直接输出。 + // 如果不是,先 SpecifyKind 再输出,确保不会发生时区偏移计算 + var utcDate = value.Kind == DateTimeKind.Utc ? value : DateTime.SpecifyKind(value, DateTimeKind.Utc); + writer.WriteStringValue(utcDate.ToString("yyyy-MM-ddTHH:mm:ssZ")); + } + } +} diff --git a/backend/IM_API/VOs/Auth/LoginVo.cs b/backend/IM_API/VOs/Auth/LoginVo.cs index 3e2c524..5de5edc 100644 --- a/backend/IM_API/VOs/Auth/LoginVo.cs +++ b/backend/IM_API/VOs/Auth/LoginVo.cs @@ -1,18 +1,18 @@ -using IM_API.Dtos.User; - -namespace IM_API.VOs.Auth -{ - public class LoginVo - { - public UserInfoDto userInfo { get; set; } - public string Token { get; set; } - public string RefreshToken { get; set; } - public DateTimeOffset ExpireAt { get; set; } - public LoginVo(UserInfoDto userInfo,string token, string refreshToken, DateTime expireAt) { - this.userInfo = userInfo; - Token = token; - RefreshToken = refreshToken; - ExpireAt = expireAt; - } - } -} +using IM_API.Dtos.User; + +namespace IM_API.VOs.Auth +{ + public class LoginVo + { + public UserInfoDto userInfo { get; set; } + public string Token { get; set; } + public string RefreshToken { get; set; } + public DateTimeOffset ExpireAt { get; set; } + public LoginVo(UserInfoDto userInfo,string token, string refreshToken, DateTime expireAt) { + this.userInfo = userInfo; + Token = token; + RefreshToken = refreshToken; + ExpireAt = expireAt; + } + } +} diff --git a/backend/IM_API/VOs/Conversation/ConversationVo.cs b/backend/IM_API/VOs/Conversation/ConversationVo.cs index 5d98a82..6653941 100644 --- a/backend/IM_API/VOs/Conversation/ConversationVo.cs +++ b/backend/IM_API/VOs/Conversation/ConversationVo.cs @@ -1,53 +1,53 @@ -using IM_API.Dtos; -using IM_API.Models; -using IM_API.VOs.Message; - -namespace IM_API.VOs.Conversation -{ - public class ConversationVo - { - public int Id { get; set; } - - /// - /// 用户 - /// - public int UserId { get; set; } - - /// - /// 对方ID(群聊为群聊ID,单聊为单聊ID) - /// - public int TargetId { get; set; } - - /// - /// 最后一条未读消息ID - /// - public long? LastSequenceId { get; set; } - - /// - /// 未读消息数 - /// - public int UnreadCount { get; set; } - - public ChatType ChatType { get; set; } - - - /// - /// 最后一条最新消息 - /// - public string LastMessage { get; set; } = null!; - /// - /// 最后一条消息时间 - /// - public DateTimeOffset? DateTime { get; set; } = null; - - /// - /// 对方昵称 - /// - public string TargetName { get; set; } - /// - /// 对方头像 - /// - public string? TargetAvatar { get; set; } - - } -} +using IM_API.Dtos; +using IM_API.Models; +using IM_API.VOs.Message; + +namespace IM_API.VOs.Conversation +{ + public class ConversationVo + { + public int Id { get; set; } + + /// + /// 用户 + /// + public int UserId { get; set; } + + /// + /// 对方ID(群聊为群聊ID,单聊为单聊ID) + /// + public int TargetId { get; set; } + + /// + /// 最后一条未读消息ID + /// + public long? LastSequenceId { get; set; } + + /// + /// 未读消息数 + /// + public int UnreadCount { get; set; } + + public ChatType ChatType { get; set; } + + + /// + /// 最后一条最新消息 + /// + public string LastMessage { get; set; } = null!; + /// + /// 最后一条消息时间 + /// + public DateTimeOffset? DateTime { get; set; } = null; + + /// + /// 对方昵称 + /// + public string TargetName { get; set; } + /// + /// 对方头像 + /// + public string? TargetAvatar { get; set; } + + } +} diff --git a/backend/IM_API/VOs/Group/GroupInviteActionUpdateVo.cs b/backend/IM_API/VOs/Group/GroupInviteActionUpdateVo.cs index 23fdd23..780431e 100644 --- a/backend/IM_API/VOs/Group/GroupInviteActionUpdateVo.cs +++ b/backend/IM_API/VOs/Group/GroupInviteActionUpdateVo.cs @@ -1,13 +1,13 @@ -using IM_API.Models; - -namespace IM_API.VOs.Group -{ - public class GroupInviteActionUpdateVo - { - public int GroupId { get; set; } - public int InviteUserId { get; set; } - public int InvitedUserId { get; set; } - public int InviteId { get; set; } - public GroupInviteState Action { get; set; } - } -} +using IM_API.Models; + +namespace IM_API.VOs.Group +{ + public class GroupInviteActionUpdateVo + { + public int GroupId { get; set; } + public int InviteUserId { get; set; } + public int InvitedUserId { get; set; } + public int InviteId { get; set; } + public GroupInviteState Action { get; set; } + } +} diff --git a/backend/IM_API/VOs/Group/GroupInviteVo.cs b/backend/IM_API/VOs/Group/GroupInviteVo.cs index f56d3cd..33a6ccd 100644 --- a/backend/IM_API/VOs/Group/GroupInviteVo.cs +++ b/backend/IM_API/VOs/Group/GroupInviteVo.cs @@ -1,9 +1,9 @@ -namespace IM_API.VOs.Group -{ - public class GroupInviteVo - { - public int GroupId { get; set; } - public int UserId { get; set; } - - } -} +namespace IM_API.VOs.Group +{ + public class GroupInviteVo + { + public int GroupId { get; set; } + public int UserId { get; set; } + + } +} diff --git a/backend/IM_API/VOs/Group/GroupJoinVo.cs b/backend/IM_API/VOs/Group/GroupJoinVo.cs index c6b85a4..69c4b37 100644 --- a/backend/IM_API/VOs/Group/GroupJoinVo.cs +++ b/backend/IM_API/VOs/Group/GroupJoinVo.cs @@ -1,8 +1,8 @@ -namespace IM_API.VOs.Group -{ - public class GroupJoinVo - { - public int UserId { get; set; } - public int GroupId { get; set; } - } -} +namespace IM_API.VOs.Group +{ + public class GroupJoinVo + { + public int UserId { get; set; } + public int GroupId { get; set; } + } +} diff --git a/backend/IM_API/VOs/Group/GroupRequestUpdateVo.cs b/backend/IM_API/VOs/Group/GroupRequestUpdateVo.cs index 337f6e5..89c3bef 100644 --- a/backend/IM_API/VOs/Group/GroupRequestUpdateVo.cs +++ b/backend/IM_API/VOs/Group/GroupRequestUpdateVo.cs @@ -1,9 +1,9 @@ -namespace IM_API.VOs.Group -{ - public class GroupRequestUpdateVo - { - public int RequestId { get; set; } - public int GroupId { get; set; } - public int UserId { get; set; } - } -} +namespace IM_API.VOs.Group +{ + public class GroupRequestUpdateVo + { + public int RequestId { get; set; } + public int GroupId { get; set; } + public int UserId { get; set; } + } +} diff --git a/backend/IM_API/VOs/Message/MessageBaseVo.cs b/backend/IM_API/VOs/Message/MessageBaseVo.cs index a377a4f..68f9442 100644 --- a/backend/IM_API/VOs/Message/MessageBaseVo.cs +++ b/backend/IM_API/VOs/Message/MessageBaseVo.cs @@ -1,11 +1,11 @@ -using IM_API.Dtos; - -namespace IM_API.VOs.Message -{ - public record MessageBaseVo:MessageBaseDto - { - public int SequenceId { get; set; } - public string SenderName { get; set; } = ""; - public string SenderAvatar { get; set; } = ""; - } -} +using IM_API.Dtos; + +namespace IM_API.VOs.Message +{ + public record MessageBaseVo:MessageBaseDto + { + public int SequenceId { get; set; } + public string SenderName { get; set; } = ""; + public string SenderAvatar { get; set; } = ""; + } +} diff --git a/backend/IM_API/appsettings.Development.json b/backend/IM_API/appsettings.Development.json index 0c208ae..ff66ba6 100644 --- a/backend/IM_API/appsettings.Development.json +++ b/backend/IM_API/appsettings.Development.json @@ -1,8 +1,8 @@ -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - } -} +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + } +} diff --git a/backend/IM_API/appsettings.json b/backend/IM_API/appsettings.json index fc895fb..0ad51c3 100644 --- a/backend/IM_API/appsettings.json +++ b/backend/IM_API/appsettings.json @@ -1,26 +1,26 @@ -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "Jwt": { - "Key": "YourSuperSecretKey123456784124214190!", - "Issuer": "IMDemo", - "Audience": "IMClients", - "AccessTokenMinutes": 30, - "RefreshTokenDays": 30 - }, - "ConnectionStrings": { - "DefaultConnection": "Server=frp-era.com;Port=26582;Database=IM;User=product;Password=12345678;", - "Redis": "192.168.5.100:6379" - }, - "RabbitMQOptions": { - "Host": "192.168.5.100", - "Port": 5672, - "Username": "test", - "Password": "123456" - } -} +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + }, + "AllowedHosts": "*", + "Jwt": { + "Key": "YourSuperSecretKey123456784124214190!", + "Issuer": "IMDemo", + "Audience": "IMClients", + "AccessTokenMinutes": 30, + "RefreshTokenDays": 30 + }, + "ConnectionStrings": { + "DefaultConnection": "Server=192.168.3.100;Port=3306;Database=IM;User=root;Password=13872911434Dyw@;", + "Redis": "192.168.3.100:6379" + }, + "RabbitMQOptions": { + "Host": "192.168.3.100", + "Port": 5672, + "Username": "test", + "Password": "123456" + } +} diff --git a/backend/SignalRTest/.vs/SignalRTest/v17/DocumentLayout.backup.json b/backend/SignalRTest/.vs/SignalRTest/v17/DocumentLayout.backup.json index 05a3c84..dd054fa 100644 --- a/backend/SignalRTest/.vs/SignalRTest/v17/DocumentLayout.backup.json +++ b/backend/SignalRTest/.vs/SignalRTest/v17/DocumentLayout.backup.json @@ -1,57 +1,57 @@ -{ - "Version": 1, - "WorkspaceRootPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\", - "Documents": [ - { - "AbsoluteMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form", - "RelativeMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|solutionrelative:form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form" - }, - { - "AbsoluteMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|c:\\users\\nanxun\\documents\\im\\backend\\signalrtest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|solutionrelative:form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - } - ], - "DocumentGroupContainers": [ - { - "Orientation": 0, - "VerticalTabListWidth": 256, - "DocumentGroups": [ - { - "DockedWidth": 200, - "SelectedChildIndex": 1, - "Children": [ - { - "$type": "Bookmark", - "Name": "ST:0:0:{1c4feeaa-4718-4aa9-859d-94ce25d182ba}" - }, - { - "$type": "Document", - "DocumentIndex": 0, - "Title": "Form1.cs [\u8BBE\u8BA1]", - "DocumentMoniker": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs", - "RelativeDocumentMoniker": "Form1.cs", - "ToolTip": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs [\u8BBE\u8BA1]", - "RelativeToolTip": "Form1.cs [\u8BBE\u8BA1]", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-12-06T07:30:28.584Z", - "EditorCaption": " [\u8BBE\u8BA1]" - }, - { - "$type": "Document", - "DocumentIndex": 1, - "Title": "Form1.cs", - "DocumentMoniker": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs", - "RelativeDocumentMoniker": "Form1.cs", - "ToolTip": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs", - "RelativeToolTip": "Form1.cs", - "ViewState": "AgIAAA4AAAAAAAAAAAAuwBQAAAAJAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-12-06T07:28:32.613Z", - "EditorCaption": "" - } - ] - } - ] - } - ] +{ + "Version": 1, + "WorkspaceRootPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\", + "Documents": [ + { + "AbsoluteMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form", + "RelativeMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|solutionrelative:form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form" + }, + { + "AbsoluteMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|c:\\users\\nanxun\\documents\\im\\backend\\signalrtest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|solutionrelative:form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + } + ], + "DocumentGroupContainers": [ + { + "Orientation": 0, + "VerticalTabListWidth": 256, + "DocumentGroups": [ + { + "DockedWidth": 200, + "SelectedChildIndex": 1, + "Children": [ + { + "$type": "Bookmark", + "Name": "ST:0:0:{1c4feeaa-4718-4aa9-859d-94ce25d182ba}" + }, + { + "$type": "Document", + "DocumentIndex": 0, + "Title": "Form1.cs [\u8BBE\u8BA1]", + "DocumentMoniker": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs", + "RelativeDocumentMoniker": "Form1.cs", + "ToolTip": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs [\u8BBE\u8BA1]", + "RelativeToolTip": "Form1.cs [\u8BBE\u8BA1]", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-12-06T07:30:28.584Z", + "EditorCaption": " [\u8BBE\u8BA1]" + }, + { + "$type": "Document", + "DocumentIndex": 1, + "Title": "Form1.cs", + "DocumentMoniker": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs", + "RelativeDocumentMoniker": "Form1.cs", + "ToolTip": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs", + "RelativeToolTip": "Form1.cs", + "ViewState": "AgIAAA4AAAAAAAAAAAAuwBQAAAAJAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-12-06T07:28:32.613Z", + "EditorCaption": "" + } + ] + } + ] + } + ] } \ No newline at end of file diff --git a/backend/SignalRTest/.vs/SignalRTest/v17/DocumentLayout.json b/backend/SignalRTest/.vs/SignalRTest/v17/DocumentLayout.json index 5ba6d86..d0b1db9 100644 --- a/backend/SignalRTest/.vs/SignalRTest/v17/DocumentLayout.json +++ b/backend/SignalRTest/.vs/SignalRTest/v17/DocumentLayout.json @@ -1,56 +1,56 @@ -{ - "Version": 1, - "WorkspaceRootPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\", - "Documents": [ - { - "AbsoluteMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|c:\\users\\nanxun\\documents\\im\\backend\\signalrtest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form", - "RelativeMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|solutionrelative:form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form" - }, - { - "AbsoluteMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|c:\\users\\nanxun\\documents\\im\\backend\\signalrtest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", - "RelativeMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|solutionrelative:form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" - } - ], - "DocumentGroupContainers": [ - { - "Orientation": 0, - "VerticalTabListWidth": 256, - "DocumentGroups": [ - { - "DockedWidth": 200, - "SelectedChildIndex": 1, - "Children": [ - { - "$type": "Bookmark", - "Name": "ST:0:0:{1c4feeaa-4718-4aa9-859d-94ce25d182ba}" - }, - { - "$type": "Document", - "DocumentIndex": 0, - "Title": "Form1.cs [\u8BBE\u8BA1]", - "DocumentMoniker": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs", - "RelativeDocumentMoniker": "Form1.cs", - "ToolTip": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs [\u8BBE\u8BA1]", - "RelativeToolTip": "Form1.cs [\u8BBE\u8BA1]", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-12-06T07:30:28.584Z", - "EditorCaption": " [\u8BBE\u8BA1]" - }, - { - "$type": "Document", - "DocumentIndex": 1, - "Title": "Form1.cs", - "DocumentMoniker": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs", - "RelativeDocumentMoniker": "Form1.cs", - "ToolTip": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs", - "RelativeToolTip": "Form1.cs", - "ViewState": "AgIAAA4AAAAAAAAAAAAuwBQAAAAJAAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", - "WhenOpened": "2025-12-06T07:28:32.613Z" - } - ] - } - ] - } - ] +{ + "Version": 1, + "WorkspaceRootPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\", + "Documents": [ + { + "AbsoluteMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|c:\\users\\nanxun\\documents\\im\\backend\\signalrtest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form", + "RelativeMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|solutionrelative:form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}|Form" + }, + { + "AbsoluteMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|c:\\users\\nanxun\\documents\\im\\backend\\signalrtest\\form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}|SignalRTest.csproj|solutionrelative:form1.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + } + ], + "DocumentGroupContainers": [ + { + "Orientation": 0, + "VerticalTabListWidth": 256, + "DocumentGroups": [ + { + "DockedWidth": 200, + "SelectedChildIndex": 1, + "Children": [ + { + "$type": "Bookmark", + "Name": "ST:0:0:{1c4feeaa-4718-4aa9-859d-94ce25d182ba}" + }, + { + "$type": "Document", + "DocumentIndex": 0, + "Title": "Form1.cs [\u8BBE\u8BA1]", + "DocumentMoniker": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs", + "RelativeDocumentMoniker": "Form1.cs", + "ToolTip": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs [\u8BBE\u8BA1]", + "RelativeToolTip": "Form1.cs [\u8BBE\u8BA1]", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-12-06T07:30:28.584Z", + "EditorCaption": " [\u8BBE\u8BA1]" + }, + { + "$type": "Document", + "DocumentIndex": 1, + "Title": "Form1.cs", + "DocumentMoniker": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs", + "RelativeDocumentMoniker": "Form1.cs", + "ToolTip": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\Form1.cs", + "RelativeToolTip": "Form1.cs", + "ViewState": "AgIAAA4AAAAAAAAAAAAuwBQAAAAJAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-12-06T07:28:32.613Z" + } + ] + } + ] + } + ] } \ No newline at end of file diff --git a/backend/SignalRTest/Form1.Designer.cs b/backend/SignalRTest/Form1.Designer.cs index 5878f90..b0c861c 100644 --- a/backend/SignalRTest/Form1.Designer.cs +++ b/backend/SignalRTest/Form1.Designer.cs @@ -1,206 +1,206 @@ -namespace SignalRTest -{ - partial class Form1 - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - components = new System.ComponentModel.Container(); - button1 = new Button(); - button2 = new Button(); - txtUrl = new TextBox(); - TokenTxt = new TextBox(); - UrlLab = new Label(); - label2 = new Label(); - Historylab = new RichTextBox(); - label3 = new Label(); - MethodTxt = new TextBox(); - label4 = new Label(); - SendMsg = new Button(); - ParamsTxt = new TextBox(); - label5 = new Label(); - toolTip1 = new ToolTip(components); - SuspendLayout(); - // - // button1 - // - button1.Location = new Point(143, 294); - button1.Name = "button1"; - button1.Size = new Size(94, 29); - button1.TabIndex = 0; - button1.Text = "连接"; - button1.UseVisualStyleBackColor = true; - button1.Click += button1_Click; - // - // button2 - // - button2.Location = new Point(278, 294); - button2.Name = "button2"; - button2.Size = new Size(94, 29); - button2.TabIndex = 1; - button2.Text = "断开连接"; - button2.UseVisualStyleBackColor = true; - button2.Click += button2_Click; - // - // txtUrl - // - txtUrl.Location = new Point(112, 39); - txtUrl.Name = "txtUrl"; - txtUrl.Size = new Size(303, 27); - txtUrl.TabIndex = 2; - txtUrl.Text = "http://localhost:5202/chat"; - // - // TokenTxt - // - TokenTxt.Location = new Point(553, 39); - TokenTxt.Name = "TokenTxt"; - TokenTxt.Size = new Size(125, 27); - TokenTxt.TabIndex = 3; - // - // UrlLab - // - UrlLab.AutoSize = true; - UrlLab.Location = new Point(31, 42); - UrlLab.Name = "UrlLab"; - UrlLab.Size = new Size(38, 20); - UrlLab.TabIndex = 4; - UrlLab.Text = "URL"; - // - // label2 - // - label2.AutoSize = true; - label2.Location = new Point(475, 42); - label2.Name = "label2"; - label2.Size = new Size(69, 20); - label2.TabIndex = 5; - label2.Text = "登录凭证"; - // - // Historylab - // - Historylab.Location = new Point(112, 85); - Historylab.Name = "Historylab"; - Historylab.Size = new Size(303, 188); - Historylab.TabIndex = 6; - Historylab.Text = ""; - // - // label3 - // - label3.AutoSize = true; - label3.Location = new Point(16, 165); - label3.Name = "label3"; - label3.Size = new Size(69, 20); - label3.TabIndex = 7; - label3.Text = "消息历史"; - // - // MethodTxt - // - MethodTxt.Location = new Point(553, 182); - MethodTxt.Name = "MethodTxt"; - MethodTxt.Size = new Size(125, 27); - MethodTxt.TabIndex = 8; - toolTip1.SetToolTip(MethodTxt, "后端hub内对应方法名,大小写敏感"); - // - // label4 - // - label4.AutoSize = true; - label4.Location = new Point(475, 182); - label4.Name = "label4"; - label4.Size = new Size(39, 20); - label4.TabIndex = 9; - label4.Text = "方法"; - toolTip1.SetToolTip(label4, "后端hub内对应方法名,大小写敏感"); - // - // SendMsg - // - SendMsg.Location = new Point(705, 244); - SendMsg.Name = "SendMsg"; - SendMsg.Size = new Size(94, 29); - SendMsg.TabIndex = 10; - SendMsg.Text = "发送"; - SendMsg.UseVisualStyleBackColor = true; - SendMsg.Click += SendMsg_Click; - // - // ParamsTxt - // - ParamsTxt.Location = new Point(553, 246); - ParamsTxt.Name = "ParamsTxt"; - ParamsTxt.Size = new Size(125, 27); - ParamsTxt.TabIndex = 11; - toolTip1.SetToolTip(ParamsTxt, "hub方法对应参数,请使用以下格式:[参数1,参数2,参数3,...]"); - // - // label5 - // - label5.AutoSize = true; - label5.Location = new Point(475, 253); - label5.Name = "label5"; - label5.Size = new Size(39, 20); - label5.TabIndex = 12; - label5.Text = "参数"; - toolTip1.SetToolTip(label5, "hub方法对应参数,请使用以下格式:[参数1,参数2,参数3,...]"); - // - // Form1 - // - AutoScaleDimensions = new SizeF(9F, 20F); - AutoScaleMode = AutoScaleMode.Font; - ClientSize = new Size(800, 450); - Controls.Add(label5); - Controls.Add(ParamsTxt); - Controls.Add(SendMsg); - Controls.Add(label4); - Controls.Add(MethodTxt); - Controls.Add(label3); - Controls.Add(Historylab); - Controls.Add(label2); - Controls.Add(UrlLab); - Controls.Add(TokenTxt); - Controls.Add(txtUrl); - Controls.Add(button2); - Controls.Add(button1); - Name = "Form1"; - Text = "SignalR调试工具"; - Load += Form1_Load; - ResumeLayout(false); - PerformLayout(); - } - - #endregion - - private Button button1; - private Button button2; - private TextBox txtUrl; - private TextBox TokenTxt; - private Label UrlLab; - private Label label2; - private RichTextBox Historylab; - private Label label3; - private TextBox MethodTxt; - private Label label4; - private Button SendMsg; - private TextBox ParamsTxt; - private Label label5; - private ToolTip toolTip1; - } -} +namespace SignalRTest +{ + partial class Form1 + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + components = new System.ComponentModel.Container(); + button1 = new Button(); + button2 = new Button(); + txtUrl = new TextBox(); + TokenTxt = new TextBox(); + UrlLab = new Label(); + label2 = new Label(); + Historylab = new RichTextBox(); + label3 = new Label(); + MethodTxt = new TextBox(); + label4 = new Label(); + SendMsg = new Button(); + ParamsTxt = new TextBox(); + label5 = new Label(); + toolTip1 = new ToolTip(components); + SuspendLayout(); + // + // button1 + // + button1.Location = new Point(143, 294); + button1.Name = "button1"; + button1.Size = new Size(94, 29); + button1.TabIndex = 0; + button1.Text = "连接"; + button1.UseVisualStyleBackColor = true; + button1.Click += button1_Click; + // + // button2 + // + button2.Location = new Point(278, 294); + button2.Name = "button2"; + button2.Size = new Size(94, 29); + button2.TabIndex = 1; + button2.Text = "断开连接"; + button2.UseVisualStyleBackColor = true; + button2.Click += button2_Click; + // + // txtUrl + // + txtUrl.Location = new Point(112, 39); + txtUrl.Name = "txtUrl"; + txtUrl.Size = new Size(303, 27); + txtUrl.TabIndex = 2; + txtUrl.Text = "http://localhost:5202/chat"; + // + // TokenTxt + // + TokenTxt.Location = new Point(553, 39); + TokenTxt.Name = "TokenTxt"; + TokenTxt.Size = new Size(125, 27); + TokenTxt.TabIndex = 3; + // + // UrlLab + // + UrlLab.AutoSize = true; + UrlLab.Location = new Point(31, 42); + UrlLab.Name = "UrlLab"; + UrlLab.Size = new Size(38, 20); + UrlLab.TabIndex = 4; + UrlLab.Text = "URL"; + // + // label2 + // + label2.AutoSize = true; + label2.Location = new Point(475, 42); + label2.Name = "label2"; + label2.Size = new Size(69, 20); + label2.TabIndex = 5; + label2.Text = "登录凭证"; + // + // Historylab + // + Historylab.Location = new Point(112, 85); + Historylab.Name = "Historylab"; + Historylab.Size = new Size(303, 188); + Historylab.TabIndex = 6; + Historylab.Text = ""; + // + // label3 + // + label3.AutoSize = true; + label3.Location = new Point(16, 165); + label3.Name = "label3"; + label3.Size = new Size(69, 20); + label3.TabIndex = 7; + label3.Text = "消息历史"; + // + // MethodTxt + // + MethodTxt.Location = new Point(553, 182); + MethodTxt.Name = "MethodTxt"; + MethodTxt.Size = new Size(125, 27); + MethodTxt.TabIndex = 8; + toolTip1.SetToolTip(MethodTxt, "后端hub内对应方法名,大小写敏感"); + // + // label4 + // + label4.AutoSize = true; + label4.Location = new Point(475, 182); + label4.Name = "label4"; + label4.Size = new Size(39, 20); + label4.TabIndex = 9; + label4.Text = "方法"; + toolTip1.SetToolTip(label4, "后端hub内对应方法名,大小写敏感"); + // + // SendMsg + // + SendMsg.Location = new Point(705, 244); + SendMsg.Name = "SendMsg"; + SendMsg.Size = new Size(94, 29); + SendMsg.TabIndex = 10; + SendMsg.Text = "发送"; + SendMsg.UseVisualStyleBackColor = true; + SendMsg.Click += SendMsg_Click; + // + // ParamsTxt + // + ParamsTxt.Location = new Point(553, 246); + ParamsTxt.Name = "ParamsTxt"; + ParamsTxt.Size = new Size(125, 27); + ParamsTxt.TabIndex = 11; + toolTip1.SetToolTip(ParamsTxt, "hub方法对应参数,请使用以下格式:[参数1,参数2,参数3,...]"); + // + // label5 + // + label5.AutoSize = true; + label5.Location = new Point(475, 253); + label5.Name = "label5"; + label5.Size = new Size(39, 20); + label5.TabIndex = 12; + label5.Text = "参数"; + toolTip1.SetToolTip(label5, "hub方法对应参数,请使用以下格式:[参数1,参数2,参数3,...]"); + // + // Form1 + // + AutoScaleDimensions = new SizeF(9F, 20F); + AutoScaleMode = AutoScaleMode.Font; + ClientSize = new Size(800, 450); + Controls.Add(label5); + Controls.Add(ParamsTxt); + Controls.Add(SendMsg); + Controls.Add(label4); + Controls.Add(MethodTxt); + Controls.Add(label3); + Controls.Add(Historylab); + Controls.Add(label2); + Controls.Add(UrlLab); + Controls.Add(TokenTxt); + Controls.Add(txtUrl); + Controls.Add(button2); + Controls.Add(button1); + Name = "Form1"; + Text = "SignalR调试工具"; + Load += Form1_Load; + ResumeLayout(false); + PerformLayout(); + } + + #endregion + + private Button button1; + private Button button2; + private TextBox txtUrl; + private TextBox TokenTxt; + private Label UrlLab; + private Label label2; + private RichTextBox Historylab; + private Label label3; + private TextBox MethodTxt; + private Label label4; + private Button SendMsg; + private TextBox ParamsTxt; + private Label label5; + private ToolTip toolTip1; + } +} diff --git a/backend/SignalRTest/Form1.cs b/backend/SignalRTest/Form1.cs index 8d7a9b6..a57dc02 100644 --- a/backend/SignalRTest/Form1.cs +++ b/backend/SignalRTest/Form1.cs @@ -1,143 +1,143 @@ -using Microsoft.AspNetCore.SignalR.Client; -using System.Text.Json; -using System.Windows.Forms; - -namespace SignalRTest -{ - public partial class Form1 : Form - { - private HubConnection _connection; - public Form1() - { - InitializeComponent(); - } - - private void Form1_Load(object sender, EventArgs e) - { - - } - - private async void button1_Click(object sender, EventArgs e) - { - try - { - _connection = new HubConnectionBuilder() - .WithUrl(txtUrl.Text, options => - { - options.AccessTokenProvider = () => - Task.FromResult(TokenTxt.Text); - }) - .WithAutomaticReconnect() - .Build(); - - _connection.On("ReceiveMessage", (user, message) => - { - Historylab.Invoke(new Action(() => - { - // ƶ굽ıĩβ - Historylab.SelectionStart = Historylab.TextLength; - Historylab.SelectionLength = 0; - - Historylab.SelectionColor = Color.Green; - Historylab.AppendText("Ϣ" + message + "\n"); - })); - }); - - _connection.Reconnecting += (ex) => - { - // ƶ굽ıĩβ - Historylab.SelectionStart = Historylab.TextLength; - Historylab.SelectionLength = 0; - - Historylab.SelectionColor = Color.Blue; - Historylab.AppendText("..." + "\n"); - return System.Threading.Tasks.Task.CompletedTask; - }; - - _connection.Reconnected += (id) => - { - // ƶ굽ıĩβ - Historylab.SelectionStart = Historylab.TextLength; - Historylab.SelectionLength = 0; - - Historylab.SelectionColor = Color.Blue; - Historylab.AppendText("ɹ" + "\n"); - return System.Threading.Tasks.Task.CompletedTask; - }; - - await _connection.StartAsync(); - // ƶ굽ıĩβ - Historylab.SelectionStart = Historylab.TextLength; - Historylab.SelectionLength = 0; - - Historylab.SelectionColor = Color.Blue; - Historylab.AppendText("ӳɹ" + "\n"); - } - catch (Exception ex) - { - // ƶ굽ıĩβ - Historylab.SelectionStart = Historylab.TextLength; - Historylab.SelectionLength = 0; - - Historylab.SelectionColor = Color.Blue; - Historylab.AppendText("ʧܣ" + ex.Message + "\n"); - } - } - - private async void button2_Click(object sender, EventArgs e) - { - if (_connection != null) - { - await _connection.StopAsync(); - await _connection.DisposeAsync(); - // ƶ굽ıĩβ - Historylab.SelectionStart = Historylab.TextLength; - Historylab.SelectionLength = 0; - - Historylab.SelectionColor = Color.Blue; - Historylab.AppendText("Ͽӣ" + "\n"); - } - } - - private async void SendMsg_Click(object sender, EventArgs e) - { - if (_connection == null || _connection.State != HubConnectionState.Connected) - { - // ƶ굽ıĩβ - Historylab.SelectionStart = Historylab.TextLength; - Historylab.SelectionLength = 0; - - Historylab.SelectionColor = Color.Blue; - Historylab.AppendText("ӣ" + "\n"); - return; - } - - try - { - var method = MethodTxt.Text.Trim(); - var paramText = ParamsTxt.Text.Trim(); - - object[] parameters = string.IsNullOrWhiteSpace(paramText) - ? Array.Empty() - : JsonSerializer.Deserialize(paramText); - // ƶ굽ıĩβ - Historylab.SelectionStart = Historylab.TextLength; - Historylab.SelectionLength = 0; - - Historylab.SelectionColor = Color.Red; - Historylab.AppendText($"Invoke: {method} {paramText}" + "\n"); - await _connection.InvokeCoreAsync(method,parameters); - - } - catch (Exception ex) - { - // ƶ굽ıĩβ - Historylab.SelectionStart = Historylab.TextLength; - Historylab.SelectionLength = 0; - - Historylab.SelectionColor = Color.Blue; - Historylab.AppendText($"ʧ: {ex.Message}" + "\n"); - } - } - } -} +using Microsoft.AspNetCore.SignalR.Client; +using System.Text.Json; +using System.Windows.Forms; + +namespace SignalRTest +{ + public partial class Form1 : Form + { + private HubConnection _connection; + public Form1() + { + InitializeComponent(); + } + + private void Form1_Load(object sender, EventArgs e) + { + + } + + private async void button1_Click(object sender, EventArgs e) + { + try + { + _connection = new HubConnectionBuilder() + .WithUrl(txtUrl.Text, options => + { + options.AccessTokenProvider = () => + Task.FromResult(TokenTxt.Text); + }) + .WithAutomaticReconnect() + .Build(); + + _connection.On("ReceiveMessage", (user, message) => + { + Historylab.Invoke(new Action(() => + { + // ƶ굽ıĩβ + Historylab.SelectionStart = Historylab.TextLength; + Historylab.SelectionLength = 0; + + Historylab.SelectionColor = Color.Green; + Historylab.AppendText("Ϣ" + message + "\n"); + })); + }); + + _connection.Reconnecting += (ex) => + { + // ƶ굽ıĩβ + Historylab.SelectionStart = Historylab.TextLength; + Historylab.SelectionLength = 0; + + Historylab.SelectionColor = Color.Blue; + Historylab.AppendText("..." + "\n"); + return System.Threading.Tasks.Task.CompletedTask; + }; + + _connection.Reconnected += (id) => + { + // ƶ굽ıĩβ + Historylab.SelectionStart = Historylab.TextLength; + Historylab.SelectionLength = 0; + + Historylab.SelectionColor = Color.Blue; + Historylab.AppendText("ɹ" + "\n"); + return System.Threading.Tasks.Task.CompletedTask; + }; + + await _connection.StartAsync(); + // ƶ굽ıĩβ + Historylab.SelectionStart = Historylab.TextLength; + Historylab.SelectionLength = 0; + + Historylab.SelectionColor = Color.Blue; + Historylab.AppendText("ӳɹ" + "\n"); + } + catch (Exception ex) + { + // ƶ굽ıĩβ + Historylab.SelectionStart = Historylab.TextLength; + Historylab.SelectionLength = 0; + + Historylab.SelectionColor = Color.Blue; + Historylab.AppendText("ʧܣ" + ex.Message + "\n"); + } + } + + private async void button2_Click(object sender, EventArgs e) + { + if (_connection != null) + { + await _connection.StopAsync(); + await _connection.DisposeAsync(); + // ƶ굽ıĩβ + Historylab.SelectionStart = Historylab.TextLength; + Historylab.SelectionLength = 0; + + Historylab.SelectionColor = Color.Blue; + Historylab.AppendText("Ͽӣ" + "\n"); + } + } + + private async void SendMsg_Click(object sender, EventArgs e) + { + if (_connection == null || _connection.State != HubConnectionState.Connected) + { + // ƶ굽ıĩβ + Historylab.SelectionStart = Historylab.TextLength; + Historylab.SelectionLength = 0; + + Historylab.SelectionColor = Color.Blue; + Historylab.AppendText("ӣ" + "\n"); + return; + } + + try + { + var method = MethodTxt.Text.Trim(); + var paramText = ParamsTxt.Text.Trim(); + + object[] parameters = string.IsNullOrWhiteSpace(paramText) + ? Array.Empty() + : JsonSerializer.Deserialize(paramText); + // ƶ굽ıĩβ + Historylab.SelectionStart = Historylab.TextLength; + Historylab.SelectionLength = 0; + + Historylab.SelectionColor = Color.Red; + Historylab.AppendText($"Invoke: {method} {paramText}" + "\n"); + await _connection.InvokeCoreAsync(method,parameters); + + } + catch (Exception ex) + { + // ƶ굽ıĩβ + Historylab.SelectionStart = Historylab.TextLength; + Historylab.SelectionLength = 0; + + Historylab.SelectionColor = Color.Blue; + Historylab.AppendText($"ʧ: {ex.Message}" + "\n"); + } + } + } +} diff --git a/backend/SignalRTest/Form1.resx b/backend/SignalRTest/Form1.resx index dcfd08d..c342c56 100644 --- a/backend/SignalRTest/Form1.resx +++ b/backend/SignalRTest/Form1.resx @@ -1,123 +1,123 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - 17, 17 - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + \ No newline at end of file diff --git a/backend/SignalRTest/Program.cs b/backend/SignalRTest/Program.cs index 66a6f3b..f5b8baf 100644 --- a/backend/SignalRTest/Program.cs +++ b/backend/SignalRTest/Program.cs @@ -1,17 +1,17 @@ -namespace SignalRTest -{ - internal static class Program - { - /// - /// The main entry point for the application. - /// - [STAThread] - static void Main() - { - // To customize application configuration such as set high DPI settings or default font, - // see https://aka.ms/applicationconfiguration. - ApplicationConfiguration.Initialize(); - Application.Run(new Form1()); - } - } +namespace SignalRTest +{ + internal static class Program + { + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + // To customize application configuration such as set high DPI settings or default font, + // see https://aka.ms/applicationconfiguration. + ApplicationConfiguration.Initialize(); + Application.Run(new Form1()); + } + } } \ No newline at end of file diff --git a/backend/SignalRTest/Properties/PublishProfiles/FolderProfile.pubxml b/backend/SignalRTest/Properties/PublishProfiles/FolderProfile.pubxml index 5cdd245..102cb70 100644 --- a/backend/SignalRTest/Properties/PublishProfiles/FolderProfile.pubxml +++ b/backend/SignalRTest/Properties/PublishProfiles/FolderProfile.pubxml @@ -1,16 +1,16 @@ - - - - - Release - Any CPU - bin\Release\net8.0-windows\publish\win-x64\ - FileSystem - <_TargetId>Folder - net8.0-windows - win-x64 - true - true - false - + + + + + Release + Any CPU + bin\Release\net8.0-windows\publish\win-x64\ + FileSystem + <_TargetId>Folder + net8.0-windows + win-x64 + true + true + false + \ No newline at end of file diff --git a/backend/SignalRTest/Properties/PublishProfiles/FolderProfile.pubxml.user b/backend/SignalRTest/Properties/PublishProfiles/FolderProfile.pubxml.user index 5bea8d3..032ea68 100644 --- a/backend/SignalRTest/Properties/PublishProfiles/FolderProfile.pubxml.user +++ b/backend/SignalRTest/Properties/PublishProfiles/FolderProfile.pubxml.user @@ -1,8 +1,8 @@ - - - - - True|2025-12-06T11:34:00.2606316Z||;True|2025-12-06T19:25:07.4627450+08:00||; - - + + + + + True|2025-12-06T11:34:00.2606316Z||;True|2025-12-06T19:25:07.4627450+08:00||; + + \ No newline at end of file diff --git a/backend/SignalRTest/SignalRTest.csproj b/backend/SignalRTest/SignalRTest.csproj index 2ddba81..5cfb87d 100644 --- a/backend/SignalRTest/SignalRTest.csproj +++ b/backend/SignalRTest/SignalRTest.csproj @@ -1,15 +1,15 @@ - - - - WinExe - net8.0-windows - enable - true - enable - - - - - - + + + + WinExe + net8.0-windows + enable + true + enable + + + + + + \ No newline at end of file diff --git a/backend/SignalRTest/SignalRTest.csproj.user b/backend/SignalRTest/SignalRTest.csproj.user index 8457d4d..5b52483 100644 --- a/backend/SignalRTest/SignalRTest.csproj.user +++ b/backend/SignalRTest/SignalRTest.csproj.user @@ -1,11 +1,11 @@ - - - - <_LastSelectedProfileId>C:\Users\nanxun\Documents\IM\backend\SignalRTest\Properties\PublishProfiles\FolderProfile.pubxml - - - - Form - - + + + + <_LastSelectedProfileId>C:\Users\nanxun\Documents\IM\backend\SignalRTest\Properties\PublishProfiles\FolderProfile.pubxml + + + + Form + + \ No newline at end of file diff --git a/backend/SignalRTest/SignalRTest.sln b/backend/SignalRTest/SignalRTest.sln index 753d829..c19da8b 100644 --- a/backend/SignalRTest/SignalRTest.sln +++ b/backend/SignalRTest/SignalRTest.sln @@ -1,25 +1,25 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.14.36408.4 d17.14 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SignalRTest", "SignalRTest.csproj", "{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {266B86EE-17CF-4DD4-84C8-8CE3E2640A70}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {266B86EE-17CF-4DD4-84C8-8CE3E2640A70}.Debug|Any CPU.Build.0 = Debug|Any CPU - {266B86EE-17CF-4DD4-84C8-8CE3E2640A70}.Release|Any CPU.ActiveCfg = Release|Any CPU - {266B86EE-17CF-4DD4-84C8-8CE3E2640A70}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {2D41DBBA-147E-49F2-A781-E7CD9E85666F} - EndGlobalSection -EndGlobal + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.14.36408.4 d17.14 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SignalRTest", "SignalRTest.csproj", "{266B86EE-17CF-4DD4-84C8-8CE3E2640A70}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {266B86EE-17CF-4DD4-84C8-8CE3E2640A70}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {266B86EE-17CF-4DD4-84C8-8CE3E2640A70}.Debug|Any CPU.Build.0 = Debug|Any CPU + {266B86EE-17CF-4DD4-84C8-8CE3E2640A70}.Release|Any CPU.ActiveCfg = Release|Any CPU + {266B86EE-17CF-4DD4-84C8-8CE3E2640A70}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {2D41DBBA-147E-49F2-A781-E7CD9E85666F} + EndGlobalSection +EndGlobal diff --git a/backend/SignalRTest/bin/Debug/net8.0-windows/SignalRTest.deps.json b/backend/SignalRTest/bin/Debug/net8.0-windows/SignalRTest.deps.json index 8a84b48..0b7a595 100644 --- a/backend/SignalRTest/bin/Debug/net8.0-windows/SignalRTest.deps.json +++ b/backend/SignalRTest/bin/Debug/net8.0-windows/SignalRTest.deps.json @@ -1,419 +1,419 @@ -{ - "runtimeTarget": { - "name": ".NETCoreApp,Version=v8.0", - "signature": "" - }, - "compilationOptions": {}, - "targets": { - ".NETCoreApp,Version=v8.0": { - "SignalRTest/1.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Client": "10.0.0" - }, - "runtime": { - "SignalRTest.dll": {} - } - }, - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "10.0.0", - "Microsoft.Extensions.Features": "10.0.0", - "System.IO.Pipelines": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Net.ServerSentEvents": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", - "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0", - "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", - "Microsoft.Bcl.TimeProvider": "10.0.0", - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging": "10.0.0", - "System.Threading.Channels": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "runtime": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Features/10.0.0": { - "runtime": { - "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Logging/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "System.Diagnostics.DiagnosticSource": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Options/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "Microsoft.Extensions.Primitives": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "runtime": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.IO.Pipelines/10.0.0": { - "runtime": { - "lib/net8.0/System.IO.Pipelines.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Net.ServerSentEvents/10.0.0": { - "runtime": { - "lib/net8.0/System.Net.ServerSentEvents.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Text.Encodings.Web/10.0.0": { - "runtime": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - }, - "runtimeTargets": { - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { - "rid": "browser", - "assetType": "runtime", - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Text.Json/10.0.0": { - "dependencies": { - "System.IO.Pipelines": "10.0.0", - "System.Text.Encodings.Web": "10.0.0" - }, - "runtime": { - "lib/net8.0/System.Text.Json.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Threading.Channels/10.0.0": { - "runtime": { - "lib/net8.0/System.Threading.Channels.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - } - } - }, - "libraries": { - "SignalRTest/1.0.0": { - "type": "project", - "serviceable": false, - "sha512": "" - }, - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", - "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", - "hashPath": "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", - "path": "microsoft.aspnetcore.http.connections.client/10.0.0", - "hashPath": "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", - "path": "microsoft.aspnetcore.http.connections.common/10.0.0", - "hashPath": "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", - "path": "microsoft.aspnetcore.signalr.client/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", - "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", - "path": "microsoft.aspnetcore.signalr.common/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", - "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512" - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", - "path": "microsoft.bcl.asyncinterfaces/10.0.0", - "hashPath": "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512" - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", - "path": "microsoft.bcl.timeprovider/10.0.0", - "hashPath": "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", - "path": "microsoft.extensions.dependencyinjection/10.0.0", - "hashPath": "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", - "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", - "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Features/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", - "path": "microsoft.extensions.features/10.0.0", - "hashPath": "microsoft.extensions.features.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Logging/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", - "path": "microsoft.extensions.logging/10.0.0", - "hashPath": "microsoft.extensions.logging.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", - "path": "microsoft.extensions.logging.abstractions/10.0.0", - "hashPath": "microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Options/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", - "path": "microsoft.extensions.options/10.0.0", - "hashPath": "microsoft.extensions.options.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", - "path": "microsoft.extensions.primitives/10.0.0", - "hashPath": "microsoft.extensions.primitives.10.0.0.nupkg.sha512" - }, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", - "path": "system.diagnostics.diagnosticsource/10.0.0", - "hashPath": "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512" - }, - "System.IO.Pipelines/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", - "path": "system.io.pipelines/10.0.0", - "hashPath": "system.io.pipelines.10.0.0.nupkg.sha512" - }, - "System.Net.ServerSentEvents/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", - "path": "system.net.serversentevents/10.0.0", - "hashPath": "system.net.serversentevents.10.0.0.nupkg.sha512" - }, - "System.Text.Encodings.Web/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", - "path": "system.text.encodings.web/10.0.0", - "hashPath": "system.text.encodings.web.10.0.0.nupkg.sha512" - }, - "System.Text.Json/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", - "path": "system.text.json/10.0.0", - "hashPath": "system.text.json.10.0.0.nupkg.sha512" - }, - "System.Threading.Channels/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", - "path": "system.threading.channels/10.0.0", - "hashPath": "system.threading.channels.10.0.0.nupkg.sha512" - } - } +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v8.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v8.0": { + "SignalRTest/1.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Client": "10.0.0" + }, + "runtime": { + "SignalRTest.dll": {} + } + }, + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "dependencies": { + "Microsoft.Bcl.AsyncInterfaces": "10.0.0", + "Microsoft.Extensions.Features": "10.0.0", + "System.IO.Pipelines": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Net.ServerSentEvents": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", + "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0", + "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", + "Microsoft.Bcl.TimeProvider": "10.0.0", + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging": "10.0.0", + "System.Threading.Channels": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Features/10.0.0": { + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Logging/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "System.Diagnostics.DiagnosticSource": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Options/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "Microsoft.Extensions.Primitives": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "runtime": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.IO.Pipelines/10.0.0": { + "runtime": { + "lib/net8.0/System.IO.Pipelines.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Net.ServerSentEvents/10.0.0": { + "runtime": { + "lib/net8.0/System.Net.ServerSentEvents.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Text.Encodings.Web/10.0.0": { + "runtime": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + }, + "runtimeTargets": { + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { + "rid": "browser", + "assetType": "runtime", + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Text.Json/10.0.0": { + "dependencies": { + "System.IO.Pipelines": "10.0.0", + "System.Text.Encodings.Web": "10.0.0" + }, + "runtime": { + "lib/net8.0/System.Text.Json.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Threading.Channels/10.0.0": { + "runtime": { + "lib/net8.0/System.Threading.Channels.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + } + } + }, + "libraries": { + "SignalRTest/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", + "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", + "hashPath": "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", + "path": "microsoft.aspnetcore.http.connections.client/10.0.0", + "hashPath": "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", + "path": "microsoft.aspnetcore.http.connections.common/10.0.0", + "hashPath": "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", + "path": "microsoft.aspnetcore.signalr.client/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", + "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", + "path": "microsoft.aspnetcore.signalr.common/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", + "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512" + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", + "path": "microsoft.bcl.asyncinterfaces/10.0.0", + "hashPath": "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512" + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", + "path": "microsoft.bcl.timeprovider/10.0.0", + "hashPath": "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", + "path": "microsoft.extensions.dependencyinjection/10.0.0", + "hashPath": "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", + "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", + "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Features/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", + "path": "microsoft.extensions.features/10.0.0", + "hashPath": "microsoft.extensions.features.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Logging/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", + "path": "microsoft.extensions.logging/10.0.0", + "hashPath": "microsoft.extensions.logging.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", + "path": "microsoft.extensions.logging.abstractions/10.0.0", + "hashPath": "microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Options/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", + "path": "microsoft.extensions.options/10.0.0", + "hashPath": "microsoft.extensions.options.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", + "path": "microsoft.extensions.primitives/10.0.0", + "hashPath": "microsoft.extensions.primitives.10.0.0.nupkg.sha512" + }, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", + "path": "system.diagnostics.diagnosticsource/10.0.0", + "hashPath": "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512" + }, + "System.IO.Pipelines/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", + "path": "system.io.pipelines/10.0.0", + "hashPath": "system.io.pipelines.10.0.0.nupkg.sha512" + }, + "System.Net.ServerSentEvents/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", + "path": "system.net.serversentevents/10.0.0", + "hashPath": "system.net.serversentevents.10.0.0.nupkg.sha512" + }, + "System.Text.Encodings.Web/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", + "path": "system.text.encodings.web/10.0.0", + "hashPath": "system.text.encodings.web.10.0.0.nupkg.sha512" + }, + "System.Text.Json/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", + "path": "system.text.json/10.0.0", + "hashPath": "system.text.json.10.0.0.nupkg.sha512" + }, + "System.Threading.Channels/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", + "path": "system.threading.channels/10.0.0", + "hashPath": "system.threading.channels.10.0.0.nupkg.sha512" + } + } } \ No newline at end of file diff --git a/backend/SignalRTest/bin/Debug/net8.0-windows/SignalRTest.runtimeconfig.json b/backend/SignalRTest/bin/Debug/net8.0-windows/SignalRTest.runtimeconfig.json index b2dedf3..a8d07ca 100644 --- a/backend/SignalRTest/bin/Debug/net8.0-windows/SignalRTest.runtimeconfig.json +++ b/backend/SignalRTest/bin/Debug/net8.0-windows/SignalRTest.runtimeconfig.json @@ -1,19 +1,19 @@ -{ - "runtimeOptions": { - "tfm": "net8.0", - "frameworks": [ - { - "name": "Microsoft.NETCore.App", - "version": "8.0.0" - }, - { - "name": "Microsoft.WindowsDesktop.App", - "version": "8.0.0" - } - ], - "configProperties": { - "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": true, - "CSWINRT_USE_WINDOWS_UI_XAML_PROJECTIONS": false - } - } +{ + "runtimeOptions": { + "tfm": "net8.0", + "frameworks": [ + { + "name": "Microsoft.NETCore.App", + "version": "8.0.0" + }, + { + "name": "Microsoft.WindowsDesktop.App", + "version": "8.0.0" + } + ], + "configProperties": { + "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": true, + "CSWINRT_USE_WINDOWS_UI_XAML_PROJECTIONS": false + } + } } \ No newline at end of file diff --git a/backend/SignalRTest/bin/Release/net8.0-windows/SignalRTest.deps.json b/backend/SignalRTest/bin/Release/net8.0-windows/SignalRTest.deps.json index 8a84b48..0b7a595 100644 --- a/backend/SignalRTest/bin/Release/net8.0-windows/SignalRTest.deps.json +++ b/backend/SignalRTest/bin/Release/net8.0-windows/SignalRTest.deps.json @@ -1,419 +1,419 @@ -{ - "runtimeTarget": { - "name": ".NETCoreApp,Version=v8.0", - "signature": "" - }, - "compilationOptions": {}, - "targets": { - ".NETCoreApp,Version=v8.0": { - "SignalRTest/1.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Client": "10.0.0" - }, - "runtime": { - "SignalRTest.dll": {} - } - }, - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "10.0.0", - "Microsoft.Extensions.Features": "10.0.0", - "System.IO.Pipelines": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Net.ServerSentEvents": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", - "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0", - "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", - "Microsoft.Bcl.TimeProvider": "10.0.0", - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging": "10.0.0", - "System.Threading.Channels": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "runtime": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Features/10.0.0": { - "runtime": { - "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Logging/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "System.Diagnostics.DiagnosticSource": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Options/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "Microsoft.Extensions.Primitives": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "runtime": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.IO.Pipelines/10.0.0": { - "runtime": { - "lib/net8.0/System.IO.Pipelines.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Net.ServerSentEvents/10.0.0": { - "runtime": { - "lib/net8.0/System.Net.ServerSentEvents.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Text.Encodings.Web/10.0.0": { - "runtime": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - }, - "runtimeTargets": { - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { - "rid": "browser", - "assetType": "runtime", - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Text.Json/10.0.0": { - "dependencies": { - "System.IO.Pipelines": "10.0.0", - "System.Text.Encodings.Web": "10.0.0" - }, - "runtime": { - "lib/net8.0/System.Text.Json.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Threading.Channels/10.0.0": { - "runtime": { - "lib/net8.0/System.Threading.Channels.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - } - } - }, - "libraries": { - "SignalRTest/1.0.0": { - "type": "project", - "serviceable": false, - "sha512": "" - }, - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", - "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", - "hashPath": "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", - "path": "microsoft.aspnetcore.http.connections.client/10.0.0", - "hashPath": "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", - "path": "microsoft.aspnetcore.http.connections.common/10.0.0", - "hashPath": "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", - "path": "microsoft.aspnetcore.signalr.client/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", - "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", - "path": "microsoft.aspnetcore.signalr.common/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", - "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512" - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", - "path": "microsoft.bcl.asyncinterfaces/10.0.0", - "hashPath": "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512" - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", - "path": "microsoft.bcl.timeprovider/10.0.0", - "hashPath": "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", - "path": "microsoft.extensions.dependencyinjection/10.0.0", - "hashPath": "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", - "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", - "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Features/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", - "path": "microsoft.extensions.features/10.0.0", - "hashPath": "microsoft.extensions.features.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Logging/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", - "path": "microsoft.extensions.logging/10.0.0", - "hashPath": "microsoft.extensions.logging.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", - "path": "microsoft.extensions.logging.abstractions/10.0.0", - "hashPath": "microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Options/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", - "path": "microsoft.extensions.options/10.0.0", - "hashPath": "microsoft.extensions.options.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", - "path": "microsoft.extensions.primitives/10.0.0", - "hashPath": "microsoft.extensions.primitives.10.0.0.nupkg.sha512" - }, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", - "path": "system.diagnostics.diagnosticsource/10.0.0", - "hashPath": "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512" - }, - "System.IO.Pipelines/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", - "path": "system.io.pipelines/10.0.0", - "hashPath": "system.io.pipelines.10.0.0.nupkg.sha512" - }, - "System.Net.ServerSentEvents/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", - "path": "system.net.serversentevents/10.0.0", - "hashPath": "system.net.serversentevents.10.0.0.nupkg.sha512" - }, - "System.Text.Encodings.Web/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", - "path": "system.text.encodings.web/10.0.0", - "hashPath": "system.text.encodings.web.10.0.0.nupkg.sha512" - }, - "System.Text.Json/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", - "path": "system.text.json/10.0.0", - "hashPath": "system.text.json.10.0.0.nupkg.sha512" - }, - "System.Threading.Channels/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", - "path": "system.threading.channels/10.0.0", - "hashPath": "system.threading.channels.10.0.0.nupkg.sha512" - } - } +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v8.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v8.0": { + "SignalRTest/1.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Client": "10.0.0" + }, + "runtime": { + "SignalRTest.dll": {} + } + }, + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "dependencies": { + "Microsoft.Bcl.AsyncInterfaces": "10.0.0", + "Microsoft.Extensions.Features": "10.0.0", + "System.IO.Pipelines": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Net.ServerSentEvents": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", + "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0", + "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", + "Microsoft.Bcl.TimeProvider": "10.0.0", + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging": "10.0.0", + "System.Threading.Channels": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Features/10.0.0": { + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Logging/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "System.Diagnostics.DiagnosticSource": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Options/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "Microsoft.Extensions.Primitives": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "runtime": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.IO.Pipelines/10.0.0": { + "runtime": { + "lib/net8.0/System.IO.Pipelines.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Net.ServerSentEvents/10.0.0": { + "runtime": { + "lib/net8.0/System.Net.ServerSentEvents.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Text.Encodings.Web/10.0.0": { + "runtime": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + }, + "runtimeTargets": { + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { + "rid": "browser", + "assetType": "runtime", + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Text.Json/10.0.0": { + "dependencies": { + "System.IO.Pipelines": "10.0.0", + "System.Text.Encodings.Web": "10.0.0" + }, + "runtime": { + "lib/net8.0/System.Text.Json.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Threading.Channels/10.0.0": { + "runtime": { + "lib/net8.0/System.Threading.Channels.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + } + } + }, + "libraries": { + "SignalRTest/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", + "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", + "hashPath": "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", + "path": "microsoft.aspnetcore.http.connections.client/10.0.0", + "hashPath": "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", + "path": "microsoft.aspnetcore.http.connections.common/10.0.0", + "hashPath": "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", + "path": "microsoft.aspnetcore.signalr.client/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", + "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", + "path": "microsoft.aspnetcore.signalr.common/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", + "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512" + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", + "path": "microsoft.bcl.asyncinterfaces/10.0.0", + "hashPath": "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512" + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", + "path": "microsoft.bcl.timeprovider/10.0.0", + "hashPath": "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", + "path": "microsoft.extensions.dependencyinjection/10.0.0", + "hashPath": "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", + "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", + "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Features/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", + "path": "microsoft.extensions.features/10.0.0", + "hashPath": "microsoft.extensions.features.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Logging/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", + "path": "microsoft.extensions.logging/10.0.0", + "hashPath": "microsoft.extensions.logging.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", + "path": "microsoft.extensions.logging.abstractions/10.0.0", + "hashPath": "microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Options/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", + "path": "microsoft.extensions.options/10.0.0", + "hashPath": "microsoft.extensions.options.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", + "path": "microsoft.extensions.primitives/10.0.0", + "hashPath": "microsoft.extensions.primitives.10.0.0.nupkg.sha512" + }, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", + "path": "system.diagnostics.diagnosticsource/10.0.0", + "hashPath": "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512" + }, + "System.IO.Pipelines/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", + "path": "system.io.pipelines/10.0.0", + "hashPath": "system.io.pipelines.10.0.0.nupkg.sha512" + }, + "System.Net.ServerSentEvents/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", + "path": "system.net.serversentevents/10.0.0", + "hashPath": "system.net.serversentevents.10.0.0.nupkg.sha512" + }, + "System.Text.Encodings.Web/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", + "path": "system.text.encodings.web/10.0.0", + "hashPath": "system.text.encodings.web.10.0.0.nupkg.sha512" + }, + "System.Text.Json/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", + "path": "system.text.json/10.0.0", + "hashPath": "system.text.json.10.0.0.nupkg.sha512" + }, + "System.Threading.Channels/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", + "path": "system.threading.channels/10.0.0", + "hashPath": "system.threading.channels.10.0.0.nupkg.sha512" + } + } } \ No newline at end of file diff --git a/backend/SignalRTest/bin/Release/net8.0-windows/SignalRTest.runtimeconfig.json b/backend/SignalRTest/bin/Release/net8.0-windows/SignalRTest.runtimeconfig.json index ad83f36..269c3d7 100644 --- a/backend/SignalRTest/bin/Release/net8.0-windows/SignalRTest.runtimeconfig.json +++ b/backend/SignalRTest/bin/Release/net8.0-windows/SignalRTest.runtimeconfig.json @@ -1,20 +1,20 @@ -{ - "runtimeOptions": { - "tfm": "net8.0", - "frameworks": [ - { - "name": "Microsoft.NETCore.App", - "version": "8.0.0" - }, - { - "name": "Microsoft.WindowsDesktop.App", - "version": "8.0.0" - } - ], - "configProperties": { - "System.Reflection.Metadata.MetadataUpdater.IsSupported": false, - "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": true, - "CSWINRT_USE_WINDOWS_UI_XAML_PROJECTIONS": false - } - } +{ + "runtimeOptions": { + "tfm": "net8.0", + "frameworks": [ + { + "name": "Microsoft.NETCore.App", + "version": "8.0.0" + }, + { + "name": "Microsoft.WindowsDesktop.App", + "version": "8.0.0" + } + ], + "configProperties": { + "System.Reflection.Metadata.MetadataUpdater.IsSupported": false, + "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": true, + "CSWINRT_USE_WINDOWS_UI_XAML_PROJECTIONS": false + } + } } \ No newline at end of file diff --git a/backend/SignalRTest/bin/Release/net8.0-windows/win-x64/SignalRTest.deps.json b/backend/SignalRTest/bin/Release/net8.0-windows/win-x64/SignalRTest.deps.json index 7c385e3..4f338e6 100644 --- a/backend/SignalRTest/bin/Release/net8.0-windows/win-x64/SignalRTest.deps.json +++ b/backend/SignalRTest/bin/Release/net8.0-windows/win-x64/SignalRTest.deps.json @@ -1,1369 +1,1369 @@ -{ - "runtimeTarget": { - "name": ".NETCoreApp,Version=v8.0/win-x64", - "signature": "" - }, - "compilationOptions": {}, - "targets": { - ".NETCoreApp,Version=v8.0": {}, - ".NETCoreApp,Version=v8.0/win-x64": { - "SignalRTest/1.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Client": "10.0.0", - "Microsoft.NET.ILLink.Tasks": "8.0.19", - "runtimepack.Microsoft.NETCore.App.Runtime.win-x64": "8.0.19", - "runtimepack.Microsoft.WindowsDesktop.App.Runtime.win-x64": "8.0.19" - }, - "runtime": { - "SignalRTest.dll": {} - } - }, - "runtimepack.Microsoft.NETCore.App.Runtime.win-x64/8.0.19": { - "runtime": { - "Microsoft.CSharp.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "Microsoft.VisualBasic.Core.dll": { - "assemblyVersion": "13.0.0.0", - "fileVersion": "13.0.1925.36514" - }, - "Microsoft.Win32.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "Microsoft.Win32.Registry.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.AppContext.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Buffers.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Collections.Concurrent.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Collections.Immutable.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Collections.NonGeneric.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Collections.Specialized.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Collections.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ComponentModel.Annotations.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ComponentModel.DataAnnotations.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ComponentModel.EventBasedAsync.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ComponentModel.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ComponentModel.TypeConverter.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ComponentModel.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Configuration.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Console.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Core.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Data.Common.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Data.DataSetExtensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Data.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.Contracts.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.Debug.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.FileVersionInfo.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.Process.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.StackTrace.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.TextWriterTraceListener.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.Tools.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.TraceSource.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.Tracing.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Drawing.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Dynamic.Runtime.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Formats.Asn1.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Formats.Tar.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Globalization.Calendars.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Globalization.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Globalization.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.Compression.Brotli.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.Compression.FileSystem.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.Compression.ZipFile.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.Compression.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.FileSystem.AccessControl.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.FileSystem.DriveInfo.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.FileSystem.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.FileSystem.Watcher.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.FileSystem.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.IsolatedStorage.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.MemoryMappedFiles.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.Pipes.AccessControl.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.Pipes.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.UnmanagedMemoryStream.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Linq.Expressions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Linq.Parallel.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Linq.Queryable.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Linq.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Memory.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Http.Json.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Http.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.HttpListener.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Mail.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.NameResolution.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.NetworkInformation.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Ping.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Quic.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Requests.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Security.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.ServicePoint.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Sockets.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.WebClient.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.WebHeaderCollection.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.WebProxy.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.WebSockets.Client.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.WebSockets.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Numerics.Vectors.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Numerics.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ObjectModel.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Private.CoreLib.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Private.DataContractSerialization.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Private.Uri.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Private.Xml.Linq.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Private.Xml.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.DispatchProxy.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.Emit.ILGeneration.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.Emit.Lightweight.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.Emit.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.Metadata.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.TypeExtensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Resources.Reader.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Resources.ResourceManager.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Resources.Writer.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.CompilerServices.Unsafe.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.CompilerServices.VisualC.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Handles.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.InteropServices.JavaScript.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.InteropServices.RuntimeInformation.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.InteropServices.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Intrinsics.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Loader.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Numerics.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Serialization.Formatters.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Serialization.Json.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Serialization.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Serialization.Xml.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Serialization.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.AccessControl.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Claims.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Algorithms.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Cng.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Csp.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Encoding.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.OpenSsl.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.X509Certificates.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Principal.Windows.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Principal.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.SecureString.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ServiceModel.Web.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ServiceProcess.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Text.Encoding.CodePages.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Text.Encoding.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Text.Encoding.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Text.RegularExpressions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Overlapped.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Tasks.Dataflow.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Tasks.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Tasks.Parallel.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Tasks.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Thread.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.ThreadPool.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Timer.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Transactions.Local.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Transactions.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ValueTuple.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Web.HttpUtility.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Web.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Windows.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.Linq.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.ReaderWriter.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.Serialization.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.XDocument.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.XPath.XDocument.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.XPath.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.XmlDocument.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.XmlSerializer.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "mscorlib.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "netstandard.dll": { - "assemblyVersion": "2.1.0.0", - "fileVersion": "8.0.1925.36514" - } - }, - "native": { - "Microsoft.DiaSymReader.Native.amd64.dll": { - "fileVersion": "14.42.34436.0" - }, - "System.IO.Compression.Native.dll": { - "fileVersion": "8.0.1925.36514" - }, - "clretwrc.dll": { - "fileVersion": "8.0.1925.36514" - }, - "clrgc.dll": { - "fileVersion": "8.0.1925.36514" - }, - "clrjit.dll": { - "fileVersion": "8.0.1925.36514" - }, - "coreclr.dll": { - "fileVersion": "8.0.1925.36514" - }, - "createdump.exe": { - "fileVersion": "8.0.1925.36514" - }, - "hostfxr.dll": { - "fileVersion": "8.0.1925.36514" - }, - "hostpolicy.dll": { - "fileVersion": "8.0.1925.36514" - }, - "mscordaccore.dll": { - "fileVersion": "8.0.1925.36514" - }, - "mscordaccore_amd64_amd64_8.0.1925.36514.dll": { - "fileVersion": "8.0.1925.36514" - }, - "mscordbi.dll": { - "fileVersion": "8.0.1925.36514" - }, - "mscorrc.dll": { - "fileVersion": "8.0.1925.36514" - }, - "msquic.dll": { - "fileVersion": "2.4.8.0" - } - } - }, - "runtimepack.Microsoft.WindowsDesktop.App.Runtime.win-x64/8.0.19": { - "runtime": { - "Accessibility.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "DirectWriteForwarder.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "Microsoft.VisualBasic.Forms.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "Microsoft.VisualBasic.dll": { - "assemblyVersion": "10.1.0.0", - "fileVersion": "8.0.1925.36703" - }, - "Microsoft.Win32.Registry.AccessControl.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "Microsoft.Win32.SystemEvents.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "PresentationCore.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework-SystemCore.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework-SystemData.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework-SystemDrawing.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework-SystemXml.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework-SystemXmlLinq.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.Aero.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.Aero2.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.AeroLite.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.Classic.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.Luna.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.Royale.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationUI.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "ReachFramework.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "System.CodeDom.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Configuration.ConfigurationManager.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Design.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Diagnostics.EventLog.Messages.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "0.0.0.0" - }, - "System.Diagnostics.EventLog.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.PerformanceCounter.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.DirectoryServices.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Drawing.Common.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Drawing.Design.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Drawing.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.IO.Packaging.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Printing.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "System.Resources.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Pkcs.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.ProtectedData.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Xml.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Permissions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.AccessControl.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Windows.Controls.Ribbon.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "System.Windows.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Windows.Forms.Design.Editors.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Windows.Forms.Design.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Windows.Forms.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Windows.Forms.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Windows.Input.Manipulations.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "System.Windows.Presentation.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "System.Xaml.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "UIAutomationClient.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "UIAutomationClientSideProviders.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "UIAutomationProvider.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "UIAutomationTypes.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "WindowsBase.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "WindowsFormsIntegration.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - } - }, - "native": { - "D3DCompiler_47_cor3.dll": { - "fileVersion": "10.0.22621.3233" - }, - "PenImc_cor3.dll": { - "fileVersion": "8.0.1925.36811" - }, - "PresentationNative_cor3.dll": { - "fileVersion": "8.0.25.16802" - }, - "vcruntime140_cor3.dll": { - "fileVersion": "14.42.34438.0" - }, - "wpfgfx_cor3.dll": { - "fileVersion": "8.0.1925.36811" - } - } - }, - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "10.0.0", - "Microsoft.Extensions.Features": "10.0.0", - "System.IO.Pipelines": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Net.ServerSentEvents": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", - "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0", - "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", - "Microsoft.Bcl.TimeProvider": "10.0.0", - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging": "10.0.0", - "System.Threading.Channels": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "runtime": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Features/10.0.0": { - "runtime": { - "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Logging/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "System.Diagnostics.DiagnosticSource": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Options/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "Microsoft.Extensions.Primitives": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.NET.ILLink.Tasks/8.0.19": {}, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "runtime": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.IO.Pipelines/10.0.0": { - "runtime": { - "lib/net8.0/System.IO.Pipelines.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Net.ServerSentEvents/10.0.0": { - "runtime": { - "lib/net8.0/System.Net.ServerSentEvents.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Text.Encodings.Web/10.0.0": { - "runtime": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Text.Json/10.0.0": { - "dependencies": { - "System.IO.Pipelines": "10.0.0", - "System.Text.Encodings.Web": "10.0.0" - }, - "runtime": { - "lib/net8.0/System.Text.Json.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Threading.Channels/10.0.0": { - "runtime": { - "lib/net8.0/System.Threading.Channels.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - } - } - }, - "libraries": { - "SignalRTest/1.0.0": { - "type": "project", - "serviceable": false, - "sha512": "" - }, - "runtimepack.Microsoft.NETCore.App.Runtime.win-x64/8.0.19": { - "type": "runtimepack", - "serviceable": false, - "sha512": "" - }, - "runtimepack.Microsoft.WindowsDesktop.App.Runtime.win-x64/8.0.19": { - "type": "runtimepack", - "serviceable": false, - "sha512": "" - }, - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", - "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", - "hashPath": "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", - "path": "microsoft.aspnetcore.http.connections.client/10.0.0", - "hashPath": "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", - "path": "microsoft.aspnetcore.http.connections.common/10.0.0", - "hashPath": "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", - "path": "microsoft.aspnetcore.signalr.client/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", - "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", - "path": "microsoft.aspnetcore.signalr.common/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", - "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512" - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", - "path": "microsoft.bcl.asyncinterfaces/10.0.0", - "hashPath": "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512" - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", - "path": "microsoft.bcl.timeprovider/10.0.0", - "hashPath": "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", - "path": "microsoft.extensions.dependencyinjection/10.0.0", - "hashPath": "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", - "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", - "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Features/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", - "path": "microsoft.extensions.features/10.0.0", - "hashPath": "microsoft.extensions.features.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Logging/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", - "path": "microsoft.extensions.logging/10.0.0", - "hashPath": "microsoft.extensions.logging.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", - "path": "microsoft.extensions.logging.abstractions/10.0.0", - "hashPath": "microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Options/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", - "path": "microsoft.extensions.options/10.0.0", - "hashPath": "microsoft.extensions.options.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", - "path": "microsoft.extensions.primitives/10.0.0", - "hashPath": "microsoft.extensions.primitives.10.0.0.nupkg.sha512" - }, - "Microsoft.NET.ILLink.Tasks/8.0.19": { - "type": "package", - "serviceable": true, - "sha512": "sha512-IhHf+zeZiaE5EXRyxILd4qM+Hj9cxV3sa8MpzZgeEhpvaG3a1VEGF6UCaPFLO44Kua3JkLKluE0SWVamS50PlA==", - "path": "microsoft.net.illink.tasks/8.0.19", - "hashPath": "microsoft.net.illink.tasks.8.0.19.nupkg.sha512" - }, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", - "path": "system.diagnostics.diagnosticsource/10.0.0", - "hashPath": "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512" - }, - "System.IO.Pipelines/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", - "path": "system.io.pipelines/10.0.0", - "hashPath": "system.io.pipelines.10.0.0.nupkg.sha512" - }, - "System.Net.ServerSentEvents/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", - "path": "system.net.serversentevents/10.0.0", - "hashPath": "system.net.serversentevents.10.0.0.nupkg.sha512" - }, - "System.Text.Encodings.Web/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", - "path": "system.text.encodings.web/10.0.0", - "hashPath": "system.text.encodings.web.10.0.0.nupkg.sha512" - }, - "System.Text.Json/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", - "path": "system.text.json/10.0.0", - "hashPath": "system.text.json.10.0.0.nupkg.sha512" - }, - "System.Threading.Channels/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", - "path": "system.threading.channels/10.0.0", - "hashPath": "system.threading.channels.10.0.0.nupkg.sha512" - } - }, - "runtimes": { - "win-x64": [ - "win", - "any", - "base" - ] - } +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v8.0/win-x64", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v8.0": {}, + ".NETCoreApp,Version=v8.0/win-x64": { + "SignalRTest/1.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Client": "10.0.0", + "Microsoft.NET.ILLink.Tasks": "8.0.19", + "runtimepack.Microsoft.NETCore.App.Runtime.win-x64": "8.0.19", + "runtimepack.Microsoft.WindowsDesktop.App.Runtime.win-x64": "8.0.19" + }, + "runtime": { + "SignalRTest.dll": {} + } + }, + "runtimepack.Microsoft.NETCore.App.Runtime.win-x64/8.0.19": { + "runtime": { + "Microsoft.CSharp.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "Microsoft.VisualBasic.Core.dll": { + "assemblyVersion": "13.0.0.0", + "fileVersion": "13.0.1925.36514" + }, + "Microsoft.Win32.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "Microsoft.Win32.Registry.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.AppContext.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Buffers.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Collections.Concurrent.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Collections.Immutable.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Collections.NonGeneric.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Collections.Specialized.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Collections.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ComponentModel.Annotations.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ComponentModel.DataAnnotations.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ComponentModel.EventBasedAsync.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ComponentModel.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ComponentModel.TypeConverter.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ComponentModel.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Configuration.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Console.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Core.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Data.Common.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Data.DataSetExtensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Data.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.Contracts.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.Debug.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.FileVersionInfo.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.Process.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.StackTrace.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.TextWriterTraceListener.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.Tools.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.TraceSource.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.Tracing.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Drawing.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Dynamic.Runtime.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Formats.Asn1.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Formats.Tar.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Globalization.Calendars.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Globalization.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Globalization.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.Compression.Brotli.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.Compression.FileSystem.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.Compression.ZipFile.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.Compression.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.FileSystem.AccessControl.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.FileSystem.DriveInfo.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.FileSystem.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.FileSystem.Watcher.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.FileSystem.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.IsolatedStorage.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.MemoryMappedFiles.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.Pipes.AccessControl.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.Pipes.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.UnmanagedMemoryStream.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Linq.Expressions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Linq.Parallel.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Linq.Queryable.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Linq.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Memory.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Http.Json.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Http.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.HttpListener.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Mail.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.NameResolution.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.NetworkInformation.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Ping.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Quic.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Requests.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Security.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.ServicePoint.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Sockets.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.WebClient.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.WebHeaderCollection.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.WebProxy.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.WebSockets.Client.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.WebSockets.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Numerics.Vectors.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Numerics.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ObjectModel.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Private.CoreLib.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Private.DataContractSerialization.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Private.Uri.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Private.Xml.Linq.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Private.Xml.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.DispatchProxy.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.Emit.ILGeneration.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.Emit.Lightweight.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.Emit.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.Metadata.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.TypeExtensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Resources.Reader.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Resources.ResourceManager.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Resources.Writer.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.CompilerServices.Unsafe.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.CompilerServices.VisualC.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Handles.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.InteropServices.JavaScript.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.InteropServices.RuntimeInformation.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.InteropServices.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Intrinsics.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Loader.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Numerics.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Serialization.Formatters.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Serialization.Json.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Serialization.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Serialization.Xml.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Serialization.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.AccessControl.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Claims.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Algorithms.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Cng.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Csp.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Encoding.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.OpenSsl.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.X509Certificates.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Principal.Windows.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Principal.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.SecureString.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ServiceModel.Web.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ServiceProcess.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Text.Encoding.CodePages.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Text.Encoding.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Text.Encoding.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Text.RegularExpressions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Overlapped.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Tasks.Dataflow.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Tasks.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Tasks.Parallel.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Tasks.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Thread.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.ThreadPool.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Timer.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Transactions.Local.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Transactions.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ValueTuple.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Web.HttpUtility.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Web.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Windows.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.Linq.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.ReaderWriter.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.Serialization.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.XDocument.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.XPath.XDocument.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.XPath.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.XmlDocument.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.XmlSerializer.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "mscorlib.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "netstandard.dll": { + "assemblyVersion": "2.1.0.0", + "fileVersion": "8.0.1925.36514" + } + }, + "native": { + "Microsoft.DiaSymReader.Native.amd64.dll": { + "fileVersion": "14.42.34436.0" + }, + "System.IO.Compression.Native.dll": { + "fileVersion": "8.0.1925.36514" + }, + "clretwrc.dll": { + "fileVersion": "8.0.1925.36514" + }, + "clrgc.dll": { + "fileVersion": "8.0.1925.36514" + }, + "clrjit.dll": { + "fileVersion": "8.0.1925.36514" + }, + "coreclr.dll": { + "fileVersion": "8.0.1925.36514" + }, + "createdump.exe": { + "fileVersion": "8.0.1925.36514" + }, + "hostfxr.dll": { + "fileVersion": "8.0.1925.36514" + }, + "hostpolicy.dll": { + "fileVersion": "8.0.1925.36514" + }, + "mscordaccore.dll": { + "fileVersion": "8.0.1925.36514" + }, + "mscordaccore_amd64_amd64_8.0.1925.36514.dll": { + "fileVersion": "8.0.1925.36514" + }, + "mscordbi.dll": { + "fileVersion": "8.0.1925.36514" + }, + "mscorrc.dll": { + "fileVersion": "8.0.1925.36514" + }, + "msquic.dll": { + "fileVersion": "2.4.8.0" + } + } + }, + "runtimepack.Microsoft.WindowsDesktop.App.Runtime.win-x64/8.0.19": { + "runtime": { + "Accessibility.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "DirectWriteForwarder.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "Microsoft.VisualBasic.Forms.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "Microsoft.VisualBasic.dll": { + "assemblyVersion": "10.1.0.0", + "fileVersion": "8.0.1925.36703" + }, + "Microsoft.Win32.Registry.AccessControl.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "Microsoft.Win32.SystemEvents.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "PresentationCore.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework-SystemCore.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework-SystemData.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework-SystemDrawing.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework-SystemXml.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework-SystemXmlLinq.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.Aero.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.Aero2.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.AeroLite.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.Classic.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.Luna.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.Royale.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationUI.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "ReachFramework.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "System.CodeDom.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Configuration.ConfigurationManager.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Design.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Diagnostics.EventLog.Messages.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "0.0.0.0" + }, + "System.Diagnostics.EventLog.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.PerformanceCounter.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.DirectoryServices.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Drawing.Common.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Drawing.Design.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Drawing.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.IO.Packaging.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Printing.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "System.Resources.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Pkcs.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.ProtectedData.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Xml.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Permissions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.AccessControl.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Windows.Controls.Ribbon.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "System.Windows.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Windows.Forms.Design.Editors.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Windows.Forms.Design.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Windows.Forms.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Windows.Forms.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Windows.Input.Manipulations.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "System.Windows.Presentation.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "System.Xaml.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "UIAutomationClient.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "UIAutomationClientSideProviders.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "UIAutomationProvider.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "UIAutomationTypes.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "WindowsBase.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "WindowsFormsIntegration.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + } + }, + "native": { + "D3DCompiler_47_cor3.dll": { + "fileVersion": "10.0.22621.3233" + }, + "PenImc_cor3.dll": { + "fileVersion": "8.0.1925.36811" + }, + "PresentationNative_cor3.dll": { + "fileVersion": "8.0.25.16802" + }, + "vcruntime140_cor3.dll": { + "fileVersion": "14.42.34438.0" + }, + "wpfgfx_cor3.dll": { + "fileVersion": "8.0.1925.36811" + } + } + }, + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "dependencies": { + "Microsoft.Bcl.AsyncInterfaces": "10.0.0", + "Microsoft.Extensions.Features": "10.0.0", + "System.IO.Pipelines": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Net.ServerSentEvents": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", + "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0", + "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", + "Microsoft.Bcl.TimeProvider": "10.0.0", + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging": "10.0.0", + "System.Threading.Channels": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Features/10.0.0": { + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Logging/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "System.Diagnostics.DiagnosticSource": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Options/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "Microsoft.Extensions.Primitives": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.NET.ILLink.Tasks/8.0.19": {}, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "runtime": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.IO.Pipelines/10.0.0": { + "runtime": { + "lib/net8.0/System.IO.Pipelines.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Net.ServerSentEvents/10.0.0": { + "runtime": { + "lib/net8.0/System.Net.ServerSentEvents.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Text.Encodings.Web/10.0.0": { + "runtime": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Text.Json/10.0.0": { + "dependencies": { + "System.IO.Pipelines": "10.0.0", + "System.Text.Encodings.Web": "10.0.0" + }, + "runtime": { + "lib/net8.0/System.Text.Json.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Threading.Channels/10.0.0": { + "runtime": { + "lib/net8.0/System.Threading.Channels.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + } + } + }, + "libraries": { + "SignalRTest/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "runtimepack.Microsoft.NETCore.App.Runtime.win-x64/8.0.19": { + "type": "runtimepack", + "serviceable": false, + "sha512": "" + }, + "runtimepack.Microsoft.WindowsDesktop.App.Runtime.win-x64/8.0.19": { + "type": "runtimepack", + "serviceable": false, + "sha512": "" + }, + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", + "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", + "hashPath": "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", + "path": "microsoft.aspnetcore.http.connections.client/10.0.0", + "hashPath": "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", + "path": "microsoft.aspnetcore.http.connections.common/10.0.0", + "hashPath": "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", + "path": "microsoft.aspnetcore.signalr.client/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", + "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", + "path": "microsoft.aspnetcore.signalr.common/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", + "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512" + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", + "path": "microsoft.bcl.asyncinterfaces/10.0.0", + "hashPath": "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512" + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", + "path": "microsoft.bcl.timeprovider/10.0.0", + "hashPath": "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", + "path": "microsoft.extensions.dependencyinjection/10.0.0", + "hashPath": "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", + "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", + "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Features/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", + "path": "microsoft.extensions.features/10.0.0", + "hashPath": "microsoft.extensions.features.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Logging/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", + "path": "microsoft.extensions.logging/10.0.0", + "hashPath": "microsoft.extensions.logging.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", + "path": "microsoft.extensions.logging.abstractions/10.0.0", + "hashPath": "microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Options/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", + "path": "microsoft.extensions.options/10.0.0", + "hashPath": "microsoft.extensions.options.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", + "path": "microsoft.extensions.primitives/10.0.0", + "hashPath": "microsoft.extensions.primitives.10.0.0.nupkg.sha512" + }, + "Microsoft.NET.ILLink.Tasks/8.0.19": { + "type": "package", + "serviceable": true, + "sha512": "sha512-IhHf+zeZiaE5EXRyxILd4qM+Hj9cxV3sa8MpzZgeEhpvaG3a1VEGF6UCaPFLO44Kua3JkLKluE0SWVamS50PlA==", + "path": "microsoft.net.illink.tasks/8.0.19", + "hashPath": "microsoft.net.illink.tasks.8.0.19.nupkg.sha512" + }, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", + "path": "system.diagnostics.diagnosticsource/10.0.0", + "hashPath": "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512" + }, + "System.IO.Pipelines/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", + "path": "system.io.pipelines/10.0.0", + "hashPath": "system.io.pipelines.10.0.0.nupkg.sha512" + }, + "System.Net.ServerSentEvents/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", + "path": "system.net.serversentevents/10.0.0", + "hashPath": "system.net.serversentevents.10.0.0.nupkg.sha512" + }, + "System.Text.Encodings.Web/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", + "path": "system.text.encodings.web/10.0.0", + "hashPath": "system.text.encodings.web.10.0.0.nupkg.sha512" + }, + "System.Text.Json/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", + "path": "system.text.json/10.0.0", + "hashPath": "system.text.json.10.0.0.nupkg.sha512" + }, + "System.Threading.Channels/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", + "path": "system.threading.channels/10.0.0", + "hashPath": "system.threading.channels.10.0.0.nupkg.sha512" + } + }, + "runtimes": { + "win-x64": [ + "win", + "any", + "base" + ] + } } \ No newline at end of file diff --git a/backend/SignalRTest/bin/Release/net8.0-windows/win-x64/SignalRTest.runtimeconfig.json b/backend/SignalRTest/bin/Release/net8.0-windows/win-x64/SignalRTest.runtimeconfig.json index 5fb4863..b05f485 100644 --- a/backend/SignalRTest/bin/Release/net8.0-windows/win-x64/SignalRTest.runtimeconfig.json +++ b/backend/SignalRTest/bin/Release/net8.0-windows/win-x64/SignalRTest.runtimeconfig.json @@ -1,20 +1,20 @@ -{ - "runtimeOptions": { - "tfm": "net8.0", - "includedFrameworks": [ - { - "name": "Microsoft.NETCore.App", - "version": "8.0.19" - }, - { - "name": "Microsoft.WindowsDesktop.App", - "version": "8.0.19" - } - ], - "configProperties": { - "System.Reflection.Metadata.MetadataUpdater.IsSupported": false, - "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": true, - "CSWINRT_USE_WINDOWS_UI_XAML_PROJECTIONS": false - } - } +{ + "runtimeOptions": { + "tfm": "net8.0", + "includedFrameworks": [ + { + "name": "Microsoft.NETCore.App", + "version": "8.0.19" + }, + { + "name": "Microsoft.WindowsDesktop.App", + "version": "8.0.19" + } + ], + "configProperties": { + "System.Reflection.Metadata.MetadataUpdater.IsSupported": false, + "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": true, + "CSWINRT_USE_WINDOWS_UI_XAML_PROJECTIONS": false + } + } } \ No newline at end of file diff --git a/backend/SignalRTest/obj/Debug/net8.0-windows/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/backend/SignalRTest/obj/Debug/net8.0-windows/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs index 2217181..678fc5f 100644 --- a/backend/SignalRTest/obj/Debug/net8.0-windows/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs +++ b/backend/SignalRTest/obj/Debug/net8.0-windows/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs @@ -1,4 +1,4 @@ -// -using System; -using System.Reflection; -[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")] +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")] diff --git a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.AssemblyInfo.cs b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.AssemblyInfo.cs index 6e68c6a..63c202b 100644 --- a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.AssemblyInfo.cs +++ b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.AssemblyInfo.cs @@ -1,25 +1,25 @@ -//------------------------------------------------------------------------------ -// -// 此代码由工具生成。 -// 运行时版本:4.0.30319.42000 -// -// 对此文件的更改可能会导致不正确的行为,并且如果 -// 重新生成代码,这些更改将会丢失。 -// -//------------------------------------------------------------------------------ - -using System; -using System.Reflection; - -[assembly: System.Reflection.AssemblyCompanyAttribute("SignalRTest")] -[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] -[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+219665d4657ce917f2ec72657b9e54ab4daccc10")] -[assembly: System.Reflection.AssemblyProductAttribute("SignalRTest")] -[assembly: System.Reflection.AssemblyTitleAttribute("SignalRTest")] -[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] -[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")] -[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")] - -// 由 MSBuild WriteCodeFragment 类生成。 - +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("SignalRTest")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+219665d4657ce917f2ec72657b9e54ab4daccc10")] +[assembly: System.Reflection.AssemblyProductAttribute("SignalRTest")] +[assembly: System.Reflection.AssemblyTitleAttribute("SignalRTest")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] +[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")] +[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")] + +// 由 MSBuild WriteCodeFragment 类生成。 + diff --git a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.AssemblyInfoInputs.cache b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.AssemblyInfoInputs.cache index e0e86c9..82fd38e 100644 --- a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.AssemblyInfoInputs.cache +++ b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.AssemblyInfoInputs.cache @@ -1 +1 @@ -7b34bc95a170122dd9a850b10d96882caa3af0e14348359c3820644e1bf59d7d +7b34bc95a170122dd9a850b10d96882caa3af0e14348359c3820644e1bf59d7d diff --git a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.GeneratedMSBuildEditorConfig.editorconfig b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.GeneratedMSBuildEditorConfig.editorconfig index 9aa82f8..ab86a05 100644 --- a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.GeneratedMSBuildEditorConfig.editorconfig +++ b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.GeneratedMSBuildEditorConfig.editorconfig @@ -1,22 +1,22 @@ -is_global = true -build_property.ApplicationManifest = -build_property.StartupObject = -build_property.ApplicationDefaultFont = -build_property.ApplicationHighDpiMode = -build_property.ApplicationUseCompatibleTextRendering = -build_property.ApplicationVisualStyles = -build_property.TargetFramework = net8.0-windows -build_property.TargetPlatformMinVersion = 7.0 -build_property.UsingMicrosoftNETSdkWeb = -build_property.ProjectTypeGuids = -build_property.InvariantGlobalization = -build_property.PlatformNeutralAssembly = -build_property.EnforceExtendedAnalyzerRules = -build_property._SupportedPlatformList = Linux,macOS,Windows -build_property.RootNamespace = SignalRTest -build_property.ProjectDir = C:\Users\nanxun\Documents\IM\backend\SignalRTest\ -build_property.EnableComHosting = -build_property.EnableGeneratedComInterfaceComImportInterop = -build_property.CsWinRTUseWindowsUIXamlProjections = false -build_property.EffectiveAnalysisLevelStyle = 8.0 -build_property.EnableCodeStyleSeverity = +is_global = true +build_property.ApplicationManifest = +build_property.StartupObject = +build_property.ApplicationDefaultFont = +build_property.ApplicationHighDpiMode = +build_property.ApplicationUseCompatibleTextRendering = +build_property.ApplicationVisualStyles = +build_property.TargetFramework = net8.0-windows +build_property.TargetPlatformMinVersion = 7.0 +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = SignalRTest +build_property.ProjectDir = C:\Users\nanxun\Documents\IM\backend\SignalRTest\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = +build_property.CsWinRTUseWindowsUIXamlProjections = false +build_property.EffectiveAnalysisLevelStyle = 8.0 +build_property.EnableCodeStyleSeverity = diff --git a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.GlobalUsings.g.cs b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.GlobalUsings.g.cs index 84bbb89..fea4009 100644 --- a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.GlobalUsings.g.cs +++ b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.GlobalUsings.g.cs @@ -1,10 +1,10 @@ -// -global using global::System; -global using global::System.Collections.Generic; -global using global::System.Drawing; -global using global::System.IO; -global using global::System.Linq; -global using global::System.Net.Http; -global using global::System.Threading; -global using global::System.Threading.Tasks; -global using global::System.Windows.Forms; +// +global using global::System; +global using global::System.Collections.Generic; +global using global::System.Drawing; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Threading; +global using global::System.Threading.Tasks; +global using global::System.Windows.Forms; diff --git a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.csproj.CoreCompileInputs.cache b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.csproj.CoreCompileInputs.cache index 2a2e766..18d9a16 100644 --- a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.csproj.CoreCompileInputs.cache +++ b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -798df1c64700bafd0af19dbc122dfc8329d96a84decc4c645cf227078afc5b70 +798df1c64700bafd0af19dbc122dfc8329d96a84decc4c645cf227078afc5b70 diff --git a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.csproj.FileListAbsolute.txt b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.csproj.FileListAbsolute.txt index 219b150..031c7da 100644 --- a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.csproj.FileListAbsolute.txt +++ b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.csproj.FileListAbsolute.txt @@ -1,41 +1,41 @@ -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\SignalRTest.exe -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\SignalRTest.deps.json -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\SignalRTest.runtimeconfig.json -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\SignalRTest.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\SignalRTest.pdb -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.Connections.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.Http.Connections.Client.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.Http.Connections.Common.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.SignalR.Client.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.SignalR.Client.Core.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.SignalR.Common.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.SignalR.Protocols.Json.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Bcl.AsyncInterfaces.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Bcl.TimeProvider.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.DependencyInjection.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.DependencyInjection.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.Features.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.Logging.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.Logging.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.Options.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.Primitives.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\System.Diagnostics.DiagnosticSource.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\System.IO.Pipelines.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\System.Net.ServerSentEvents.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\System.Text.Encodings.Web.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\System.Text.Json.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\System.Threading.Channels.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\runtimes\browser\lib\net8.0\System.Text.Encodings.Web.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.csproj.AssemblyReference.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.Form1.resources -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.csproj.GenerateResource.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.GeneratedMSBuildEditorConfig.editorconfig -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.AssemblyInfoInputs.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.AssemblyInfo.cs -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.csproj.CoreCompileInputs.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRT.5CF90B77.Up2Date -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\refint\SignalRTest.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.pdb -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.genruntimeconfig.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\ref\SignalRTest.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\SignalRTest.exe +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\SignalRTest.deps.json +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\SignalRTest.runtimeconfig.json +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\SignalRTest.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\SignalRTest.pdb +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.Connections.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.Http.Connections.Client.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.Http.Connections.Common.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.SignalR.Client.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.SignalR.Client.Core.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.SignalR.Common.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.AspNetCore.SignalR.Protocols.Json.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Bcl.AsyncInterfaces.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Bcl.TimeProvider.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.DependencyInjection.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.DependencyInjection.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.Features.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.Logging.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.Logging.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.Options.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\Microsoft.Extensions.Primitives.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\System.Diagnostics.DiagnosticSource.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\System.IO.Pipelines.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\System.Net.ServerSentEvents.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\System.Text.Encodings.Web.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\System.Text.Json.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\System.Threading.Channels.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Debug\net8.0-windows\runtimes\browser\lib\net8.0\System.Text.Encodings.Web.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.csproj.AssemblyReference.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.Form1.resources +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.csproj.GenerateResource.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.GeneratedMSBuildEditorConfig.editorconfig +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.AssemblyInfoInputs.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.AssemblyInfo.cs +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.csproj.CoreCompileInputs.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRT.5CF90B77.Up2Date +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\refint\SignalRTest.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.pdb +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\SignalRTest.genruntimeconfig.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Debug\net8.0-windows\ref\SignalRTest.dll diff --git a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.designer.deps.json b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.designer.deps.json index d315bf2..2c020ba 100644 --- a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.designer.deps.json +++ b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.designer.deps.json @@ -1,406 +1,406 @@ -{ - "runtimeTarget": { - "name": ".NETCoreApp,Version=v8.0", - "signature": "" - }, - "compilationOptions": {}, - "targets": { - ".NETCoreApp,Version=v8.0": { - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "10.0.0", - "Microsoft.Extensions.Features": "10.0.0", - "System.IO.Pipelines": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Net.ServerSentEvents": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", - "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0", - "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", - "Microsoft.Bcl.TimeProvider": "10.0.0", - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging": "10.0.0", - "System.Threading.Channels": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "runtime": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Features/10.0.0": { - "runtime": { - "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Logging/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "System.Diagnostics.DiagnosticSource": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Options/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "Microsoft.Extensions.Primitives": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "runtime": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.IO.Pipelines/10.0.0": { - "runtime": { - "lib/net8.0/System.IO.Pipelines.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Net.ServerSentEvents/10.0.0": { - "runtime": { - "lib/net8.0/System.Net.ServerSentEvents.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Text.Encodings.Web/10.0.0": { - "runtime": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - }, - "runtimeTargets": { - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { - "rid": "browser", - "assetType": "runtime", - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Text.Json/10.0.0": { - "dependencies": { - "System.IO.Pipelines": "10.0.0", - "System.Text.Encodings.Web": "10.0.0" - }, - "runtime": { - "lib/net8.0/System.Text.Json.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Threading.Channels/10.0.0": { - "runtime": { - "lib/net8.0/System.Threading.Channels.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - } - } - }, - "libraries": { - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", - "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", - "hashPath": "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", - "path": "microsoft.aspnetcore.http.connections.client/10.0.0", - "hashPath": "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", - "path": "microsoft.aspnetcore.http.connections.common/10.0.0", - "hashPath": "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", - "path": "microsoft.aspnetcore.signalr.client/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", - "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", - "path": "microsoft.aspnetcore.signalr.common/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", - "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512" - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", - "path": "microsoft.bcl.asyncinterfaces/10.0.0", - "hashPath": "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512" - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", - "path": "microsoft.bcl.timeprovider/10.0.0", - "hashPath": "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", - "path": "microsoft.extensions.dependencyinjection/10.0.0", - "hashPath": "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", - "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", - "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Features/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", - "path": "microsoft.extensions.features/10.0.0", - "hashPath": "microsoft.extensions.features.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Logging/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", - "path": "microsoft.extensions.logging/10.0.0", - "hashPath": "microsoft.extensions.logging.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", - "path": "microsoft.extensions.logging.abstractions/10.0.0", - "hashPath": "microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Options/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", - "path": "microsoft.extensions.options/10.0.0", - "hashPath": "microsoft.extensions.options.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", - "path": "microsoft.extensions.primitives/10.0.0", - "hashPath": "microsoft.extensions.primitives.10.0.0.nupkg.sha512" - }, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", - "path": "system.diagnostics.diagnosticsource/10.0.0", - "hashPath": "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512" - }, - "System.IO.Pipelines/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", - "path": "system.io.pipelines/10.0.0", - "hashPath": "system.io.pipelines.10.0.0.nupkg.sha512" - }, - "System.Net.ServerSentEvents/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", - "path": "system.net.serversentevents/10.0.0", - "hashPath": "system.net.serversentevents.10.0.0.nupkg.sha512" - }, - "System.Text.Encodings.Web/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", - "path": "system.text.encodings.web/10.0.0", - "hashPath": "system.text.encodings.web.10.0.0.nupkg.sha512" - }, - "System.Text.Json/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", - "path": "system.text.json/10.0.0", - "hashPath": "system.text.json.10.0.0.nupkg.sha512" - }, - "System.Threading.Channels/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", - "path": "system.threading.channels/10.0.0", - "hashPath": "system.threading.channels.10.0.0.nupkg.sha512" - } - } +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v8.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v8.0": { + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "dependencies": { + "Microsoft.Bcl.AsyncInterfaces": "10.0.0", + "Microsoft.Extensions.Features": "10.0.0", + "System.IO.Pipelines": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Net.ServerSentEvents": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", + "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0", + "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", + "Microsoft.Bcl.TimeProvider": "10.0.0", + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging": "10.0.0", + "System.Threading.Channels": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Features/10.0.0": { + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Logging/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "System.Diagnostics.DiagnosticSource": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Options/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "Microsoft.Extensions.Primitives": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "runtime": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.IO.Pipelines/10.0.0": { + "runtime": { + "lib/net8.0/System.IO.Pipelines.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Net.ServerSentEvents/10.0.0": { + "runtime": { + "lib/net8.0/System.Net.ServerSentEvents.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Text.Encodings.Web/10.0.0": { + "runtime": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + }, + "runtimeTargets": { + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { + "rid": "browser", + "assetType": "runtime", + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Text.Json/10.0.0": { + "dependencies": { + "System.IO.Pipelines": "10.0.0", + "System.Text.Encodings.Web": "10.0.0" + }, + "runtime": { + "lib/net8.0/System.Text.Json.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Threading.Channels/10.0.0": { + "runtime": { + "lib/net8.0/System.Threading.Channels.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + } + } + }, + "libraries": { + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", + "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", + "hashPath": "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", + "path": "microsoft.aspnetcore.http.connections.client/10.0.0", + "hashPath": "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", + "path": "microsoft.aspnetcore.http.connections.common/10.0.0", + "hashPath": "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", + "path": "microsoft.aspnetcore.signalr.client/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", + "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", + "path": "microsoft.aspnetcore.signalr.common/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", + "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512" + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", + "path": "microsoft.bcl.asyncinterfaces/10.0.0", + "hashPath": "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512" + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", + "path": "microsoft.bcl.timeprovider/10.0.0", + "hashPath": "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", + "path": "microsoft.extensions.dependencyinjection/10.0.0", + "hashPath": "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", + "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", + "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Features/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", + "path": "microsoft.extensions.features/10.0.0", + "hashPath": "microsoft.extensions.features.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Logging/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", + "path": "microsoft.extensions.logging/10.0.0", + "hashPath": "microsoft.extensions.logging.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", + "path": "microsoft.extensions.logging.abstractions/10.0.0", + "hashPath": "microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Options/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", + "path": "microsoft.extensions.options/10.0.0", + "hashPath": "microsoft.extensions.options.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", + "path": "microsoft.extensions.primitives/10.0.0", + "hashPath": "microsoft.extensions.primitives.10.0.0.nupkg.sha512" + }, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", + "path": "system.diagnostics.diagnosticsource/10.0.0", + "hashPath": "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512" + }, + "System.IO.Pipelines/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", + "path": "system.io.pipelines/10.0.0", + "hashPath": "system.io.pipelines.10.0.0.nupkg.sha512" + }, + "System.Net.ServerSentEvents/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", + "path": "system.net.serversentevents/10.0.0", + "hashPath": "system.net.serversentevents.10.0.0.nupkg.sha512" + }, + "System.Text.Encodings.Web/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", + "path": "system.text.encodings.web/10.0.0", + "hashPath": "system.text.encodings.web.10.0.0.nupkg.sha512" + }, + "System.Text.Json/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", + "path": "system.text.json/10.0.0", + "hashPath": "system.text.json.10.0.0.nupkg.sha512" + }, + "System.Threading.Channels/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", + "path": "system.threading.channels/10.0.0", + "hashPath": "system.threading.channels.10.0.0.nupkg.sha512" + } + } } \ No newline at end of file diff --git a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.designer.runtimeconfig.json b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.designer.runtimeconfig.json index 62da401..bdec86a 100644 --- a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.designer.runtimeconfig.json +++ b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.designer.runtimeconfig.json @@ -1,25 +1,25 @@ -{ - "runtimeOptions": { - "tfm": "net8.0", - "frameworks": [ - { - "name": "Microsoft.NETCore.App", - "version": "8.0.0" - }, - { - "name": "Microsoft.WindowsDesktop.App", - "version": "8.0.0" - } - ], - "additionalProbingPaths": [ - "C:\\Users\\nanxun\\.dotnet\\store\\|arch|\\|tfm|", - "C:\\Users\\nanxun\\.nuget\\packages", - "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" - ], - "configProperties": { - "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": true, - "CSWINRT_USE_WINDOWS_UI_XAML_PROJECTIONS": false, - "Microsoft.NETCore.DotNetHostPolicy.SetAppPaths": true - } - } +{ + "runtimeOptions": { + "tfm": "net8.0", + "frameworks": [ + { + "name": "Microsoft.NETCore.App", + "version": "8.0.0" + }, + { + "name": "Microsoft.WindowsDesktop.App", + "version": "8.0.0" + } + ], + "additionalProbingPaths": [ + "C:\\Users\\nanxun\\.dotnet\\store\\|arch|\\|tfm|", + "C:\\Users\\nanxun\\.nuget\\packages", + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configProperties": { + "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": true, + "CSWINRT_USE_WINDOWS_UI_XAML_PROJECTIONS": false, + "Microsoft.NETCore.DotNetHostPolicy.SetAppPaths": true + } + } } \ No newline at end of file diff --git a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.genruntimeconfig.cache b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.genruntimeconfig.cache index ed70d1b..beb001a 100644 --- a/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.genruntimeconfig.cache +++ b/backend/SignalRTest/obj/Debug/net8.0-windows/SignalRTest.genruntimeconfig.cache @@ -1 +1 @@ -c05369691aaf31d105dcbffdf472a87fdbcb1c1844bdf44f71087b9d0141f9d6 +c05369691aaf31d105dcbffdf472a87fdbcb1c1844bdf44f71087b9d0141f9d6 diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/backend/SignalRTest/obj/Release/net8.0-windows/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs index 2217181..678fc5f 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs +++ b/backend/SignalRTest/obj/Release/net8.0-windows/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs @@ -1,4 +1,4 @@ -// -using System; -using System.Reflection; -[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")] +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")] diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.AssemblyInfo.cs b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.AssemblyInfo.cs index 5050a24..e86e319 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.AssemblyInfo.cs +++ b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.AssemblyInfo.cs @@ -1,25 +1,25 @@ -//------------------------------------------------------------------------------ -// -// 此代码由工具生成。 -// 运行时版本:4.0.30319.42000 -// -// 对此文件的更改可能会导致不正确的行为,并且如果 -// 重新生成代码,这些更改将会丢失。 -// -//------------------------------------------------------------------------------ - -using System; -using System.Reflection; - -[assembly: System.Reflection.AssemblyCompanyAttribute("SignalRTest")] -[assembly: System.Reflection.AssemblyConfigurationAttribute("Release")] -[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+219665d4657ce917f2ec72657b9e54ab4daccc10")] -[assembly: System.Reflection.AssemblyProductAttribute("SignalRTest")] -[assembly: System.Reflection.AssemblyTitleAttribute("SignalRTest")] -[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] -[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")] -[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")] - -// 由 MSBuild WriteCodeFragment 类生成。 - +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("SignalRTest")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Release")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+219665d4657ce917f2ec72657b9e54ab4daccc10")] +[assembly: System.Reflection.AssemblyProductAttribute("SignalRTest")] +[assembly: System.Reflection.AssemblyTitleAttribute("SignalRTest")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] +[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")] +[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")] + +// 由 MSBuild WriteCodeFragment 类生成。 + diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.AssemblyInfoInputs.cache b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.AssemblyInfoInputs.cache index 4091985..f7abfd7 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.AssemblyInfoInputs.cache +++ b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.AssemblyInfoInputs.cache @@ -1 +1 @@ -6c95105ac76c9f3a2fc221cab5f1d5a22db152a0fc8b642ffb31000a29645355 +6c95105ac76c9f3a2fc221cab5f1d5a22db152a0fc8b642ffb31000a29645355 diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.GeneratedMSBuildEditorConfig.editorconfig b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.GeneratedMSBuildEditorConfig.editorconfig index 9aa82f8..ab86a05 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.GeneratedMSBuildEditorConfig.editorconfig +++ b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.GeneratedMSBuildEditorConfig.editorconfig @@ -1,22 +1,22 @@ -is_global = true -build_property.ApplicationManifest = -build_property.StartupObject = -build_property.ApplicationDefaultFont = -build_property.ApplicationHighDpiMode = -build_property.ApplicationUseCompatibleTextRendering = -build_property.ApplicationVisualStyles = -build_property.TargetFramework = net8.0-windows -build_property.TargetPlatformMinVersion = 7.0 -build_property.UsingMicrosoftNETSdkWeb = -build_property.ProjectTypeGuids = -build_property.InvariantGlobalization = -build_property.PlatformNeutralAssembly = -build_property.EnforceExtendedAnalyzerRules = -build_property._SupportedPlatformList = Linux,macOS,Windows -build_property.RootNamespace = SignalRTest -build_property.ProjectDir = C:\Users\nanxun\Documents\IM\backend\SignalRTest\ -build_property.EnableComHosting = -build_property.EnableGeneratedComInterfaceComImportInterop = -build_property.CsWinRTUseWindowsUIXamlProjections = false -build_property.EffectiveAnalysisLevelStyle = 8.0 -build_property.EnableCodeStyleSeverity = +is_global = true +build_property.ApplicationManifest = +build_property.StartupObject = +build_property.ApplicationDefaultFont = +build_property.ApplicationHighDpiMode = +build_property.ApplicationUseCompatibleTextRendering = +build_property.ApplicationVisualStyles = +build_property.TargetFramework = net8.0-windows +build_property.TargetPlatformMinVersion = 7.0 +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = SignalRTest +build_property.ProjectDir = C:\Users\nanxun\Documents\IM\backend\SignalRTest\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = +build_property.CsWinRTUseWindowsUIXamlProjections = false +build_property.EffectiveAnalysisLevelStyle = 8.0 +build_property.EnableCodeStyleSeverity = diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.GlobalUsings.g.cs b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.GlobalUsings.g.cs index 84bbb89..fea4009 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.GlobalUsings.g.cs +++ b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.GlobalUsings.g.cs @@ -1,10 +1,10 @@ -// -global using global::System; -global using global::System.Collections.Generic; -global using global::System.Drawing; -global using global::System.IO; -global using global::System.Linq; -global using global::System.Net.Http; -global using global::System.Threading; -global using global::System.Threading.Tasks; -global using global::System.Windows.Forms; +// +global using global::System; +global using global::System.Collections.Generic; +global using global::System.Drawing; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Threading; +global using global::System.Threading.Tasks; +global using global::System.Windows.Forms; diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.csproj.CoreCompileInputs.cache b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.csproj.CoreCompileInputs.cache index a89f163..1872322 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.csproj.CoreCompileInputs.cache +++ b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -c0744805f016017646cd8ec4510e403b0f32b575ddd6972e8a72d1a8bab8cf46 +c0744805f016017646cd8ec4510e403b0f32b575ddd6972e8a72d1a8bab8cf46 diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.csproj.FileListAbsolute.txt b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.csproj.FileListAbsolute.txt index 4fadf07..0930920 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.csproj.FileListAbsolute.txt +++ b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.csproj.FileListAbsolute.txt @@ -1,41 +1,41 @@ -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\SignalRTest.exe -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\SignalRTest.deps.json -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\SignalRTest.runtimeconfig.json -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\SignalRTest.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\SignalRTest.pdb -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.Connections.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.Http.Connections.Client.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.Http.Connections.Common.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.SignalR.Client.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.SignalR.Client.Core.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.SignalR.Common.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.SignalR.Protocols.Json.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Bcl.AsyncInterfaces.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Bcl.TimeProvider.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.DependencyInjection.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.DependencyInjection.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.Features.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.Logging.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.Logging.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.Options.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.Primitives.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\System.Diagnostics.DiagnosticSource.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\System.IO.Pipelines.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\System.Net.ServerSentEvents.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\System.Text.Encodings.Web.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\System.Text.Json.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\System.Threading.Channels.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\runtimes\browser\lib\net8.0\System.Text.Encodings.Web.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.csproj.AssemblyReference.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.Form1.resources -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.csproj.GenerateResource.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.GeneratedMSBuildEditorConfig.editorconfig -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.AssemblyInfoInputs.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.AssemblyInfo.cs -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.csproj.CoreCompileInputs.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRT.5CF90B77.Up2Date -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\refint\SignalRTest.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.pdb -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.genruntimeconfig.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\ref\SignalRTest.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\SignalRTest.exe +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\SignalRTest.deps.json +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\SignalRTest.runtimeconfig.json +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\SignalRTest.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\SignalRTest.pdb +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.Connections.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.Http.Connections.Client.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.Http.Connections.Common.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.SignalR.Client.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.SignalR.Client.Core.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.SignalR.Common.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.AspNetCore.SignalR.Protocols.Json.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Bcl.AsyncInterfaces.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Bcl.TimeProvider.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.DependencyInjection.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.DependencyInjection.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.Features.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.Logging.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.Logging.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.Options.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\Microsoft.Extensions.Primitives.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\System.Diagnostics.DiagnosticSource.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\System.IO.Pipelines.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\System.Net.ServerSentEvents.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\System.Text.Encodings.Web.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\System.Text.Json.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\System.Threading.Channels.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\runtimes\browser\lib\net8.0\System.Text.Encodings.Web.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.csproj.AssemblyReference.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.Form1.resources +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.csproj.GenerateResource.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.GeneratedMSBuildEditorConfig.editorconfig +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.AssemblyInfoInputs.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.AssemblyInfo.cs +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.csproj.CoreCompileInputs.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRT.5CF90B77.Up2Date +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\refint\SignalRTest.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.pdb +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\SignalRTest.genruntimeconfig.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\ref\SignalRTest.dll diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.genruntimeconfig.cache b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.genruntimeconfig.cache index afc3a0c..f14f743 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.genruntimeconfig.cache +++ b/backend/SignalRTest/obj/Release/net8.0-windows/SignalRTest.genruntimeconfig.cache @@ -1 +1 @@ -730922d6fa16c413a1bc880e81bd425dd03f1fdba9d65be778f79d886ef5a309 +730922d6fa16c413a1bc880e81bd425dd03f1fdba9d65be778f79d886ef5a309 diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs index 2217181..678fc5f 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs +++ b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs @@ -1,4 +1,4 @@ -// -using System; -using System.Reflection; -[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")] +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")] diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/PublishOutputs.c7711f52c6.txt b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/PublishOutputs.c7711f52c6.txt index 7145286..5d4afd7 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/PublishOutputs.c7711f52c6.txt +++ b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/PublishOutputs.c7711f52c6.txt @@ -1,7 +1,7 @@ -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\SignalRTest.pdb -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\D3DCompiler_47_cor3.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\PenImc_cor3.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\PresentationNative_cor3.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\vcruntime140_cor3.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\wpfgfx_cor3.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\SignalRTest.exe +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\SignalRTest.pdb +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\D3DCompiler_47_cor3.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\PenImc_cor3.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\PresentationNative_cor3.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\vcruntime140_cor3.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\wpfgfx_cor3.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\publish\win-x64\SignalRTest.exe diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.AssemblyInfo.cs b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.AssemblyInfo.cs index 5050a24..e86e319 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.AssemblyInfo.cs +++ b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.AssemblyInfo.cs @@ -1,25 +1,25 @@ -//------------------------------------------------------------------------------ -// -// 此代码由工具生成。 -// 运行时版本:4.0.30319.42000 -// -// 对此文件的更改可能会导致不正确的行为,并且如果 -// 重新生成代码,这些更改将会丢失。 -// -//------------------------------------------------------------------------------ - -using System; -using System.Reflection; - -[assembly: System.Reflection.AssemblyCompanyAttribute("SignalRTest")] -[assembly: System.Reflection.AssemblyConfigurationAttribute("Release")] -[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+219665d4657ce917f2ec72657b9e54ab4daccc10")] -[assembly: System.Reflection.AssemblyProductAttribute("SignalRTest")] -[assembly: System.Reflection.AssemblyTitleAttribute("SignalRTest")] -[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] -[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")] -[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")] - -// 由 MSBuild WriteCodeFragment 类生成。 - +//------------------------------------------------------------------------------ +// +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 +// +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("SignalRTest")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Release")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+219665d4657ce917f2ec72657b9e54ab4daccc10")] +[assembly: System.Reflection.AssemblyProductAttribute("SignalRTest")] +[assembly: System.Reflection.AssemblyTitleAttribute("SignalRTest")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] +[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")] +[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")] + +// 由 MSBuild WriteCodeFragment 类生成。 + diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.AssemblyInfoInputs.cache b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.AssemblyInfoInputs.cache index 4091985..f7abfd7 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.AssemblyInfoInputs.cache +++ b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.AssemblyInfoInputs.cache @@ -1 +1 @@ -6c95105ac76c9f3a2fc221cab5f1d5a22db152a0fc8b642ffb31000a29645355 +6c95105ac76c9f3a2fc221cab5f1d5a22db152a0fc8b642ffb31000a29645355 diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.GeneratedMSBuildEditorConfig.editorconfig b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.GeneratedMSBuildEditorConfig.editorconfig index 2040d7a..2e4e611 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.GeneratedMSBuildEditorConfig.editorconfig +++ b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.GeneratedMSBuildEditorConfig.editorconfig @@ -1,26 +1,26 @@ -is_global = true -build_property.EnableAotAnalyzer = -build_property.EnableSingleFileAnalyzer = true -build_property.EnableTrimAnalyzer = -build_property.IncludeAllContentForSelfExtract = -build_property.ApplicationManifest = -build_property.StartupObject = -build_property.ApplicationDefaultFont = -build_property.ApplicationHighDpiMode = -build_property.ApplicationUseCompatibleTextRendering = -build_property.ApplicationVisualStyles = -build_property.TargetFramework = net8.0-windows -build_property.TargetPlatformMinVersion = 7.0 -build_property.UsingMicrosoftNETSdkWeb = -build_property.ProjectTypeGuids = -build_property.InvariantGlobalization = -build_property.PlatformNeutralAssembly = -build_property.EnforceExtendedAnalyzerRules = -build_property._SupportedPlatformList = Linux,macOS,Windows -build_property.RootNamespace = SignalRTest -build_property.ProjectDir = C:\Users\nanxun\Documents\IM\backend\SignalRTest\ -build_property.EnableComHosting = -build_property.EnableGeneratedComInterfaceComImportInterop = -build_property.CsWinRTUseWindowsUIXamlProjections = false -build_property.EffectiveAnalysisLevelStyle = 8.0 -build_property.EnableCodeStyleSeverity = +is_global = true +build_property.EnableAotAnalyzer = +build_property.EnableSingleFileAnalyzer = true +build_property.EnableTrimAnalyzer = +build_property.IncludeAllContentForSelfExtract = +build_property.ApplicationManifest = +build_property.StartupObject = +build_property.ApplicationDefaultFont = +build_property.ApplicationHighDpiMode = +build_property.ApplicationUseCompatibleTextRendering = +build_property.ApplicationVisualStyles = +build_property.TargetFramework = net8.0-windows +build_property.TargetPlatformMinVersion = 7.0 +build_property.UsingMicrosoftNETSdkWeb = +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property.EnforceExtendedAnalyzerRules = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = SignalRTest +build_property.ProjectDir = C:\Users\nanxun\Documents\IM\backend\SignalRTest\ +build_property.EnableComHosting = +build_property.EnableGeneratedComInterfaceComImportInterop = +build_property.CsWinRTUseWindowsUIXamlProjections = false +build_property.EffectiveAnalysisLevelStyle = 8.0 +build_property.EnableCodeStyleSeverity = diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.GlobalUsings.g.cs b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.GlobalUsings.g.cs index 84bbb89..fea4009 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.GlobalUsings.g.cs +++ b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.GlobalUsings.g.cs @@ -1,10 +1,10 @@ -// -global using global::System; -global using global::System.Collections.Generic; -global using global::System.Drawing; -global using global::System.IO; -global using global::System.Linq; -global using global::System.Net.Http; -global using global::System.Threading; -global using global::System.Threading.Tasks; -global using global::System.Windows.Forms; +// +global using global::System; +global using global::System.Collections.Generic; +global using global::System.Drawing; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Threading; +global using global::System.Threading.Tasks; +global using global::System.Windows.Forms; diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.csproj.CoreCompileInputs.cache b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.csproj.CoreCompileInputs.cache index a4e1e48..7f5f99a 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.csproj.CoreCompileInputs.cache +++ b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -daefb47b81d1e29c0f7a86bf1362a741ac410e35b5fa3d960ba984bda12732bf +daefb47b81d1e29c0f7a86bf1362a741ac410e35b5fa3d960ba984bda12732bf diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.csproj.FileListAbsolute.txt b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.csproj.FileListAbsolute.txt index ff5fa4c..071116e 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.csproj.FileListAbsolute.txt +++ b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.csproj.FileListAbsolute.txt @@ -1,495 +1,495 @@ -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\SignalRTest.exe -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\SignalRTest.deps.json -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\SignalRTest.runtimeconfig.json -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\SignalRTest.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\SignalRTest.pdb -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.Connections.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.Http.Connections.Client.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.Http.Connections.Common.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.SignalR.Client.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.SignalR.Client.Core.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.SignalR.Common.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.SignalR.Protocols.Json.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Bcl.AsyncInterfaces.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Bcl.TimeProvider.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.DependencyInjection.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.DependencyInjection.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.Features.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.Logging.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.Logging.Abstractions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.Options.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.Primitives.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.DiagnosticSource.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Pipelines.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.ServerSentEvents.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Text.Encodings.Web.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Text.Json.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Channels.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.CSharp.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.VisualBasic.Core.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Win32.Primitives.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Win32.Registry.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.AppContext.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Buffers.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Collections.Concurrent.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Collections.Immutable.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Collections.NonGeneric.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Collections.Specialized.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Collections.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ComponentModel.Annotations.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ComponentModel.DataAnnotations.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ComponentModel.EventBasedAsync.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ComponentModel.Primitives.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ComponentModel.TypeConverter.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ComponentModel.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Configuration.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Console.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Core.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Data.Common.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Data.DataSetExtensions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Data.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.Contracts.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.Debug.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.FileVersionInfo.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.Process.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.StackTrace.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.TextWriterTraceListener.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.Tools.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.TraceSource.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.Tracing.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Drawing.Primitives.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Dynamic.Runtime.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Formats.Asn1.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Formats.Tar.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Globalization.Calendars.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Globalization.Extensions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Globalization.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Compression.Brotli.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Compression.FileSystem.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Compression.ZipFile.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Compression.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.FileSystem.AccessControl.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.FileSystem.DriveInfo.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.FileSystem.Primitives.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.FileSystem.Watcher.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.FileSystem.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.IsolatedStorage.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.MemoryMappedFiles.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Pipes.AccessControl.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Pipes.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.UnmanagedMemoryStream.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Linq.Expressions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Linq.Parallel.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Linq.Queryable.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Linq.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Memory.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Http.Json.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Http.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.HttpListener.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Mail.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.NameResolution.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.NetworkInformation.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Ping.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Primitives.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Quic.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Requests.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Security.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.ServicePoint.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Sockets.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.WebClient.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.WebHeaderCollection.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.WebProxy.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.WebSockets.Client.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.WebSockets.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Numerics.Vectors.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Numerics.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ObjectModel.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Private.CoreLib.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Private.DataContractSerialization.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Private.Uri.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Private.Xml.Linq.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Private.Xml.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.DispatchProxy.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.Emit.ILGeneration.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.Emit.Lightweight.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.Emit.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.Extensions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.Metadata.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.Primitives.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.TypeExtensions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Resources.Reader.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Resources.ResourceManager.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Resources.Writer.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.CompilerServices.Unsafe.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.CompilerServices.VisualC.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Extensions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Handles.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.InteropServices.JavaScript.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.InteropServices.RuntimeInformation.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.InteropServices.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Intrinsics.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Loader.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Numerics.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Serialization.Formatters.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Serialization.Json.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Serialization.Primitives.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Serialization.Xml.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Serialization.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.AccessControl.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Claims.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Algorithms.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Cng.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Csp.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Encoding.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.OpenSsl.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Primitives.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.X509Certificates.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Principal.Windows.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Principal.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.SecureString.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ServiceModel.Web.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ServiceProcess.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Text.Encoding.CodePages.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Text.Encoding.Extensions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Text.Encoding.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Text.RegularExpressions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Overlapped.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Tasks.Dataflow.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Tasks.Extensions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Tasks.Parallel.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Tasks.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Thread.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.ThreadPool.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Timer.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Transactions.Local.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Transactions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ValueTuple.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Web.HttpUtility.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Web.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.Linq.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.ReaderWriter.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.Serialization.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.XDocument.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.XPath.XDocument.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.XPath.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.XmlDocument.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.XmlSerializer.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\mscorlib.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\netstandard.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Accessibility.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\DirectWriteForwarder.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.VisualBasic.Forms.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.VisualBasic.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Win32.Registry.AccessControl.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Win32.SystemEvents.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationCore.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework-SystemCore.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework-SystemData.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework-SystemDrawing.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework-SystemXml.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework-SystemXmlLinq.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.Aero.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.Aero2.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.AeroLite.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.Classic.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.Luna.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.Royale.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationUI.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ReachFramework.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.CodeDom.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Configuration.ConfigurationManager.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Design.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.EventLog.Messages.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.EventLog.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.PerformanceCounter.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.DirectoryServices.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Drawing.Common.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Drawing.Design.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Drawing.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Packaging.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Printing.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Resources.Extensions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Pkcs.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.ProtectedData.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Xml.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Permissions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.AccessControl.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Controls.Ribbon.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Extensions.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Forms.Design.Editors.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Forms.Design.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Forms.Primitives.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Forms.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Input.Manipulations.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Presentation.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xaml.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\UIAutomationClient.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\UIAutomationClientSideProviders.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\UIAutomationProvider.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\UIAutomationTypes.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\WindowsBase.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\WindowsFormsIntegration.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.DiaSymReader.Native.amd64.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Compression.Native.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\clretwrc.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\clrgc.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\clrjit.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\coreclr.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\createdump.exe -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\hostfxr.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\hostpolicy.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\mscordaccore.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\mscordaccore_amd64_amd64_8.0.1925.36514.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\mscordbi.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\mscorrc.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\msquic.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\D3DCompiler_47_cor3.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PenImc_cor3.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationNative_cor3.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\vcruntime140_cor3.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\wpfgfx_cor3.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\Microsoft.VisualBasic.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\PresentationCore.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\PresentationFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\PresentationUI.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\ReachFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\System.Windows.Controls.Ribbon.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\System.Windows.Forms.Design.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\System.Windows.Forms.Primitives.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\System.Windows.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\System.Windows.Input.Manipulations.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\System.Xaml.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\UIAutomationClient.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\UIAutomationClientSideProviders.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\UIAutomationProvider.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\UIAutomationTypes.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\WindowsBase.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\WindowsFormsIntegration.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\Microsoft.VisualBasic.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\PresentationCore.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\PresentationFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\PresentationUI.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\ReachFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\System.Windows.Controls.Ribbon.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\System.Windows.Forms.Design.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\System.Windows.Forms.Primitives.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\System.Windows.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\System.Windows.Input.Manipulations.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\System.Xaml.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\UIAutomationClient.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\UIAutomationClientSideProviders.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\UIAutomationProvider.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\UIAutomationTypes.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\WindowsBase.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\WindowsFormsIntegration.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\Microsoft.VisualBasic.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\PresentationCore.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\PresentationFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\PresentationUI.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\ReachFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\System.Windows.Controls.Ribbon.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\System.Windows.Forms.Design.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\System.Windows.Forms.Primitives.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\System.Windows.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\System.Windows.Input.Manipulations.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\System.Xaml.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\UIAutomationClient.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\UIAutomationClientSideProviders.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\UIAutomationProvider.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\UIAutomationTypes.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\WindowsBase.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\WindowsFormsIntegration.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\Microsoft.VisualBasic.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\PresentationCore.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\PresentationFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\PresentationUI.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\ReachFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\System.Windows.Controls.Ribbon.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\System.Windows.Forms.Design.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\System.Windows.Forms.Primitives.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\System.Windows.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\System.Windows.Input.Manipulations.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\System.Xaml.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\UIAutomationClient.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\UIAutomationClientSideProviders.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\UIAutomationProvider.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\UIAutomationTypes.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\WindowsBase.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\WindowsFormsIntegration.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\Microsoft.VisualBasic.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\PresentationCore.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\PresentationFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\PresentationUI.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\ReachFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\System.Windows.Controls.Ribbon.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\System.Windows.Forms.Design.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\System.Windows.Forms.Primitives.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\System.Windows.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\System.Windows.Input.Manipulations.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\System.Xaml.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\UIAutomationClient.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\UIAutomationClientSideProviders.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\UIAutomationProvider.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\UIAutomationTypes.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\WindowsBase.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\WindowsFormsIntegration.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\Microsoft.VisualBasic.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\PresentationCore.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\PresentationFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\PresentationUI.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\ReachFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\System.Windows.Controls.Ribbon.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\System.Windows.Forms.Design.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\System.Windows.Forms.Primitives.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\System.Windows.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\System.Windows.Input.Manipulations.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\System.Xaml.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\UIAutomationClient.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\UIAutomationClientSideProviders.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\UIAutomationProvider.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\UIAutomationTypes.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\WindowsBase.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\WindowsFormsIntegration.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\Microsoft.VisualBasic.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\PresentationCore.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\PresentationFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\PresentationUI.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\ReachFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\System.Windows.Controls.Ribbon.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\System.Windows.Forms.Design.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\System.Windows.Forms.Primitives.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\System.Windows.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\System.Windows.Input.Manipulations.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\System.Xaml.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\UIAutomationClient.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\UIAutomationClientSideProviders.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\UIAutomationProvider.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\UIAutomationTypes.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\WindowsBase.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\WindowsFormsIntegration.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\Microsoft.VisualBasic.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\PresentationCore.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\PresentationFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\PresentationUI.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\ReachFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\System.Windows.Controls.Ribbon.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\System.Windows.Forms.Design.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\System.Windows.Forms.Primitives.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\System.Windows.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\System.Windows.Input.Manipulations.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\System.Xaml.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\UIAutomationClient.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\UIAutomationClientSideProviders.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\UIAutomationProvider.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\UIAutomationTypes.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\WindowsBase.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\WindowsFormsIntegration.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\Microsoft.VisualBasic.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\PresentationCore.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\PresentationFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\PresentationUI.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\ReachFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\System.Windows.Controls.Ribbon.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\System.Windows.Forms.Design.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\System.Windows.Forms.Primitives.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\System.Windows.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\System.Windows.Input.Manipulations.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\System.Xaml.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\UIAutomationClient.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\UIAutomationClientSideProviders.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\UIAutomationProvider.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\UIAutomationTypes.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\WindowsBase.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\WindowsFormsIntegration.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\Microsoft.VisualBasic.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\PresentationCore.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\PresentationFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\PresentationUI.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\ReachFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\System.Windows.Controls.Ribbon.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\System.Windows.Forms.Design.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\System.Windows.Forms.Primitives.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\System.Windows.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\System.Windows.Input.Manipulations.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\System.Xaml.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\UIAutomationClient.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\UIAutomationClientSideProviders.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\UIAutomationProvider.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\UIAutomationTypes.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\WindowsBase.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\WindowsFormsIntegration.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\Microsoft.VisualBasic.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\PresentationCore.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\PresentationFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\PresentationUI.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\ReachFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\System.Windows.Controls.Ribbon.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\System.Windows.Forms.Design.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\System.Windows.Forms.Primitives.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\System.Windows.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\System.Windows.Input.Manipulations.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\System.Xaml.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\UIAutomationClient.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\UIAutomationClientSideProviders.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\UIAutomationProvider.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\UIAutomationTypes.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\WindowsBase.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\WindowsFormsIntegration.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\Microsoft.VisualBasic.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\PresentationCore.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\PresentationFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\PresentationUI.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\ReachFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\System.Windows.Controls.Ribbon.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\System.Windows.Forms.Design.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\System.Windows.Forms.Primitives.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\System.Windows.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\System.Windows.Input.Manipulations.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\System.Xaml.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\UIAutomationClient.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\UIAutomationClientSideProviders.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\UIAutomationProvider.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\UIAutomationTypes.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\WindowsBase.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\WindowsFormsIntegration.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\Microsoft.VisualBasic.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\PresentationCore.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\PresentationFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\PresentationUI.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\ReachFramework.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\System.Windows.Controls.Ribbon.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\System.Windows.Forms.Design.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\System.Windows.Forms.Primitives.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\System.Windows.Forms.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\System.Windows.Input.Manipulations.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\System.Xaml.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\UIAutomationClient.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\UIAutomationClientSideProviders.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\UIAutomationProvider.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\UIAutomationTypes.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\WindowsBase.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\WindowsFormsIntegration.resources.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.csproj.AssemblyReference.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.Form1.resources -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.csproj.GenerateResource.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.GeneratedMSBuildEditorConfig.editorconfig -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.AssemblyInfoInputs.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.AssemblyInfo.cs -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.csproj.CoreCompileInputs.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRT.5CF90B77.Up2Date -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\refint\SignalRTest.dll -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.pdb -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.genruntimeconfig.cache -C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\ref\SignalRTest.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\SignalRTest.exe +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\SignalRTest.deps.json +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\SignalRTest.runtimeconfig.json +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\SignalRTest.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\SignalRTest.pdb +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.Connections.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.Http.Connections.Client.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.Http.Connections.Common.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.SignalR.Client.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.SignalR.Client.Core.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.SignalR.Common.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.AspNetCore.SignalR.Protocols.Json.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Bcl.AsyncInterfaces.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Bcl.TimeProvider.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.DependencyInjection.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.DependencyInjection.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.Features.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.Logging.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.Logging.Abstractions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.Options.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Extensions.Primitives.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.DiagnosticSource.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Pipelines.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.ServerSentEvents.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Text.Encodings.Web.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Text.Json.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Channels.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.CSharp.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.VisualBasic.Core.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Win32.Primitives.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Win32.Registry.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.AppContext.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Buffers.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Collections.Concurrent.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Collections.Immutable.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Collections.NonGeneric.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Collections.Specialized.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Collections.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ComponentModel.Annotations.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ComponentModel.DataAnnotations.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ComponentModel.EventBasedAsync.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ComponentModel.Primitives.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ComponentModel.TypeConverter.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ComponentModel.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Configuration.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Console.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Core.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Data.Common.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Data.DataSetExtensions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Data.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.Contracts.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.Debug.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.FileVersionInfo.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.Process.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.StackTrace.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.TextWriterTraceListener.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.Tools.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.TraceSource.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.Tracing.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Drawing.Primitives.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Dynamic.Runtime.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Formats.Asn1.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Formats.Tar.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Globalization.Calendars.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Globalization.Extensions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Globalization.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Compression.Brotli.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Compression.FileSystem.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Compression.ZipFile.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Compression.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.FileSystem.AccessControl.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.FileSystem.DriveInfo.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.FileSystem.Primitives.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.FileSystem.Watcher.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.FileSystem.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.IsolatedStorage.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.MemoryMappedFiles.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Pipes.AccessControl.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Pipes.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.UnmanagedMemoryStream.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Linq.Expressions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Linq.Parallel.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Linq.Queryable.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Linq.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Memory.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Http.Json.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Http.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.HttpListener.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Mail.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.NameResolution.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.NetworkInformation.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Ping.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Primitives.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Quic.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Requests.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Security.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.ServicePoint.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.Sockets.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.WebClient.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.WebHeaderCollection.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.WebProxy.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.WebSockets.Client.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.WebSockets.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Net.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Numerics.Vectors.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Numerics.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ObjectModel.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Private.CoreLib.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Private.DataContractSerialization.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Private.Uri.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Private.Xml.Linq.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Private.Xml.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.DispatchProxy.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.Emit.ILGeneration.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.Emit.Lightweight.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.Emit.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.Extensions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.Metadata.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.Primitives.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.TypeExtensions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Reflection.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Resources.Reader.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Resources.ResourceManager.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Resources.Writer.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.CompilerServices.Unsafe.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.CompilerServices.VisualC.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Extensions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Handles.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.InteropServices.JavaScript.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.InteropServices.RuntimeInformation.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.InteropServices.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Intrinsics.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Loader.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Numerics.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Serialization.Formatters.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Serialization.Json.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Serialization.Primitives.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Serialization.Xml.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.Serialization.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Runtime.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.AccessControl.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Claims.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Algorithms.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Cng.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Csp.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Encoding.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.OpenSsl.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Primitives.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.X509Certificates.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Principal.Windows.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Principal.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.SecureString.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ServiceModel.Web.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ServiceProcess.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Text.Encoding.CodePages.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Text.Encoding.Extensions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Text.Encoding.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Text.RegularExpressions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Overlapped.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Tasks.Dataflow.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Tasks.Extensions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Tasks.Parallel.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Tasks.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Thread.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.ThreadPool.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.Timer.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Transactions.Local.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Transactions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.ValueTuple.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Web.HttpUtility.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Web.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.Linq.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.ReaderWriter.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.Serialization.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.XDocument.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.XPath.XDocument.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.XPath.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.XmlDocument.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.XmlSerializer.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xml.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\mscorlib.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\netstandard.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Accessibility.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\DirectWriteForwarder.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.VisualBasic.Forms.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.VisualBasic.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Win32.Registry.AccessControl.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.Win32.SystemEvents.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationCore.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework-SystemCore.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework-SystemData.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework-SystemDrawing.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework-SystemXml.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework-SystemXmlLinq.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.Aero.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.Aero2.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.AeroLite.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.Classic.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.Luna.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.Royale.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationFramework.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationUI.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ReachFramework.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.CodeDom.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Configuration.ConfigurationManager.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Design.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.EventLog.Messages.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.EventLog.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Diagnostics.PerformanceCounter.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.DirectoryServices.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Drawing.Common.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Drawing.Design.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Drawing.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Packaging.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Printing.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Resources.Extensions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Pkcs.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.ProtectedData.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Cryptography.Xml.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Security.Permissions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Threading.AccessControl.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Controls.Ribbon.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Extensions.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Forms.Design.Editors.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Forms.Design.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Forms.Primitives.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Forms.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Input.Manipulations.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Windows.Presentation.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.Xaml.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\UIAutomationClient.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\UIAutomationClientSideProviders.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\UIAutomationProvider.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\UIAutomationTypes.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\WindowsBase.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\WindowsFormsIntegration.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\Microsoft.DiaSymReader.Native.amd64.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\System.IO.Compression.Native.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\clretwrc.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\clrgc.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\clrjit.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\coreclr.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\createdump.exe +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\hostfxr.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\hostpolicy.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\mscordaccore.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\mscordaccore_amd64_amd64_8.0.1925.36514.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\mscordbi.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\mscorrc.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\msquic.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\D3DCompiler_47_cor3.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PenImc_cor3.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\PresentationNative_cor3.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\vcruntime140_cor3.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\wpfgfx_cor3.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\Microsoft.VisualBasic.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\PresentationCore.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\PresentationFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\PresentationUI.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\ReachFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\System.Windows.Controls.Ribbon.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\System.Windows.Forms.Design.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\System.Windows.Forms.Primitives.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\System.Windows.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\System.Windows.Input.Manipulations.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\System.Xaml.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\UIAutomationClient.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\UIAutomationClientSideProviders.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\UIAutomationProvider.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\UIAutomationTypes.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\WindowsBase.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\cs\WindowsFormsIntegration.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\Microsoft.VisualBasic.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\PresentationCore.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\PresentationFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\PresentationUI.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\ReachFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\System.Windows.Controls.Ribbon.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\System.Windows.Forms.Design.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\System.Windows.Forms.Primitives.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\System.Windows.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\System.Windows.Input.Manipulations.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\System.Xaml.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\UIAutomationClient.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\UIAutomationClientSideProviders.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\UIAutomationProvider.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\UIAutomationTypes.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\WindowsBase.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\de\WindowsFormsIntegration.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\Microsoft.VisualBasic.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\PresentationCore.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\PresentationFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\PresentationUI.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\ReachFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\System.Windows.Controls.Ribbon.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\System.Windows.Forms.Design.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\System.Windows.Forms.Primitives.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\System.Windows.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\System.Windows.Input.Manipulations.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\System.Xaml.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\UIAutomationClient.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\UIAutomationClientSideProviders.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\UIAutomationProvider.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\UIAutomationTypes.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\WindowsBase.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\es\WindowsFormsIntegration.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\Microsoft.VisualBasic.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\PresentationCore.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\PresentationFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\PresentationUI.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\ReachFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\System.Windows.Controls.Ribbon.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\System.Windows.Forms.Design.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\System.Windows.Forms.Primitives.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\System.Windows.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\System.Windows.Input.Manipulations.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\System.Xaml.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\UIAutomationClient.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\UIAutomationClientSideProviders.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\UIAutomationProvider.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\UIAutomationTypes.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\WindowsBase.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\fr\WindowsFormsIntegration.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\Microsoft.VisualBasic.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\PresentationCore.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\PresentationFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\PresentationUI.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\ReachFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\System.Windows.Controls.Ribbon.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\System.Windows.Forms.Design.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\System.Windows.Forms.Primitives.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\System.Windows.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\System.Windows.Input.Manipulations.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\System.Xaml.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\UIAutomationClient.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\UIAutomationClientSideProviders.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\UIAutomationProvider.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\UIAutomationTypes.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\WindowsBase.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\it\WindowsFormsIntegration.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\Microsoft.VisualBasic.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\PresentationCore.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\PresentationFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\PresentationUI.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\ReachFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\System.Windows.Controls.Ribbon.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\System.Windows.Forms.Design.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\System.Windows.Forms.Primitives.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\System.Windows.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\System.Windows.Input.Manipulations.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\System.Xaml.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\UIAutomationClient.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\UIAutomationClientSideProviders.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\UIAutomationProvider.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\UIAutomationTypes.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\WindowsBase.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ja\WindowsFormsIntegration.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\Microsoft.VisualBasic.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\PresentationCore.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\PresentationFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\PresentationUI.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\ReachFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\System.Windows.Controls.Ribbon.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\System.Windows.Forms.Design.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\System.Windows.Forms.Primitives.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\System.Windows.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\System.Windows.Input.Manipulations.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\System.Xaml.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\UIAutomationClient.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\UIAutomationClientSideProviders.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\UIAutomationProvider.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\UIAutomationTypes.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\WindowsBase.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ko\WindowsFormsIntegration.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\Microsoft.VisualBasic.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\PresentationCore.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\PresentationFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\PresentationUI.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\ReachFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\System.Windows.Controls.Ribbon.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\System.Windows.Forms.Design.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\System.Windows.Forms.Primitives.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\System.Windows.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\System.Windows.Input.Manipulations.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\System.Xaml.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\UIAutomationClient.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\UIAutomationClientSideProviders.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\UIAutomationProvider.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\UIAutomationTypes.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\WindowsBase.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pl\WindowsFormsIntegration.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\Microsoft.VisualBasic.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\PresentationCore.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\PresentationFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\PresentationUI.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\ReachFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\System.Windows.Controls.Ribbon.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\System.Windows.Forms.Design.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\System.Windows.Forms.Primitives.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\System.Windows.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\System.Windows.Input.Manipulations.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\System.Xaml.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\UIAutomationClient.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\UIAutomationClientSideProviders.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\UIAutomationProvider.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\UIAutomationTypes.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\WindowsBase.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\pt-BR\WindowsFormsIntegration.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\Microsoft.VisualBasic.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\PresentationCore.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\PresentationFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\PresentationUI.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\ReachFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\System.Windows.Controls.Ribbon.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\System.Windows.Forms.Design.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\System.Windows.Forms.Primitives.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\System.Windows.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\System.Windows.Input.Manipulations.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\System.Xaml.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\UIAutomationClient.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\UIAutomationClientSideProviders.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\UIAutomationProvider.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\UIAutomationTypes.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\WindowsBase.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\ru\WindowsFormsIntegration.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\Microsoft.VisualBasic.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\PresentationCore.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\PresentationFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\PresentationUI.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\ReachFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\System.Windows.Controls.Ribbon.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\System.Windows.Forms.Design.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\System.Windows.Forms.Primitives.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\System.Windows.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\System.Windows.Input.Manipulations.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\System.Xaml.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\UIAutomationClient.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\UIAutomationClientSideProviders.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\UIAutomationProvider.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\UIAutomationTypes.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\WindowsBase.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\tr\WindowsFormsIntegration.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\Microsoft.VisualBasic.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\PresentationCore.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\PresentationFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\PresentationUI.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\ReachFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\System.Windows.Controls.Ribbon.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\System.Windows.Forms.Design.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\System.Windows.Forms.Primitives.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\System.Windows.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\System.Windows.Input.Manipulations.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\System.Xaml.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\UIAutomationClient.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\UIAutomationClientSideProviders.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\UIAutomationProvider.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\UIAutomationTypes.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\WindowsBase.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hans\WindowsFormsIntegration.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\Microsoft.VisualBasic.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\PresentationCore.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\PresentationFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\PresentationUI.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\ReachFramework.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\System.Windows.Controls.Ribbon.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\System.Windows.Forms.Design.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\System.Windows.Forms.Primitives.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\System.Windows.Forms.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\System.Windows.Input.Manipulations.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\System.Xaml.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\UIAutomationClient.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\UIAutomationClientSideProviders.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\UIAutomationProvider.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\UIAutomationTypes.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\WindowsBase.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\bin\Release\net8.0-windows\win-x64\zh-Hant\WindowsFormsIntegration.resources.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.csproj.AssemblyReference.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.Form1.resources +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.csproj.GenerateResource.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.GeneratedMSBuildEditorConfig.editorconfig +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.AssemblyInfoInputs.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.AssemblyInfo.cs +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.csproj.CoreCompileInputs.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRT.5CF90B77.Up2Date +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\refint\SignalRTest.dll +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.pdb +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\SignalRTest.genruntimeconfig.cache +C:\Users\nanxun\Documents\IM\backend\SignalRTest\obj\Release\net8.0-windows\win-x64\ref\SignalRTest.dll diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.deps.json b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.deps.json index b88d09e..6e2519d 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.deps.json +++ b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.deps.json @@ -1,1325 +1,1325 @@ -{ - "runtimeTarget": { - "name": ".NETCoreApp,Version=v8.0/win-x64", - "signature": "" - }, - "compilationOptions": {}, - "targets": { - ".NETCoreApp,Version=v8.0": {}, - ".NETCoreApp,Version=v8.0/win-x64": { - "SignalRTest/1.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Client": "10.0.0", - "Microsoft.NET.ILLink.Tasks": "8.0.19", - "runtimepack.Microsoft.NETCore.App.Runtime.win-x64": "8.0.19", - "runtimepack.Microsoft.WindowsDesktop.App.Runtime.win-x64": "8.0.19" - }, - "runtime": { - "SignalRTest.dll": {} - } - }, - "runtimepack.Microsoft.NETCore.App.Runtime.win-x64/8.0.19": { - "runtime": { - "Microsoft.CSharp.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "Microsoft.VisualBasic.Core.dll": { - "assemblyVersion": "13.0.0.0", - "fileVersion": "13.0.1925.36514" - }, - "Microsoft.Win32.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "Microsoft.Win32.Registry.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.AppContext.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Buffers.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Collections.Concurrent.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Collections.Immutable.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Collections.NonGeneric.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Collections.Specialized.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Collections.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ComponentModel.Annotations.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ComponentModel.DataAnnotations.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ComponentModel.EventBasedAsync.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ComponentModel.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ComponentModel.TypeConverter.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ComponentModel.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Configuration.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Console.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Core.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Data.Common.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Data.DataSetExtensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Data.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.Contracts.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.Debug.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.FileVersionInfo.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.Process.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.StackTrace.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.TextWriterTraceListener.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.Tools.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.TraceSource.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.Tracing.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Drawing.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Dynamic.Runtime.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Formats.Asn1.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Formats.Tar.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Globalization.Calendars.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Globalization.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Globalization.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.Compression.Brotli.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.Compression.FileSystem.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.Compression.ZipFile.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.Compression.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.FileSystem.AccessControl.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.FileSystem.DriveInfo.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.FileSystem.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.FileSystem.Watcher.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.FileSystem.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.IsolatedStorage.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.MemoryMappedFiles.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.Pipes.AccessControl.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.Pipes.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.UnmanagedMemoryStream.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.IO.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Linq.Expressions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Linq.Parallel.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Linq.Queryable.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Linq.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Memory.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Http.Json.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Http.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.HttpListener.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Mail.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.NameResolution.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.NetworkInformation.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Ping.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Quic.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Requests.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Security.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.ServicePoint.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.Sockets.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.WebClient.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.WebHeaderCollection.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.WebProxy.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.WebSockets.Client.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.WebSockets.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Net.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Numerics.Vectors.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Numerics.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ObjectModel.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Private.CoreLib.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Private.DataContractSerialization.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Private.Uri.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Private.Xml.Linq.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Private.Xml.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.DispatchProxy.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.Emit.ILGeneration.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.Emit.Lightweight.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.Emit.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.Metadata.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.TypeExtensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Reflection.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Resources.Reader.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Resources.ResourceManager.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Resources.Writer.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.CompilerServices.Unsafe.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.CompilerServices.VisualC.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Handles.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.InteropServices.JavaScript.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.InteropServices.RuntimeInformation.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.InteropServices.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Intrinsics.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Loader.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Numerics.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Serialization.Formatters.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Serialization.Json.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Serialization.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Serialization.Xml.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.Serialization.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Runtime.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.AccessControl.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Claims.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Algorithms.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Cng.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Csp.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Encoding.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.OpenSsl.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.X509Certificates.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Principal.Windows.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Principal.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.SecureString.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ServiceModel.Web.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ServiceProcess.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Text.Encoding.CodePages.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Text.Encoding.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Text.Encoding.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Text.RegularExpressions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Overlapped.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Tasks.Dataflow.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Tasks.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Tasks.Parallel.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Tasks.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Thread.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.ThreadPool.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.Timer.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Transactions.Local.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Transactions.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.ValueTuple.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Web.HttpUtility.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Web.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Windows.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.Linq.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.ReaderWriter.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.Serialization.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.XDocument.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.XPath.XDocument.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.XPath.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.XmlDocument.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.XmlSerializer.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Xml.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "mscorlib.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "netstandard.dll": { - "assemblyVersion": "2.1.0.0", - "fileVersion": "8.0.1925.36514" - } - } - }, - "runtimepack.Microsoft.WindowsDesktop.App.Runtime.win-x64/8.0.19": { - "runtime": { - "Accessibility.dll": { - "assemblyVersion": "4.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "DirectWriteForwarder.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "Microsoft.VisualBasic.Forms.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "Microsoft.VisualBasic.dll": { - "assemblyVersion": "10.1.0.0", - "fileVersion": "8.0.1925.36703" - }, - "Microsoft.Win32.Registry.AccessControl.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "Microsoft.Win32.SystemEvents.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "PresentationCore.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework-SystemCore.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework-SystemData.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework-SystemDrawing.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework-SystemXml.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework-SystemXmlLinq.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.Aero.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.Aero2.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.AeroLite.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.Classic.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.Luna.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.Royale.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationFramework.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "PresentationUI.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "ReachFramework.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "System.CodeDom.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Configuration.ConfigurationManager.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Design.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Diagnostics.EventLog.Messages.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "0.0.0.0" - }, - "System.Diagnostics.EventLog.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Diagnostics.PerformanceCounter.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.DirectoryServices.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Drawing.Common.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Drawing.Design.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Drawing.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.IO.Packaging.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Printing.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "System.Resources.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Pkcs.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.ProtectedData.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Cryptography.Xml.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Security.Permissions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Threading.AccessControl.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Windows.Controls.Ribbon.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "System.Windows.Extensions.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36514" - }, - "System.Windows.Forms.Design.Editors.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Windows.Forms.Design.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Windows.Forms.Primitives.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Windows.Forms.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36703" - }, - "System.Windows.Input.Manipulations.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "System.Windows.Presentation.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "System.Xaml.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "UIAutomationClient.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "UIAutomationClientSideProviders.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "UIAutomationProvider.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "UIAutomationTypes.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "WindowsBase.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - }, - "WindowsFormsIntegration.dll": { - "assemblyVersion": "8.0.0.0", - "fileVersion": "8.0.1925.36811" - } - }, - "native": { - "D3DCompiler_47_cor3.dll": { - "fileVersion": "10.0.22621.3233" - }, - "PenImc_cor3.dll": { - "fileVersion": "8.0.1925.36811" - }, - "PresentationNative_cor3.dll": { - "fileVersion": "8.0.25.16802" - }, - "vcruntime140_cor3.dll": { - "fileVersion": "14.42.34438.0" - }, - "wpfgfx_cor3.dll": { - "fileVersion": "8.0.1925.36811" - } - } - }, - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "10.0.0", - "Microsoft.Extensions.Features": "10.0.0", - "System.IO.Pipelines": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Net.ServerSentEvents": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", - "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0", - "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", - "Microsoft.Bcl.TimeProvider": "10.0.0", - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging": "10.0.0", - "System.Threading.Channels": "10.0.0" - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0" - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "runtime": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Features/10.0.0": { - "runtime": { - "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Logging/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "System.Diagnostics.DiagnosticSource": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Options/10.0.0": { - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "Microsoft.Extensions.Primitives": "10.0.0" - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "runtime": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "Microsoft.NET.ILLink.Tasks/8.0.19": {}, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "runtime": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.IO.Pipelines/10.0.0": { - "runtime": { - "lib/net8.0/System.IO.Pipelines.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Net.ServerSentEvents/10.0.0": { - "runtime": { - "lib/net8.0/System.Net.ServerSentEvents.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Text.Encodings.Web/10.0.0": { - "runtime": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Text.Json/10.0.0": { - "dependencies": { - "System.IO.Pipelines": "10.0.0", - "System.Text.Encodings.Web": "10.0.0" - }, - "runtime": { - "lib/net8.0/System.Text.Json.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - }, - "System.Threading.Channels/10.0.0": { - "runtime": { - "lib/net8.0/System.Threading.Channels.dll": { - "assemblyVersion": "10.0.0.0", - "fileVersion": "10.0.25.52411" - } - } - } - } - }, - "libraries": { - "SignalRTest/1.0.0": { - "type": "project", - "serviceable": false, - "sha512": "" - }, - "runtimepack.Microsoft.NETCore.App.Runtime.win-x64/8.0.19": { - "type": "runtimepack", - "serviceable": false, - "sha512": "" - }, - "runtimepack.Microsoft.WindowsDesktop.App.Runtime.win-x64/8.0.19": { - "type": "runtimepack", - "serviceable": false, - "sha512": "" - }, - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", - "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", - "hashPath": "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", - "path": "microsoft.aspnetcore.http.connections.client/10.0.0", - "hashPath": "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", - "path": "microsoft.aspnetcore.http.connections.common/10.0.0", - "hashPath": "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", - "path": "microsoft.aspnetcore.signalr.client/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", - "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", - "path": "microsoft.aspnetcore.signalr.common/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512" - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", - "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", - "hashPath": "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512" - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", - "path": "microsoft.bcl.asyncinterfaces/10.0.0", - "hashPath": "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512" - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", - "path": "microsoft.bcl.timeprovider/10.0.0", - "hashPath": "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", - "path": "microsoft.extensions.dependencyinjection/10.0.0", - "hashPath": "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", - "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", - "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Features/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", - "path": "microsoft.extensions.features/10.0.0", - "hashPath": "microsoft.extensions.features.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Logging/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", - "path": "microsoft.extensions.logging/10.0.0", - "hashPath": "microsoft.extensions.logging.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", - "path": "microsoft.extensions.logging.abstractions/10.0.0", - "hashPath": "microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Options/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", - "path": "microsoft.extensions.options/10.0.0", - "hashPath": "microsoft.extensions.options.10.0.0.nupkg.sha512" - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", - "path": "microsoft.extensions.primitives/10.0.0", - "hashPath": "microsoft.extensions.primitives.10.0.0.nupkg.sha512" - }, - "Microsoft.NET.ILLink.Tasks/8.0.19": { - "type": "package", - "serviceable": true, - "sha512": "sha512-IhHf+zeZiaE5EXRyxILd4qM+Hj9cxV3sa8MpzZgeEhpvaG3a1VEGF6UCaPFLO44Kua3JkLKluE0SWVamS50PlA==", - "path": "microsoft.net.illink.tasks/8.0.19", - "hashPath": "microsoft.net.illink.tasks.8.0.19.nupkg.sha512" - }, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", - "path": "system.diagnostics.diagnosticsource/10.0.0", - "hashPath": "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512" - }, - "System.IO.Pipelines/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", - "path": "system.io.pipelines/10.0.0", - "hashPath": "system.io.pipelines.10.0.0.nupkg.sha512" - }, - "System.Net.ServerSentEvents/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", - "path": "system.net.serversentevents/10.0.0", - "hashPath": "system.net.serversentevents.10.0.0.nupkg.sha512" - }, - "System.Text.Encodings.Web/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", - "path": "system.text.encodings.web/10.0.0", - "hashPath": "system.text.encodings.web.10.0.0.nupkg.sha512" - }, - "System.Text.Json/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", - "path": "system.text.json/10.0.0", - "hashPath": "system.text.json.10.0.0.nupkg.sha512" - }, - "System.Threading.Channels/10.0.0": { - "type": "package", - "serviceable": true, - "sha512": "sha512-fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", - "path": "system.threading.channels/10.0.0", - "hashPath": "system.threading.channels.10.0.0.nupkg.sha512" - } - }, - "runtimes": { - "win-x64": [ - "win", - "any", - "base" - ] - } +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v8.0/win-x64", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v8.0": {}, + ".NETCoreApp,Version=v8.0/win-x64": { + "SignalRTest/1.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Client": "10.0.0", + "Microsoft.NET.ILLink.Tasks": "8.0.19", + "runtimepack.Microsoft.NETCore.App.Runtime.win-x64": "8.0.19", + "runtimepack.Microsoft.WindowsDesktop.App.Runtime.win-x64": "8.0.19" + }, + "runtime": { + "SignalRTest.dll": {} + } + }, + "runtimepack.Microsoft.NETCore.App.Runtime.win-x64/8.0.19": { + "runtime": { + "Microsoft.CSharp.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "Microsoft.VisualBasic.Core.dll": { + "assemblyVersion": "13.0.0.0", + "fileVersion": "13.0.1925.36514" + }, + "Microsoft.Win32.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "Microsoft.Win32.Registry.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.AppContext.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Buffers.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Collections.Concurrent.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Collections.Immutable.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Collections.NonGeneric.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Collections.Specialized.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Collections.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ComponentModel.Annotations.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ComponentModel.DataAnnotations.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ComponentModel.EventBasedAsync.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ComponentModel.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ComponentModel.TypeConverter.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ComponentModel.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Configuration.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Console.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Core.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Data.Common.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Data.DataSetExtensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Data.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.Contracts.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.Debug.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.FileVersionInfo.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.Process.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.StackTrace.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.TextWriterTraceListener.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.Tools.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.TraceSource.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.Tracing.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Drawing.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Dynamic.Runtime.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Formats.Asn1.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Formats.Tar.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Globalization.Calendars.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Globalization.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Globalization.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.Compression.Brotli.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.Compression.FileSystem.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.Compression.ZipFile.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.Compression.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.FileSystem.AccessControl.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.FileSystem.DriveInfo.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.FileSystem.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.FileSystem.Watcher.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.FileSystem.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.IsolatedStorage.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.MemoryMappedFiles.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.Pipes.AccessControl.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.Pipes.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.UnmanagedMemoryStream.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.IO.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Linq.Expressions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Linq.Parallel.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Linq.Queryable.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Linq.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Memory.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Http.Json.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Http.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.HttpListener.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Mail.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.NameResolution.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.NetworkInformation.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Ping.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Quic.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Requests.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Security.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.ServicePoint.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.Sockets.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.WebClient.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.WebHeaderCollection.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.WebProxy.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.WebSockets.Client.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.WebSockets.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Net.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Numerics.Vectors.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Numerics.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ObjectModel.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Private.CoreLib.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Private.DataContractSerialization.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Private.Uri.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Private.Xml.Linq.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Private.Xml.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.DispatchProxy.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.Emit.ILGeneration.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.Emit.Lightweight.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.Emit.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.Metadata.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.TypeExtensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Reflection.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Resources.Reader.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Resources.ResourceManager.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Resources.Writer.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.CompilerServices.Unsafe.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.CompilerServices.VisualC.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Handles.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.InteropServices.JavaScript.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.InteropServices.RuntimeInformation.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.InteropServices.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Intrinsics.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Loader.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Numerics.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Serialization.Formatters.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Serialization.Json.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Serialization.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Serialization.Xml.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.Serialization.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Runtime.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.AccessControl.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Claims.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Algorithms.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Cng.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Csp.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Encoding.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.OpenSsl.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.X509Certificates.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Principal.Windows.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Principal.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.SecureString.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ServiceModel.Web.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ServiceProcess.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Text.Encoding.CodePages.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Text.Encoding.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Text.Encoding.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Text.RegularExpressions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Overlapped.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Tasks.Dataflow.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Tasks.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Tasks.Parallel.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Tasks.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Thread.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.ThreadPool.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.Timer.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Transactions.Local.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Transactions.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.ValueTuple.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Web.HttpUtility.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Web.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Windows.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.Linq.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.ReaderWriter.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.Serialization.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.XDocument.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.XPath.XDocument.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.XPath.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.XmlDocument.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.XmlSerializer.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Xml.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "mscorlib.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "netstandard.dll": { + "assemblyVersion": "2.1.0.0", + "fileVersion": "8.0.1925.36514" + } + } + }, + "runtimepack.Microsoft.WindowsDesktop.App.Runtime.win-x64/8.0.19": { + "runtime": { + "Accessibility.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "DirectWriteForwarder.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "Microsoft.VisualBasic.Forms.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "Microsoft.VisualBasic.dll": { + "assemblyVersion": "10.1.0.0", + "fileVersion": "8.0.1925.36703" + }, + "Microsoft.Win32.Registry.AccessControl.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "Microsoft.Win32.SystemEvents.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "PresentationCore.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework-SystemCore.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework-SystemData.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework-SystemDrawing.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework-SystemXml.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework-SystemXmlLinq.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.Aero.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.Aero2.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.AeroLite.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.Classic.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.Luna.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.Royale.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationFramework.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "PresentationUI.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "ReachFramework.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "System.CodeDom.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Configuration.ConfigurationManager.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Design.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Diagnostics.EventLog.Messages.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "0.0.0.0" + }, + "System.Diagnostics.EventLog.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Diagnostics.PerformanceCounter.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.DirectoryServices.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Drawing.Common.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Drawing.Design.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Drawing.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.IO.Packaging.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Printing.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "System.Resources.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Pkcs.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.ProtectedData.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Cryptography.Xml.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Security.Permissions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Threading.AccessControl.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Windows.Controls.Ribbon.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "System.Windows.Extensions.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36514" + }, + "System.Windows.Forms.Design.Editors.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Windows.Forms.Design.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Windows.Forms.Primitives.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Windows.Forms.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36703" + }, + "System.Windows.Input.Manipulations.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "System.Windows.Presentation.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "System.Xaml.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "UIAutomationClient.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "UIAutomationClientSideProviders.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "UIAutomationProvider.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "UIAutomationTypes.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "WindowsBase.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + }, + "WindowsFormsIntegration.dll": { + "assemblyVersion": "8.0.0.0", + "fileVersion": "8.0.1925.36811" + } + }, + "native": { + "D3DCompiler_47_cor3.dll": { + "fileVersion": "10.0.22621.3233" + }, + "PenImc_cor3.dll": { + "fileVersion": "8.0.1925.36811" + }, + "PresentationNative_cor3.dll": { + "fileVersion": "8.0.25.16802" + }, + "vcruntime140_cor3.dll": { + "fileVersion": "14.42.34438.0" + }, + "wpfgfx_cor3.dll": { + "fileVersion": "8.0.1925.36811" + } + } + }, + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "dependencies": { + "Microsoft.Bcl.AsyncInterfaces": "10.0.0", + "Microsoft.Extensions.Features": "10.0.0", + "System.IO.Pipelines": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Net.ServerSentEvents": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", + "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0", + "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", + "Microsoft.Bcl.TimeProvider": "10.0.0", + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging": "10.0.0", + "System.Threading.Channels": "10.0.0" + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0" + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Features/10.0.0": { + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Logging/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "System.Diagnostics.DiagnosticSource": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Options/10.0.0": { + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "Microsoft.Extensions.Primitives": "10.0.0" + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "Microsoft.NET.ILLink.Tasks/8.0.19": {}, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "runtime": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.IO.Pipelines/10.0.0": { + "runtime": { + "lib/net8.0/System.IO.Pipelines.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Net.ServerSentEvents/10.0.0": { + "runtime": { + "lib/net8.0/System.Net.ServerSentEvents.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Text.Encodings.Web/10.0.0": { + "runtime": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Text.Json/10.0.0": { + "dependencies": { + "System.IO.Pipelines": "10.0.0", + "System.Text.Encodings.Web": "10.0.0" + }, + "runtime": { + "lib/net8.0/System.Text.Json.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + }, + "System.Threading.Channels/10.0.0": { + "runtime": { + "lib/net8.0/System.Threading.Channels.dll": { + "assemblyVersion": "10.0.0.0", + "fileVersion": "10.0.25.52411" + } + } + } + } + }, + "libraries": { + "SignalRTest/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "runtimepack.Microsoft.NETCore.App.Runtime.win-x64/8.0.19": { + "type": "runtimepack", + "serviceable": false, + "sha512": "" + }, + "runtimepack.Microsoft.WindowsDesktop.App.Runtime.win-x64/8.0.19": { + "type": "runtimepack", + "serviceable": false, + "sha512": "" + }, + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", + "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", + "hashPath": "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", + "path": "microsoft.aspnetcore.http.connections.client/10.0.0", + "hashPath": "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", + "path": "microsoft.aspnetcore.http.connections.common/10.0.0", + "hashPath": "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", + "path": "microsoft.aspnetcore.signalr.client/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", + "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", + "path": "microsoft.aspnetcore.signalr.common/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512" + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", + "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", + "hashPath": "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512" + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", + "path": "microsoft.bcl.asyncinterfaces/10.0.0", + "hashPath": "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512" + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", + "path": "microsoft.bcl.timeprovider/10.0.0", + "hashPath": "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", + "path": "microsoft.extensions.dependencyinjection/10.0.0", + "hashPath": "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", + "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", + "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Features/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", + "path": "microsoft.extensions.features/10.0.0", + "hashPath": "microsoft.extensions.features.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Logging/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", + "path": "microsoft.extensions.logging/10.0.0", + "hashPath": "microsoft.extensions.logging.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", + "path": "microsoft.extensions.logging.abstractions/10.0.0", + "hashPath": "microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Options/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", + "path": "microsoft.extensions.options/10.0.0", + "hashPath": "microsoft.extensions.options.10.0.0.nupkg.sha512" + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", + "path": "microsoft.extensions.primitives/10.0.0", + "hashPath": "microsoft.extensions.primitives.10.0.0.nupkg.sha512" + }, + "Microsoft.NET.ILLink.Tasks/8.0.19": { + "type": "package", + "serviceable": true, + "sha512": "sha512-IhHf+zeZiaE5EXRyxILd4qM+Hj9cxV3sa8MpzZgeEhpvaG3a1VEGF6UCaPFLO44Kua3JkLKluE0SWVamS50PlA==", + "path": "microsoft.net.illink.tasks/8.0.19", + "hashPath": "microsoft.net.illink.tasks.8.0.19.nupkg.sha512" + }, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", + "path": "system.diagnostics.diagnosticsource/10.0.0", + "hashPath": "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512" + }, + "System.IO.Pipelines/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", + "path": "system.io.pipelines/10.0.0", + "hashPath": "system.io.pipelines.10.0.0.nupkg.sha512" + }, + "System.Net.ServerSentEvents/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", + "path": "system.net.serversentevents/10.0.0", + "hashPath": "system.net.serversentevents.10.0.0.nupkg.sha512" + }, + "System.Text.Encodings.Web/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", + "path": "system.text.encodings.web/10.0.0", + "hashPath": "system.text.encodings.web.10.0.0.nupkg.sha512" + }, + "System.Text.Json/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", + "path": "system.text.json/10.0.0", + "hashPath": "system.text.json.10.0.0.nupkg.sha512" + }, + "System.Threading.Channels/10.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", + "path": "system.threading.channels/10.0.0", + "hashPath": "system.threading.channels.10.0.0.nupkg.sha512" + } + }, + "runtimes": { + "win-x64": [ + "win", + "any", + "base" + ] + } } \ No newline at end of file diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.genbundle.cache b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.genbundle.cache index 5b491f2..e24f058 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.genbundle.cache +++ b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.genbundle.cache @@ -1 +1 @@ -f5ec142e4205efa4e2a47deb98b16a53a730a2e2889eb06a1b8d2cf783369ecb +f5ec142e4205efa4e2a47deb98b16a53a730a2e2889eb06a1b8d2cf783369ecb diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.genpublishdeps.cache b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.genpublishdeps.cache index e3cfe8f..59ab520 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.genpublishdeps.cache +++ b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.genpublishdeps.cache @@ -1 +1 @@ -fd0643ce84d5db8d093a96fb4a51a64ab36d090f48e974c315bcd467642d24cb +fd0643ce84d5db8d093a96fb4a51a64ab36d090f48e974c315bcd467642d24cb diff --git a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.genruntimeconfig.cache b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.genruntimeconfig.cache index 0fd30c9..8385c1a 100644 --- a/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.genruntimeconfig.cache +++ b/backend/SignalRTest/obj/Release/net8.0-windows/win-x64/SignalRTest.genruntimeconfig.cache @@ -1 +1 @@ -a51d30e150bdb740388f5f5acc59cb2abb41798f409c2d9c6e00372e67cc3428 +a51d30e150bdb740388f5f5acc59cb2abb41798f409c2d9c6e00372e67cc3428 diff --git a/backend/SignalRTest/obj/SignalRTest.csproj.nuget.dgspec.json b/backend/SignalRTest/obj/SignalRTest.csproj.nuget.dgspec.json index b2577f0..b0ba274 100644 --- a/backend/SignalRTest/obj/SignalRTest.csproj.nuget.dgspec.json +++ b/backend/SignalRTest/obj/SignalRTest.csproj.nuget.dgspec.json @@ -1,83 +1,83 @@ -{ - "format": 1, - "restore": { - "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj": {} - }, - "projects": { - "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj": { - "version": "1.0.0", - "restore": { - "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", - "projectName": "SignalRTest", - "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", - "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", - "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\obj\\", - "projectStyle": "PackageReference", - "fallbackFolders": [ - "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" - ], - "configFilePaths": [ - "C:\\Users\\nanxun\\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" - ], - "originalTargetFrameworks": [ - "net8.0-windows" - ], - "sources": { - "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, - "C:\\Program Files\\dotnet\\library-packs": {}, - "https://api.nuget.org/v3/index.json": {} - }, - "frameworks": { - "net8.0-windows7.0": { - "targetAlias": "net8.0-windows", - "projectReferences": {} - } - }, - "warningProperties": { - "warnAsError": [ - "NU1605" - ] - }, - "restoreAuditProperties": { - "enableAudit": "true", - "auditLevel": "low", - "auditMode": "direct" - }, - "SdkAnalysisLevel": "9.0.300" - }, - "frameworks": { - "net8.0-windows7.0": { - "targetAlias": "net8.0-windows", - "dependencies": { - "Microsoft.AspNetCore.SignalR.Client": { - "target": "Package", - "version": "[10.0.0, )" - } - }, - "imports": [ - "net461", - "net462", - "net47", - "net471", - "net472", - "net48", - "net481" - ], - "assetTargetFallback": true, - "warn": true, - "frameworkReferences": { - "Microsoft.NETCore.App": { - "privateAssets": "all" - }, - "Microsoft.WindowsDesktop.App.WindowsForms": { - "privateAssets": "none" - } - }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" - } - } - } - } +{ + "format": 1, + "restore": { + "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj": {} + }, + "projects": { + "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", + "projectName": "SignalRTest", + "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", + "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", + "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\nanxun\\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" + ], + "originalTargetFrameworks": [ + "net8.0-windows" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "C:\\Program Files\\dotnet\\library-packs": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0-windows7.0": { + "targetAlias": "net8.0-windows", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + }, + "SdkAnalysisLevel": "9.0.300" + }, + "frameworks": { + "net8.0-windows7.0": { + "targetAlias": "net8.0-windows", + "dependencies": { + "Microsoft.AspNetCore.SignalR.Client": { + "target": "Package", + "version": "[10.0.0, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + }, + "Microsoft.WindowsDesktop.App.WindowsForms": { + "privateAssets": "none" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" + } + } + } + } } \ No newline at end of file diff --git a/backend/SignalRTest/obj/SignalRTest.csproj.nuget.g.props b/backend/SignalRTest/obj/SignalRTest.csproj.nuget.g.props index 8dc3638..66c3511 100644 --- a/backend/SignalRTest/obj/SignalRTest.csproj.nuget.g.props +++ b/backend/SignalRTest/obj/SignalRTest.csproj.nuget.g.props @@ -1,16 +1,16 @@ - - - - True - NuGet - $(MSBuildThisFileDirectory)project.assets.json - $(UserProfile)\.nuget\packages\ - C:\Users\nanxun\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages - PackageReference - 6.14.1 - - - - - + + + + True + NuGet + $(MSBuildThisFileDirectory)project.assets.json + $(UserProfile)\.nuget\packages\ + C:\Users\nanxun\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages + PackageReference + 6.14.1 + + + + + \ No newline at end of file diff --git a/backend/SignalRTest/obj/SignalRTest.csproj.nuget.g.targets b/backend/SignalRTest/obj/SignalRTest.csproj.nuget.g.targets index 1437cbf..9952526 100644 --- a/backend/SignalRTest/obj/SignalRTest.csproj.nuget.g.targets +++ b/backend/SignalRTest/obj/SignalRTest.csproj.nuget.g.targets @@ -1,8 +1,8 @@ - - - - - - - + + + + + + + \ No newline at end of file diff --git a/backend/SignalRTest/obj/project.assets.json b/backend/SignalRTest/obj/project.assets.json index 82a7344..64310b8 100644 --- a/backend/SignalRTest/obj/project.assets.json +++ b/backend/SignalRTest/obj/project.assets.json @@ -1,1153 +1,1153 @@ -{ - "version": 3, - "targets": { - "net8.0-windows7.0": { - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "10.0.0", - "Microsoft.Extensions.Features": "10.0.0", - "System.IO.Pipelines": "10.0.0" - }, - "compile": { - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Net.ServerSentEvents": "10.0.0" - }, - "compile": { - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", - "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0", - "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", - "Microsoft.Bcl.TimeProvider": "10.0.0", - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging": "10.0.0", - "System.Threading.Channels": "10.0.0" - }, - "compile": { - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "type": "package", - "compile": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.Features/10.0.0": { - "type": "package", - "compile": { - "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Extensions.Logging/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "System.Diagnostics.DiagnosticSource": "10.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {} - } - }, - "Microsoft.Extensions.Options/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "Microsoft.Extensions.Primitives": "10.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/Microsoft.Extensions.Options.targets": {} - } - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.IO.Pipelines/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.IO.Pipelines.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.IO.Pipelines.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.Net.ServerSentEvents/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Net.ServerSentEvents.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Net.ServerSentEvents.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.Text.Encodings.Web/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - }, - "runtimeTargets": { - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { - "assetType": "runtime", - "rid": "browser" - } - } - }, - "System.Text.Json/10.0.0": { - "type": "package", - "dependencies": { - "System.IO.Pipelines": "10.0.0", - "System.Text.Encodings.Web": "10.0.0" - }, - "compile": { - "lib/net8.0/System.Text.Json.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Text.Json.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/System.Text.Json.targets": {} - } - }, - "System.Threading.Channels/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Threading.Channels.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Threading.Channels.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - } - } - }, - "libraries": { - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "sha512": "MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", - "type": "package", - "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.Connections.Abstractions.dll", - "lib/net10.0/Microsoft.AspNetCore.Connections.Abstractions.xml", - "lib/net462/Microsoft.AspNetCore.Connections.Abstractions.dll", - "lib/net462/Microsoft.AspNetCore.Connections.Abstractions.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.xml", - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll", - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.xml", - "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.connections.abstractions.nuspec" - ] - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "sha512": "7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", - "type": "package", - "path": "microsoft.aspnetcore.http.connections.client/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Client.dll", - "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Client.xml", - "lib/net462/Microsoft.AspNetCore.Http.Connections.Client.dll", - "lib/net462/Microsoft.AspNetCore.Http.Connections.Client.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Client.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Client.xml", - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll", - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.xml", - "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.http.connections.client.nuspec" - ] - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "sha512": "VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", - "type": "package", - "path": "microsoft.aspnetcore.http.connections.common/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Common.dll", - "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Common.xml", - "lib/net462/Microsoft.AspNetCore.Http.Connections.Common.dll", - "lib/net462/Microsoft.AspNetCore.Http.Connections.Common.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.xml", - "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.http.connections.common.nuspec" - ] - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "sha512": "XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", - "type": "package", - "path": "microsoft.aspnetcore.signalr.client/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.dll", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.xml", - "lib/net462/Microsoft.AspNetCore.SignalR.Client.dll", - "lib/net462/Microsoft.AspNetCore.SignalR.Client.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.xml", - "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.signalr.client.nuspec" - ] - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "sha512": "MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", - "type": "package", - "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.Core.dll", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.Core.xml", - "lib/net462/Microsoft.AspNetCore.SignalR.Client.Core.dll", - "lib/net462/Microsoft.AspNetCore.SignalR.Client.Core.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.Core.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.Core.xml", - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll", - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.xml", - "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.signalr.client.core.nuspec" - ] - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "sha512": "pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", - "type": "package", - "path": "microsoft.aspnetcore.signalr.common/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Common.dll", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Common.xml", - "lib/net462/Microsoft.AspNetCore.SignalR.Common.dll", - "lib/net462/Microsoft.AspNetCore.SignalR.Common.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.xml", - "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.signalr.common.nuspec" - ] - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "sha512": "L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", - "type": "package", - "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", - "lib/net462/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", - "lib/net462/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", - "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.signalr.protocols.json.nuspec" - ] - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "sha512": "vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", - "type": "package", - "path": "microsoft.bcl.asyncinterfaces/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Bcl.AsyncInterfaces.targets", - "buildTransitive/net462/_._", - "lib/net462/Microsoft.Bcl.AsyncInterfaces.dll", - "lib/net462/Microsoft.Bcl.AsyncInterfaces.xml", - "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll", - "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml", - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll", - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml", - "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512", - "microsoft.bcl.asyncinterfaces.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "sha512": "bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", - "type": "package", - "path": "microsoft.bcl.timeprovider/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Bcl.TimeProvider.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Bcl.TimeProvider.targets", - "lib/net462/Microsoft.Bcl.TimeProvider.dll", - "lib/net462/Microsoft.Bcl.TimeProvider.xml", - "lib/net8.0/Microsoft.Bcl.TimeProvider.dll", - "lib/net8.0/Microsoft.Bcl.TimeProvider.xml", - "lib/netstandard2.0/Microsoft.Bcl.TimeProvider.dll", - "lib/netstandard2.0/Microsoft.Bcl.TimeProvider.xml", - "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512", - "microsoft.bcl.timeprovider.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "sha512": "f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", - "type": "package", - "path": "microsoft.extensions.dependencyinjection/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets", - "lib/net10.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/net10.0/Microsoft.Extensions.DependencyInjection.xml", - "lib/net462/Microsoft.Extensions.DependencyInjection.dll", - "lib/net462/Microsoft.Extensions.DependencyInjection.xml", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml", - "lib/net9.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/net9.0/Microsoft.Extensions.DependencyInjection.xml", - "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml", - "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll", - "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml", - "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512", - "microsoft.extensions.dependencyinjection.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "sha512": "L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", - "type": "package", - "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets", - "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "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.10.0.0.nupkg.sha512", - "microsoft.extensions.dependencyinjection.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Features/10.0.0": { - "sha512": "kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", - "type": "package", - "path": "microsoft.extensions.features/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.Extensions.Features.dll", - "lib/net10.0/Microsoft.Extensions.Features.xml", - "lib/net462/Microsoft.Extensions.Features.dll", - "lib/net462/Microsoft.Extensions.Features.xml", - "lib/netstandard2.0/Microsoft.Extensions.Features.dll", - "lib/netstandard2.0/Microsoft.Extensions.Features.xml", - "microsoft.extensions.features.10.0.0.nupkg.sha512", - "microsoft.extensions.features.nuspec" - ] - }, - "Microsoft.Extensions.Logging/10.0.0": { - "sha512": "BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", - "type": "package", - "path": "microsoft.extensions.logging/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.Logging.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets", - "lib/net10.0/Microsoft.Extensions.Logging.dll", - "lib/net10.0/Microsoft.Extensions.Logging.xml", - "lib/net462/Microsoft.Extensions.Logging.dll", - "lib/net462/Microsoft.Extensions.Logging.xml", - "lib/net8.0/Microsoft.Extensions.Logging.dll", - "lib/net8.0/Microsoft.Extensions.Logging.xml", - "lib/net9.0/Microsoft.Extensions.Logging.dll", - "lib/net9.0/Microsoft.Extensions.Logging.xml", - "lib/netstandard2.0/Microsoft.Extensions.Logging.dll", - "lib/netstandard2.0/Microsoft.Extensions.Logging.xml", - "lib/netstandard2.1/Microsoft.Extensions.Logging.dll", - "lib/netstandard2.1/Microsoft.Extensions.Logging.xml", - "microsoft.extensions.logging.10.0.0.nupkg.sha512", - "microsoft.extensions.logging.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "sha512": "FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", - "type": "package", - "path": "microsoft.extensions.logging.abstractions/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll", - "analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll", - "analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll", - "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", - "buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets", - "buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets", - "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets", - "buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets", - "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.dll", - "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.xml", - "lib/net462/Microsoft.Extensions.Logging.Abstractions.dll", - "lib/net462/Microsoft.Extensions.Logging.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml", - "lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll", - "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.10.0.0.nupkg.sha512", - "microsoft.extensions.logging.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Options/10.0.0": { - "sha512": "8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", - "type": "package", - "path": "microsoft.extensions.options/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Options.SourceGeneration.dll", - "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "buildTransitive/net461/Microsoft.Extensions.Options.targets", - "buildTransitive/net462/Microsoft.Extensions.Options.targets", - "buildTransitive/net8.0/Microsoft.Extensions.Options.targets", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Options.targets", - "buildTransitive/netstandard2.0/Microsoft.Extensions.Options.targets", - "lib/net10.0/Microsoft.Extensions.Options.dll", - "lib/net10.0/Microsoft.Extensions.Options.xml", - "lib/net462/Microsoft.Extensions.Options.dll", - "lib/net462/Microsoft.Extensions.Options.xml", - "lib/net8.0/Microsoft.Extensions.Options.dll", - "lib/net8.0/Microsoft.Extensions.Options.xml", - "lib/net9.0/Microsoft.Extensions.Options.dll", - "lib/net9.0/Microsoft.Extensions.Options.xml", - "lib/netstandard2.0/Microsoft.Extensions.Options.dll", - "lib/netstandard2.0/Microsoft.Extensions.Options.xml", - "lib/netstandard2.1/Microsoft.Extensions.Options.dll", - "lib/netstandard2.1/Microsoft.Extensions.Options.xml", - "microsoft.extensions.options.10.0.0.nupkg.sha512", - "microsoft.extensions.options.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "sha512": "inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", - "type": "package", - "path": "microsoft.extensions.primitives/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.Primitives.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets", - "lib/net10.0/Microsoft.Extensions.Primitives.dll", - "lib/net10.0/Microsoft.Extensions.Primitives.xml", - "lib/net462/Microsoft.Extensions.Primitives.dll", - "lib/net462/Microsoft.Extensions.Primitives.xml", - "lib/net8.0/Microsoft.Extensions.Primitives.dll", - "lib/net8.0/Microsoft.Extensions.Primitives.xml", - "lib/net9.0/Microsoft.Extensions.Primitives.dll", - "lib/net9.0/Microsoft.Extensions.Primitives.xml", - "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll", - "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml", - "microsoft.extensions.primitives.10.0.0.nupkg.sha512", - "microsoft.extensions.primitives.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "sha512": "0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", - "type": "package", - "path": "system.diagnostics.diagnosticsource/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Diagnostics.DiagnosticSource.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.Diagnostics.DiagnosticSource.targets", - "lib/net10.0/System.Diagnostics.DiagnosticSource.dll", - "lib/net10.0/System.Diagnostics.DiagnosticSource.xml", - "lib/net462/System.Diagnostics.DiagnosticSource.dll", - "lib/net462/System.Diagnostics.DiagnosticSource.xml", - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll", - "lib/net8.0/System.Diagnostics.DiagnosticSource.xml", - "lib/net9.0/System.Diagnostics.DiagnosticSource.dll", - "lib/net9.0/System.Diagnostics.DiagnosticSource.xml", - "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.dll", - "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.xml", - "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512", - "system.diagnostics.diagnosticsource.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.IO.Pipelines/10.0.0": { - "sha512": "M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", - "type": "package", - "path": "system.io.pipelines/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.IO.Pipelines.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.IO.Pipelines.targets", - "lib/net10.0/System.IO.Pipelines.dll", - "lib/net10.0/System.IO.Pipelines.xml", - "lib/net462/System.IO.Pipelines.dll", - "lib/net462/System.IO.Pipelines.xml", - "lib/net8.0/System.IO.Pipelines.dll", - "lib/net8.0/System.IO.Pipelines.xml", - "lib/net9.0/System.IO.Pipelines.dll", - "lib/net9.0/System.IO.Pipelines.xml", - "lib/netstandard2.0/System.IO.Pipelines.dll", - "lib/netstandard2.0/System.IO.Pipelines.xml", - "system.io.pipelines.10.0.0.nupkg.sha512", - "system.io.pipelines.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Net.ServerSentEvents/10.0.0": { - "sha512": "zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", - "type": "package", - "path": "system.net.serversentevents/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Net.ServerSentEvents.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.Net.ServerSentEvents.targets", - "lib/net10.0/System.Net.ServerSentEvents.dll", - "lib/net10.0/System.Net.ServerSentEvents.xml", - "lib/net462/System.Net.ServerSentEvents.dll", - "lib/net462/System.Net.ServerSentEvents.xml", - "lib/net8.0/System.Net.ServerSentEvents.dll", - "lib/net8.0/System.Net.ServerSentEvents.xml", - "lib/net9.0/System.Net.ServerSentEvents.dll", - "lib/net9.0/System.Net.ServerSentEvents.xml", - "lib/netstandard2.0/System.Net.ServerSentEvents.dll", - "lib/netstandard2.0/System.Net.ServerSentEvents.xml", - "system.net.serversentevents.10.0.0.nupkg.sha512", - "system.net.serversentevents.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Text.Encodings.Web/10.0.0": { - "sha512": "257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", - "type": "package", - "path": "system.text.encodings.web/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Text.Encodings.Web.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.Text.Encodings.Web.targets", - "lib/net10.0/System.Text.Encodings.Web.dll", - "lib/net10.0/System.Text.Encodings.Web.xml", - "lib/net462/System.Text.Encodings.Web.dll", - "lib/net462/System.Text.Encodings.Web.xml", - "lib/net8.0/System.Text.Encodings.Web.dll", - "lib/net8.0/System.Text.Encodings.Web.xml", - "lib/net9.0/System.Text.Encodings.Web.dll", - "lib/net9.0/System.Text.Encodings.Web.xml", - "lib/netstandard2.0/System.Text.Encodings.Web.dll", - "lib/netstandard2.0/System.Text.Encodings.Web.xml", - "runtimes/browser/lib/net10.0/System.Text.Encodings.Web.dll", - "runtimes/browser/lib/net10.0/System.Text.Encodings.Web.xml", - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll", - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.xml", - "runtimes/wasi/lib/net10.0/System.Text.Encodings.Web.dll", - "runtimes/wasi/lib/net10.0/System.Text.Encodings.Web.xml", - "runtimes/win/lib/net9.0/System.Text.Encodings.Web.dll", - "runtimes/win/lib/net9.0/System.Text.Encodings.Web.xml", - "system.text.encodings.web.10.0.0.nupkg.sha512", - "system.text.encodings.web.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Text.Json/10.0.0": { - "sha512": "1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", - "type": "package", - "path": "system.text.json/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "analyzers/dotnet/roslyn3.11/cs/System.Text.Json.SourceGeneration.dll", - "analyzers/dotnet/roslyn3.11/cs/cs/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/de/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/es/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/fr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/it/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ja/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ko/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/pl/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ru/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/tr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/System.Text.Json.SourceGeneration.dll", - "analyzers/dotnet/roslyn4.0/cs/cs/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/de/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/es/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/fr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/it/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ja/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ko/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/pl/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ru/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/tr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/System.Text.Json.SourceGeneration.dll", - "analyzers/dotnet/roslyn4.4/cs/cs/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/de/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/es/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/fr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/it/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ja/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ko/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pl/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ru/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/tr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", - "buildTransitive/net461/System.Text.Json.targets", - "buildTransitive/net462/System.Text.Json.targets", - "buildTransitive/net8.0/System.Text.Json.targets", - "buildTransitive/netcoreapp2.0/System.Text.Json.targets", - "buildTransitive/netstandard2.0/System.Text.Json.targets", - "lib/net10.0/System.Text.Json.dll", - "lib/net10.0/System.Text.Json.xml", - "lib/net462/System.Text.Json.dll", - "lib/net462/System.Text.Json.xml", - "lib/net8.0/System.Text.Json.dll", - "lib/net8.0/System.Text.Json.xml", - "lib/net9.0/System.Text.Json.dll", - "lib/net9.0/System.Text.Json.xml", - "lib/netstandard2.0/System.Text.Json.dll", - "lib/netstandard2.0/System.Text.Json.xml", - "system.text.json.10.0.0.nupkg.sha512", - "system.text.json.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Threading.Channels/10.0.0": { - "sha512": "fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", - "type": "package", - "path": "system.threading.channels/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Threading.Channels.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.Threading.Channels.targets", - "lib/net10.0/System.Threading.Channels.dll", - "lib/net10.0/System.Threading.Channels.xml", - "lib/net462/System.Threading.Channels.dll", - "lib/net462/System.Threading.Channels.xml", - "lib/net8.0/System.Threading.Channels.dll", - "lib/net8.0/System.Threading.Channels.xml", - "lib/net9.0/System.Threading.Channels.dll", - "lib/net9.0/System.Threading.Channels.xml", - "lib/netstandard2.0/System.Threading.Channels.dll", - "lib/netstandard2.0/System.Threading.Channels.xml", - "lib/netstandard2.1/System.Threading.Channels.dll", - "lib/netstandard2.1/System.Threading.Channels.xml", - "system.threading.channels.10.0.0.nupkg.sha512", - "system.threading.channels.nuspec", - "useSharedDesignerContext.txt" - ] - } - }, - "projectFileDependencyGroups": { - "net8.0-windows7.0": [ - "Microsoft.AspNetCore.SignalR.Client >= 10.0.0" - ] - }, - "packageFolders": { - "C:\\Users\\nanxun\\.nuget\\packages\\": {}, - "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {} - }, - "project": { - "version": "1.0.0", - "restore": { - "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", - "projectName": "SignalRTest", - "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", - "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", - "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\obj\\", - "projectStyle": "PackageReference", - "fallbackFolders": [ - "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" - ], - "configFilePaths": [ - "C:\\Users\\nanxun\\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" - ], - "originalTargetFrameworks": [ - "net8.0-windows" - ], - "sources": { - "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, - "C:\\Program Files\\dotnet\\library-packs": {}, - "https://api.nuget.org/v3/index.json": {} - }, - "frameworks": { - "net8.0-windows7.0": { - "targetAlias": "net8.0-windows", - "projectReferences": {} - } - }, - "warningProperties": { - "warnAsError": [ - "NU1605" - ] - }, - "restoreAuditProperties": { - "enableAudit": "true", - "auditLevel": "low", - "auditMode": "direct" - }, - "SdkAnalysisLevel": "9.0.300" - }, - "frameworks": { - "net8.0-windows7.0": { - "targetAlias": "net8.0-windows", - "dependencies": { - "Microsoft.AspNetCore.SignalR.Client": { - "target": "Package", - "version": "[10.0.0, )" - } - }, - "imports": [ - "net461", - "net462", - "net47", - "net471", - "net472", - "net48", - "net481" - ], - "assetTargetFallback": true, - "warn": true, - "frameworkReferences": { - "Microsoft.NETCore.App": { - "privateAssets": "all" - }, - "Microsoft.WindowsDesktop.App.WindowsForms": { - "privateAssets": "none" - } - }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" - } - } - } +{ + "version": 3, + "targets": { + "net8.0-windows7.0": { + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Bcl.AsyncInterfaces": "10.0.0", + "Microsoft.Extensions.Features": "10.0.0", + "System.IO.Pipelines": "10.0.0" + }, + "compile": { + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Net.ServerSentEvents": "10.0.0" + }, + "compile": { + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", + "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0", + "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", + "Microsoft.Bcl.TimeProvider": "10.0.0", + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging": "10.0.0", + "System.Threading.Channels": "10.0.0" + }, + "compile": { + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "type": "package", + "compile": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.Features/10.0.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.Logging/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "System.Diagnostics.DiagnosticSource": "10.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {} + } + }, + "Microsoft.Extensions.Options/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "Microsoft.Extensions.Primitives": "10.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.Extensions.Options.targets": {} + } + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.IO.Pipelines/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.Net.ServerSentEvents/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Net.ServerSentEvents.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Net.ServerSentEvents.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.Text.Encodings.Web/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + }, + "runtimeTargets": { + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { + "assetType": "runtime", + "rid": "browser" + } + } + }, + "System.Text.Json/10.0.0": { + "type": "package", + "dependencies": { + "System.IO.Pipelines": "10.0.0", + "System.Text.Encodings.Web": "10.0.0" + }, + "compile": { + "lib/net8.0/System.Text.Json.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Text.Json.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/System.Text.Json.targets": {} + } + }, + "System.Threading.Channels/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Threading.Channels.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Threading.Channels.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + } + } + }, + "libraries": { + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "sha512": "MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", + "type": "package", + "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.Connections.Abstractions.dll", + "lib/net10.0/Microsoft.AspNetCore.Connections.Abstractions.xml", + "lib/net462/Microsoft.AspNetCore.Connections.Abstractions.dll", + "lib/net462/Microsoft.AspNetCore.Connections.Abstractions.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.xml", + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll", + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.xml", + "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.connections.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "sha512": "7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", + "type": "package", + "path": "microsoft.aspnetcore.http.connections.client/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Client.dll", + "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Client.xml", + "lib/net462/Microsoft.AspNetCore.Http.Connections.Client.dll", + "lib/net462/Microsoft.AspNetCore.Http.Connections.Client.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Client.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Client.xml", + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll", + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.xml", + "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.http.connections.client.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "sha512": "VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", + "type": "package", + "path": "microsoft.aspnetcore.http.connections.common/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Common.dll", + "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Common.xml", + "lib/net462/Microsoft.AspNetCore.Http.Connections.Common.dll", + "lib/net462/Microsoft.AspNetCore.Http.Connections.Common.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.xml", + "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.http.connections.common.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "sha512": "XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.client/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.dll", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.xml", + "lib/net462/Microsoft.AspNetCore.SignalR.Client.dll", + "lib/net462/Microsoft.AspNetCore.SignalR.Client.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.xml", + "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.signalr.client.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "sha512": "MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.Core.dll", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.Core.xml", + "lib/net462/Microsoft.AspNetCore.SignalR.Client.Core.dll", + "lib/net462/Microsoft.AspNetCore.SignalR.Client.Core.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.Core.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.Core.xml", + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll", + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.xml", + "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.signalr.client.core.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "sha512": "pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.common/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Common.dll", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Common.xml", + "lib/net462/Microsoft.AspNetCore.SignalR.Common.dll", + "lib/net462/Microsoft.AspNetCore.SignalR.Common.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.xml", + "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.signalr.common.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "sha512": "L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", + "lib/net462/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", + "lib/net462/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", + "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.signalr.protocols.json.nuspec" + ] + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "sha512": "vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", + "type": "package", + "path": "microsoft.bcl.asyncinterfaces/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Bcl.AsyncInterfaces.targets", + "buildTransitive/net462/_._", + "lib/net462/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/net462/Microsoft.Bcl.AsyncInterfaces.xml", + "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml", + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml", + "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512", + "microsoft.bcl.asyncinterfaces.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "sha512": "bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", + "type": "package", + "path": "microsoft.bcl.timeprovider/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Bcl.TimeProvider.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Bcl.TimeProvider.targets", + "lib/net462/Microsoft.Bcl.TimeProvider.dll", + "lib/net462/Microsoft.Bcl.TimeProvider.xml", + "lib/net8.0/Microsoft.Bcl.TimeProvider.dll", + "lib/net8.0/Microsoft.Bcl.TimeProvider.xml", + "lib/netstandard2.0/Microsoft.Bcl.TimeProvider.dll", + "lib/netstandard2.0/Microsoft.Bcl.TimeProvider.xml", + "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512", + "microsoft.bcl.timeprovider.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "sha512": "f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets", + "lib/net10.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net10.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net462/Microsoft.Extensions.DependencyInjection.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net9.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net9.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml", + "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512", + "microsoft.extensions.dependencyinjection.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "sha512": "L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "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.10.0.0.nupkg.sha512", + "microsoft.extensions.dependencyinjection.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Features/10.0.0": { + "sha512": "kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", + "type": "package", + "path": "microsoft.extensions.features/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.Extensions.Features.dll", + "lib/net10.0/Microsoft.Extensions.Features.xml", + "lib/net462/Microsoft.Extensions.Features.dll", + "lib/net462/Microsoft.Extensions.Features.xml", + "lib/netstandard2.0/Microsoft.Extensions.Features.dll", + "lib/netstandard2.0/Microsoft.Extensions.Features.xml", + "microsoft.extensions.features.10.0.0.nupkg.sha512", + "microsoft.extensions.features.nuspec" + ] + }, + "Microsoft.Extensions.Logging/10.0.0": { + "sha512": "BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", + "type": "package", + "path": "microsoft.extensions.logging/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Logging.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets", + "lib/net10.0/Microsoft.Extensions.Logging.dll", + "lib/net10.0/Microsoft.Extensions.Logging.xml", + "lib/net462/Microsoft.Extensions.Logging.dll", + "lib/net462/Microsoft.Extensions.Logging.xml", + "lib/net8.0/Microsoft.Extensions.Logging.dll", + "lib/net8.0/Microsoft.Extensions.Logging.xml", + "lib/net9.0/Microsoft.Extensions.Logging.dll", + "lib/net9.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.0/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.1/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.1/Microsoft.Extensions.Logging.xml", + "microsoft.extensions.logging.10.0.0.nupkg.sha512", + "microsoft.extensions.logging.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "sha512": "FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", + "type": "package", + "path": "microsoft.extensions.logging.abstractions/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll", + "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.10.0.0.nupkg.sha512", + "microsoft.extensions.logging.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Options/10.0.0": { + "sha512": "8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", + "type": "package", + "path": "microsoft.extensions.options/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Options.SourceGeneration.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Options.targets", + "buildTransitive/net462/Microsoft.Extensions.Options.targets", + "buildTransitive/net8.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Options.targets", + "lib/net10.0/Microsoft.Extensions.Options.dll", + "lib/net10.0/Microsoft.Extensions.Options.xml", + "lib/net462/Microsoft.Extensions.Options.dll", + "lib/net462/Microsoft.Extensions.Options.xml", + "lib/net8.0/Microsoft.Extensions.Options.dll", + "lib/net8.0/Microsoft.Extensions.Options.xml", + "lib/net9.0/Microsoft.Extensions.Options.dll", + "lib/net9.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.0/Microsoft.Extensions.Options.dll", + "lib/netstandard2.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.1/Microsoft.Extensions.Options.dll", + "lib/netstandard2.1/Microsoft.Extensions.Options.xml", + "microsoft.extensions.options.10.0.0.nupkg.sha512", + "microsoft.extensions.options.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "sha512": "inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", + "type": "package", + "path": "microsoft.extensions.primitives/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Primitives.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets", + "lib/net10.0/Microsoft.Extensions.Primitives.dll", + "lib/net10.0/Microsoft.Extensions.Primitives.xml", + "lib/net462/Microsoft.Extensions.Primitives.dll", + "lib/net462/Microsoft.Extensions.Primitives.xml", + "lib/net8.0/Microsoft.Extensions.Primitives.dll", + "lib/net8.0/Microsoft.Extensions.Primitives.xml", + "lib/net9.0/Microsoft.Extensions.Primitives.dll", + "lib/net9.0/Microsoft.Extensions.Primitives.xml", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml", + "microsoft.extensions.primitives.10.0.0.nupkg.sha512", + "microsoft.extensions.primitives.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "sha512": "0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", + "type": "package", + "path": "system.diagnostics.diagnosticsource/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Diagnostics.DiagnosticSource.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.Diagnostics.DiagnosticSource.targets", + "lib/net10.0/System.Diagnostics.DiagnosticSource.dll", + "lib/net10.0/System.Diagnostics.DiagnosticSource.xml", + "lib/net462/System.Diagnostics.DiagnosticSource.dll", + "lib/net462/System.Diagnostics.DiagnosticSource.xml", + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll", + "lib/net8.0/System.Diagnostics.DiagnosticSource.xml", + "lib/net9.0/System.Diagnostics.DiagnosticSource.dll", + "lib/net9.0/System.Diagnostics.DiagnosticSource.xml", + "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.dll", + "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.xml", + "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512", + "system.diagnostics.diagnosticsource.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.IO.Pipelines/10.0.0": { + "sha512": "M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", + "type": "package", + "path": "system.io.pipelines/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.IO.Pipelines.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.IO.Pipelines.targets", + "lib/net10.0/System.IO.Pipelines.dll", + "lib/net10.0/System.IO.Pipelines.xml", + "lib/net462/System.IO.Pipelines.dll", + "lib/net462/System.IO.Pipelines.xml", + "lib/net8.0/System.IO.Pipelines.dll", + "lib/net8.0/System.IO.Pipelines.xml", + "lib/net9.0/System.IO.Pipelines.dll", + "lib/net9.0/System.IO.Pipelines.xml", + "lib/netstandard2.0/System.IO.Pipelines.dll", + "lib/netstandard2.0/System.IO.Pipelines.xml", + "system.io.pipelines.10.0.0.nupkg.sha512", + "system.io.pipelines.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Net.ServerSentEvents/10.0.0": { + "sha512": "zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", + "type": "package", + "path": "system.net.serversentevents/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Net.ServerSentEvents.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.Net.ServerSentEvents.targets", + "lib/net10.0/System.Net.ServerSentEvents.dll", + "lib/net10.0/System.Net.ServerSentEvents.xml", + "lib/net462/System.Net.ServerSentEvents.dll", + "lib/net462/System.Net.ServerSentEvents.xml", + "lib/net8.0/System.Net.ServerSentEvents.dll", + "lib/net8.0/System.Net.ServerSentEvents.xml", + "lib/net9.0/System.Net.ServerSentEvents.dll", + "lib/net9.0/System.Net.ServerSentEvents.xml", + "lib/netstandard2.0/System.Net.ServerSentEvents.dll", + "lib/netstandard2.0/System.Net.ServerSentEvents.xml", + "system.net.serversentevents.10.0.0.nupkg.sha512", + "system.net.serversentevents.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Text.Encodings.Web/10.0.0": { + "sha512": "257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", + "type": "package", + "path": "system.text.encodings.web/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Text.Encodings.Web.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.Text.Encodings.Web.targets", + "lib/net10.0/System.Text.Encodings.Web.dll", + "lib/net10.0/System.Text.Encodings.Web.xml", + "lib/net462/System.Text.Encodings.Web.dll", + "lib/net462/System.Text.Encodings.Web.xml", + "lib/net8.0/System.Text.Encodings.Web.dll", + "lib/net8.0/System.Text.Encodings.Web.xml", + "lib/net9.0/System.Text.Encodings.Web.dll", + "lib/net9.0/System.Text.Encodings.Web.xml", + "lib/netstandard2.0/System.Text.Encodings.Web.dll", + "lib/netstandard2.0/System.Text.Encodings.Web.xml", + "runtimes/browser/lib/net10.0/System.Text.Encodings.Web.dll", + "runtimes/browser/lib/net10.0/System.Text.Encodings.Web.xml", + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll", + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.xml", + "runtimes/wasi/lib/net10.0/System.Text.Encodings.Web.dll", + "runtimes/wasi/lib/net10.0/System.Text.Encodings.Web.xml", + "runtimes/win/lib/net9.0/System.Text.Encodings.Web.dll", + "runtimes/win/lib/net9.0/System.Text.Encodings.Web.xml", + "system.text.encodings.web.10.0.0.nupkg.sha512", + "system.text.encodings.web.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Text.Json/10.0.0": { + "sha512": "1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", + "type": "package", + "path": "system.text.json/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn3.11/cs/System.Text.Json.SourceGeneration.dll", + "analyzers/dotnet/roslyn3.11/cs/cs/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/de/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/es/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/fr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/it/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ja/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ko/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pl/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ru/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/tr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/System.Text.Json.SourceGeneration.dll", + "analyzers/dotnet/roslyn4.0/cs/cs/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/de/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/es/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/fr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/it/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ja/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ko/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pl/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ru/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/tr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/System.Text.Json.SourceGeneration.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", + "buildTransitive/net461/System.Text.Json.targets", + "buildTransitive/net462/System.Text.Json.targets", + "buildTransitive/net8.0/System.Text.Json.targets", + "buildTransitive/netcoreapp2.0/System.Text.Json.targets", + "buildTransitive/netstandard2.0/System.Text.Json.targets", + "lib/net10.0/System.Text.Json.dll", + "lib/net10.0/System.Text.Json.xml", + "lib/net462/System.Text.Json.dll", + "lib/net462/System.Text.Json.xml", + "lib/net8.0/System.Text.Json.dll", + "lib/net8.0/System.Text.Json.xml", + "lib/net9.0/System.Text.Json.dll", + "lib/net9.0/System.Text.Json.xml", + "lib/netstandard2.0/System.Text.Json.dll", + "lib/netstandard2.0/System.Text.Json.xml", + "system.text.json.10.0.0.nupkg.sha512", + "system.text.json.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Threading.Channels/10.0.0": { + "sha512": "fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", + "type": "package", + "path": "system.threading.channels/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Threading.Channels.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.Threading.Channels.targets", + "lib/net10.0/System.Threading.Channels.dll", + "lib/net10.0/System.Threading.Channels.xml", + "lib/net462/System.Threading.Channels.dll", + "lib/net462/System.Threading.Channels.xml", + "lib/net8.0/System.Threading.Channels.dll", + "lib/net8.0/System.Threading.Channels.xml", + "lib/net9.0/System.Threading.Channels.dll", + "lib/net9.0/System.Threading.Channels.xml", + "lib/netstandard2.0/System.Threading.Channels.dll", + "lib/netstandard2.0/System.Threading.Channels.xml", + "lib/netstandard2.1/System.Threading.Channels.dll", + "lib/netstandard2.1/System.Threading.Channels.xml", + "system.threading.channels.10.0.0.nupkg.sha512", + "system.threading.channels.nuspec", + "useSharedDesignerContext.txt" + ] + } + }, + "projectFileDependencyGroups": { + "net8.0-windows7.0": [ + "Microsoft.AspNetCore.SignalR.Client >= 10.0.0" + ] + }, + "packageFolders": { + "C:\\Users\\nanxun\\.nuget\\packages\\": {}, + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {} + }, + "project": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", + "projectName": "SignalRTest", + "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", + "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", + "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\nanxun\\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" + ], + "originalTargetFrameworks": [ + "net8.0-windows" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "C:\\Program Files\\dotnet\\library-packs": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0-windows7.0": { + "targetAlias": "net8.0-windows", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + }, + "SdkAnalysisLevel": "9.0.300" + }, + "frameworks": { + "net8.0-windows7.0": { + "targetAlias": "net8.0-windows", + "dependencies": { + "Microsoft.AspNetCore.SignalR.Client": { + "target": "Package", + "version": "[10.0.0, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + }, + "Microsoft.WindowsDesktop.App.WindowsForms": { + "privateAssets": "none" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" + } + } + } } \ No newline at end of file diff --git a/backend/SignalRTest/obj/project.nuget.cache b/backend/SignalRTest/obj/project.nuget.cache index 099ebf6..80a39fe 100644 --- a/backend/SignalRTest/obj/project.nuget.cache +++ b/backend/SignalRTest/obj/project.nuget.cache @@ -1,31 +1,31 @@ -{ - "version": 2, - "dgSpecHash": "qqVLMCu2v8Q=", - "success": true, - "projectFilePath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", - "expectedPackageFiles": [ - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.connections.abstractions\\10.0.0\\microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.connections.client\\10.0.0\\microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.connections.common\\10.0.0\\microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.client\\10.0.0\\microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.client.core\\10.0.0\\microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.common\\10.0.0\\microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.protocols.json\\10.0.0\\microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\10.0.0\\microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.bcl.timeprovider\\10.0.0\\microsoft.bcl.timeprovider.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\10.0.0\\microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\10.0.0\\microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.features\\10.0.0\\microsoft.extensions.features.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.logging\\10.0.0\\microsoft.extensions.logging.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\10.0.0\\microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.options\\10.0.0\\microsoft.extensions.options.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.primitives\\10.0.0\\microsoft.extensions.primitives.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.diagnosticsource\\10.0.0\\system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.io.pipelines\\10.0.0\\system.io.pipelines.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.net.serversentevents\\10.0.0\\system.net.serversentevents.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.text.encodings.web\\10.0.0\\system.text.encodings.web.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.text.json\\10.0.0\\system.text.json.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.channels\\10.0.0\\system.threading.channels.10.0.0.nupkg.sha512" - ], - "logs": [] +{ + "version": 2, + "dgSpecHash": "qqVLMCu2v8Q=", + "success": true, + "projectFilePath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", + "expectedPackageFiles": [ + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.connections.abstractions\\10.0.0\\microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.connections.client\\10.0.0\\microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.connections.common\\10.0.0\\microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.client\\10.0.0\\microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.client.core\\10.0.0\\microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.common\\10.0.0\\microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.protocols.json\\10.0.0\\microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\10.0.0\\microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.bcl.timeprovider\\10.0.0\\microsoft.bcl.timeprovider.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\10.0.0\\microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\10.0.0\\microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.features\\10.0.0\\microsoft.extensions.features.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.logging\\10.0.0\\microsoft.extensions.logging.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\10.0.0\\microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.options\\10.0.0\\microsoft.extensions.options.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.primitives\\10.0.0\\microsoft.extensions.primitives.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.diagnosticsource\\10.0.0\\system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.io.pipelines\\10.0.0\\system.io.pipelines.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.net.serversentevents\\10.0.0\\system.net.serversentevents.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.text.encodings.web\\10.0.0\\system.text.encodings.web.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.text.json\\10.0.0\\system.text.json.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.channels\\10.0.0\\system.threading.channels.10.0.0.nupkg.sha512" + ], + "logs": [] } \ No newline at end of file diff --git a/backend/SignalRTest/obj/publish/win-x64/SignalRTest.csproj.nuget.dgspec.json b/backend/SignalRTest/obj/publish/win-x64/SignalRTest.csproj.nuget.dgspec.json index 137f214..ba8d88c 100644 --- a/backend/SignalRTest/obj/publish/win-x64/SignalRTest.csproj.nuget.dgspec.json +++ b/backend/SignalRTest/obj/publish/win-x64/SignalRTest.csproj.nuget.dgspec.json @@ -1,108 +1,108 @@ -{ - "format": 1, - "restore": { - "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj": {} - }, - "projects": { - "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj": { - "version": "1.0.0", - "restore": { - "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", - "projectName": "SignalRTest", - "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", - "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", - "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\obj\\publish\\win-x64\\", - "projectStyle": "PackageReference", - "fallbackFolders": [ - "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" - ], - "configFilePaths": [ - "C:\\Users\\nanxun\\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" - ], - "originalTargetFrameworks": [ - "net8.0-windows" - ], - "sources": { - "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, - "C:\\Program Files\\dotnet\\library-packs": {}, - "https://api.nuget.org/v3/index.json": {} - }, - "frameworks": { - "net8.0-windows7.0": { - "targetAlias": "net8.0-windows", - "projectReferences": {} - } - }, - "warningProperties": { - "warnAsError": [ - "NU1605" - ] - }, - "restoreAuditProperties": { - "enableAudit": "true", - "auditLevel": "low", - "auditMode": "direct" - }, - "SdkAnalysisLevel": "9.0.300" - }, - "frameworks": { - "net8.0-windows7.0": { - "targetAlias": "net8.0-windows", - "dependencies": { - "Microsoft.AspNetCore.SignalR.Client": { - "target": "Package", - "version": "[10.0.0, )" - }, - "Microsoft.NET.ILLink.Tasks": { - "suppressParent": "All", - "target": "Package", - "version": "[8.0.19, )", - "autoReferenced": true - } - }, - "imports": [ - "net461", - "net462", - "net47", - "net471", - "net472", - "net48", - "net481" - ], - "assetTargetFallback": true, - "warn": true, - "downloadDependencies": [ - { - "name": "Microsoft.AspNetCore.App.Runtime.win-x64", - "version": "[8.0.19, 8.0.19]" - }, - { - "name": "Microsoft.NETCore.App.Runtime.win-x64", - "version": "[8.0.19, 8.0.19]" - }, - { - "name": "Microsoft.WindowsDesktop.App.Runtime.win-x64", - "version": "[8.0.19, 8.0.19]" - } - ], - "frameworkReferences": { - "Microsoft.NETCore.App": { - "privateAssets": "all" - }, - "Microsoft.WindowsDesktop.App.WindowsForms": { - "privateAssets": "none" - } - }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" - } - }, - "runtimes": { - "win-x64": { - "#import": [] - } - } - } - } +{ + "format": 1, + "restore": { + "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj": {} + }, + "projects": { + "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", + "projectName": "SignalRTest", + "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", + "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", + "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\obj\\publish\\win-x64\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\nanxun\\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" + ], + "originalTargetFrameworks": [ + "net8.0-windows" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "C:\\Program Files\\dotnet\\library-packs": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0-windows7.0": { + "targetAlias": "net8.0-windows", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + }, + "SdkAnalysisLevel": "9.0.300" + }, + "frameworks": { + "net8.0-windows7.0": { + "targetAlias": "net8.0-windows", + "dependencies": { + "Microsoft.AspNetCore.SignalR.Client": { + "target": "Package", + "version": "[10.0.0, )" + }, + "Microsoft.NET.ILLink.Tasks": { + "suppressParent": "All", + "target": "Package", + "version": "[8.0.19, )", + "autoReferenced": true + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "downloadDependencies": [ + { + "name": "Microsoft.AspNetCore.App.Runtime.win-x64", + "version": "[8.0.19, 8.0.19]" + }, + { + "name": "Microsoft.NETCore.App.Runtime.win-x64", + "version": "[8.0.19, 8.0.19]" + }, + { + "name": "Microsoft.WindowsDesktop.App.Runtime.win-x64", + "version": "[8.0.19, 8.0.19]" + } + ], + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + }, + "Microsoft.WindowsDesktop.App.WindowsForms": { + "privateAssets": "none" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" + } + }, + "runtimes": { + "win-x64": { + "#import": [] + } + } + } + } } \ No newline at end of file diff --git a/backend/SignalRTest/obj/publish/win-x64/SignalRTest.csproj.nuget.g.props b/backend/SignalRTest/obj/publish/win-x64/SignalRTest.csproj.nuget.g.props index bbece53..f334f1b 100644 --- a/backend/SignalRTest/obj/publish/win-x64/SignalRTest.csproj.nuget.g.props +++ b/backend/SignalRTest/obj/publish/win-x64/SignalRTest.csproj.nuget.g.props @@ -1,22 +1,22 @@ - - - - True - NuGet - $(MSBuildThisFileDirectory)project.assets.json - $(UserProfile)\.nuget\packages\ - C:\Users\nanxun\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages - PackageReference - 6.14.1 - - - - - - - - - - C:\Users\nanxun\.nuget\packages\microsoft.net.illink.tasks\8.0.19 - + + + + True + NuGet + $(MSBuildThisFileDirectory)project.assets.json + $(UserProfile)\.nuget\packages\ + C:\Users\nanxun\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages + PackageReference + 6.14.1 + + + + + + + + + + C:\Users\nanxun\.nuget\packages\microsoft.net.illink.tasks\8.0.19 + \ No newline at end of file diff --git a/backend/SignalRTest/obj/publish/win-x64/SignalRTest.csproj.nuget.g.targets b/backend/SignalRTest/obj/publish/win-x64/SignalRTest.csproj.nuget.g.targets index 1437cbf..9952526 100644 --- a/backend/SignalRTest/obj/publish/win-x64/SignalRTest.csproj.nuget.g.targets +++ b/backend/SignalRTest/obj/publish/win-x64/SignalRTest.csproj.nuget.g.targets @@ -1,8 +1,8 @@ - - - - - - - + + + + + + + \ No newline at end of file diff --git a/backend/SignalRTest/obj/publish/win-x64/project.assets.json b/backend/SignalRTest/obj/publish/win-x64/project.assets.json index 7f748c3..0f23a50 100644 --- a/backend/SignalRTest/obj/publish/win-x64/project.assets.json +++ b/backend/SignalRTest/obj/publish/win-x64/project.assets.json @@ -1,1624 +1,1624 @@ -{ - "version": 3, - "targets": { - "net8.0-windows7.0": { - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "10.0.0", - "Microsoft.Extensions.Features": "10.0.0", - "System.IO.Pipelines": "10.0.0" - }, - "compile": { - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Net.ServerSentEvents": "10.0.0" - }, - "compile": { - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", - "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0", - "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", - "Microsoft.Bcl.TimeProvider": "10.0.0", - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging": "10.0.0", - "System.Threading.Channels": "10.0.0" - }, - "compile": { - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "type": "package", - "compile": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.Features/10.0.0": { - "type": "package", - "compile": { - "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Extensions.Logging/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "System.Diagnostics.DiagnosticSource": "10.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {} - } - }, - "Microsoft.Extensions.Options/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "Microsoft.Extensions.Primitives": "10.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/Microsoft.Extensions.Options.targets": {} - } - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.NET.ILLink.Tasks/8.0.19": { - "type": "package", - "build": { - "build/Microsoft.NET.ILLink.Tasks.props": {} - } - }, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.IO.Pipelines/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.IO.Pipelines.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.IO.Pipelines.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.Net.ServerSentEvents/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Net.ServerSentEvents.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Net.ServerSentEvents.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.Text.Encodings.Web/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - }, - "runtimeTargets": { - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { - "assetType": "runtime", - "rid": "browser" - } - } - }, - "System.Text.Json/10.0.0": { - "type": "package", - "dependencies": { - "System.IO.Pipelines": "10.0.0", - "System.Text.Encodings.Web": "10.0.0" - }, - "compile": { - "lib/net8.0/System.Text.Json.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Text.Json.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/System.Text.Json.targets": {} - } - }, - "System.Threading.Channels/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Threading.Channels.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Threading.Channels.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - } - }, - "net8.0-windows7.0/win-x64": { - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Bcl.AsyncInterfaces": "10.0.0", - "Microsoft.Extensions.Features": "10.0.0", - "System.IO.Pipelines": "10.0.0" - }, - "compile": { - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Net.ServerSentEvents": "10.0.0" - }, - "compile": { - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", - "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0", - "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", - "Microsoft.Bcl.TimeProvider": "10.0.0", - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging": "10.0.0", - "System.Threading.Channels": "10.0.0" - }, - "compile": { - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0", - "System.Text.Json": "10.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { - "related": ".xml" - } - } - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.AspNetCore.SignalR.Common": "10.0.0" - }, - "compile": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "type": "package", - "compile": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.Features/10.0.0": { - "type": "package", - "compile": { - "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { - "related": ".xml" - } - } - }, - "Microsoft.Extensions.Logging/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection": "10.0.0", - "Microsoft.Extensions.Logging.Abstractions": "10.0.0", - "Microsoft.Extensions.Options": "10.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "System.Diagnostics.DiagnosticSource": "10.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {} - } - }, - "Microsoft.Extensions.Options/10.0.0": { - "type": "package", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", - "Microsoft.Extensions.Primitives": "10.0.0" - }, - "compile": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Options.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/Microsoft.Extensions.Options.targets": {} - } - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/Microsoft.Extensions.Primitives.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "Microsoft.NET.ILLink.Tasks/8.0.19": { - "type": "package", - "build": { - "build/Microsoft.NET.ILLink.Tasks.props": {} - } - }, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.IO.Pipelines/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.IO.Pipelines.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.IO.Pipelines.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.Net.ServerSentEvents/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Net.ServerSentEvents.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Net.ServerSentEvents.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.Text.Encodings.Web/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Text.Encodings.Web.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - }, - "System.Text.Json/10.0.0": { - "type": "package", - "dependencies": { - "System.IO.Pipelines": "10.0.0", - "System.Text.Encodings.Web": "10.0.0" - }, - "compile": { - "lib/net8.0/System.Text.Json.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Text.Json.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/System.Text.Json.targets": {} - } - }, - "System.Threading.Channels/10.0.0": { - "type": "package", - "compile": { - "lib/net8.0/System.Threading.Channels.dll": { - "related": ".xml" - } - }, - "runtime": { - "lib/net8.0/System.Threading.Channels.dll": { - "related": ".xml" - } - }, - "build": { - "buildTransitive/net8.0/_._": {} - } - } - } - }, - "libraries": { - "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { - "sha512": "MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", - "type": "package", - "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.Connections.Abstractions.dll", - "lib/net10.0/Microsoft.AspNetCore.Connections.Abstractions.xml", - "lib/net462/Microsoft.AspNetCore.Connections.Abstractions.dll", - "lib/net462/Microsoft.AspNetCore.Connections.Abstractions.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.xml", - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll", - "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.xml", - "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.connections.abstractions.nuspec" - ] - }, - "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { - "sha512": "7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", - "type": "package", - "path": "microsoft.aspnetcore.http.connections.client/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Client.dll", - "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Client.xml", - "lib/net462/Microsoft.AspNetCore.Http.Connections.Client.dll", - "lib/net462/Microsoft.AspNetCore.Http.Connections.Client.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Client.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Client.xml", - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll", - "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.xml", - "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.http.connections.client.nuspec" - ] - }, - "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { - "sha512": "VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", - "type": "package", - "path": "microsoft.aspnetcore.http.connections.common/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Common.dll", - "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Common.xml", - "lib/net462/Microsoft.AspNetCore.Http.Connections.Common.dll", - "lib/net462/Microsoft.AspNetCore.Http.Connections.Common.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.xml", - "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.http.connections.common.nuspec" - ] - }, - "Microsoft.AspNetCore.SignalR.Client/10.0.0": { - "sha512": "XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", - "type": "package", - "path": "microsoft.aspnetcore.signalr.client/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.dll", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.xml", - "lib/net462/Microsoft.AspNetCore.SignalR.Client.dll", - "lib/net462/Microsoft.AspNetCore.SignalR.Client.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.xml", - "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.signalr.client.nuspec" - ] - }, - "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { - "sha512": "MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", - "type": "package", - "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.Core.dll", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.Core.xml", - "lib/net462/Microsoft.AspNetCore.SignalR.Client.Core.dll", - "lib/net462/Microsoft.AspNetCore.SignalR.Client.Core.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.Core.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.Core.xml", - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll", - "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.xml", - "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.signalr.client.core.nuspec" - ] - }, - "Microsoft.AspNetCore.SignalR.Common/10.0.0": { - "sha512": "pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", - "type": "package", - "path": "microsoft.aspnetcore.signalr.common/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Common.dll", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Common.xml", - "lib/net462/Microsoft.AspNetCore.SignalR.Common.dll", - "lib/net462/Microsoft.AspNetCore.SignalR.Common.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.xml", - "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.signalr.common.nuspec" - ] - }, - "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { - "sha512": "L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", - "type": "package", - "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", - "lib/net10.0/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", - "lib/net462/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", - "lib/net462/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", - "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", - "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512", - "microsoft.aspnetcore.signalr.protocols.json.nuspec" - ] - }, - "Microsoft.Bcl.AsyncInterfaces/10.0.0": { - "sha512": "vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", - "type": "package", - "path": "microsoft.bcl.asyncinterfaces/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Bcl.AsyncInterfaces.targets", - "buildTransitive/net462/_._", - "lib/net462/Microsoft.Bcl.AsyncInterfaces.dll", - "lib/net462/Microsoft.Bcl.AsyncInterfaces.xml", - "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll", - "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml", - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll", - "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml", - "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512", - "microsoft.bcl.asyncinterfaces.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Bcl.TimeProvider/10.0.0": { - "sha512": "bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", - "type": "package", - "path": "microsoft.bcl.timeprovider/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Bcl.TimeProvider.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Bcl.TimeProvider.targets", - "lib/net462/Microsoft.Bcl.TimeProvider.dll", - "lib/net462/Microsoft.Bcl.TimeProvider.xml", - "lib/net8.0/Microsoft.Bcl.TimeProvider.dll", - "lib/net8.0/Microsoft.Bcl.TimeProvider.xml", - "lib/netstandard2.0/Microsoft.Bcl.TimeProvider.dll", - "lib/netstandard2.0/Microsoft.Bcl.TimeProvider.xml", - "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512", - "microsoft.bcl.timeprovider.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.DependencyInjection/10.0.0": { - "sha512": "f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", - "type": "package", - "path": "microsoft.extensions.dependencyinjection/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets", - "lib/net10.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/net10.0/Microsoft.Extensions.DependencyInjection.xml", - "lib/net462/Microsoft.Extensions.DependencyInjection.dll", - "lib/net462/Microsoft.Extensions.DependencyInjection.xml", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml", - "lib/net9.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/net9.0/Microsoft.Extensions.DependencyInjection.xml", - "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll", - "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml", - "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll", - "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml", - "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512", - "microsoft.extensions.dependencyinjection.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { - "sha512": "L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", - "type": "package", - "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets", - "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", - "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", - "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.10.0.0.nupkg.sha512", - "microsoft.extensions.dependencyinjection.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Features/10.0.0": { - "sha512": "kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", - "type": "package", - "path": "microsoft.extensions.features/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "lib/net10.0/Microsoft.Extensions.Features.dll", - "lib/net10.0/Microsoft.Extensions.Features.xml", - "lib/net462/Microsoft.Extensions.Features.dll", - "lib/net462/Microsoft.Extensions.Features.xml", - "lib/netstandard2.0/Microsoft.Extensions.Features.dll", - "lib/netstandard2.0/Microsoft.Extensions.Features.xml", - "microsoft.extensions.features.10.0.0.nupkg.sha512", - "microsoft.extensions.features.nuspec" - ] - }, - "Microsoft.Extensions.Logging/10.0.0": { - "sha512": "BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", - "type": "package", - "path": "microsoft.extensions.logging/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.Logging.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets", - "lib/net10.0/Microsoft.Extensions.Logging.dll", - "lib/net10.0/Microsoft.Extensions.Logging.xml", - "lib/net462/Microsoft.Extensions.Logging.dll", - "lib/net462/Microsoft.Extensions.Logging.xml", - "lib/net8.0/Microsoft.Extensions.Logging.dll", - "lib/net8.0/Microsoft.Extensions.Logging.xml", - "lib/net9.0/Microsoft.Extensions.Logging.dll", - "lib/net9.0/Microsoft.Extensions.Logging.xml", - "lib/netstandard2.0/Microsoft.Extensions.Logging.dll", - "lib/netstandard2.0/Microsoft.Extensions.Logging.xml", - "lib/netstandard2.1/Microsoft.Extensions.Logging.dll", - "lib/netstandard2.1/Microsoft.Extensions.Logging.xml", - "microsoft.extensions.logging.10.0.0.nupkg.sha512", - "microsoft.extensions.logging.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Logging.Abstractions/10.0.0": { - "sha512": "FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", - "type": "package", - "path": "microsoft.extensions.logging.abstractions/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll", - "analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll", - "analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll", - "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", - "buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets", - "buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets", - "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets", - "buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets", - "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.dll", - "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.xml", - "lib/net462/Microsoft.Extensions.Logging.Abstractions.dll", - "lib/net462/Microsoft.Extensions.Logging.Abstractions.xml", - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll", - "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml", - "lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll", - "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.10.0.0.nupkg.sha512", - "microsoft.extensions.logging.abstractions.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Options/10.0.0": { - "sha512": "8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", - "type": "package", - "path": "microsoft.extensions.options/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Options.SourceGeneration.dll", - "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Options.SourceGeneration.resources.dll", - "buildTransitive/net461/Microsoft.Extensions.Options.targets", - "buildTransitive/net462/Microsoft.Extensions.Options.targets", - "buildTransitive/net8.0/Microsoft.Extensions.Options.targets", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Options.targets", - "buildTransitive/netstandard2.0/Microsoft.Extensions.Options.targets", - "lib/net10.0/Microsoft.Extensions.Options.dll", - "lib/net10.0/Microsoft.Extensions.Options.xml", - "lib/net462/Microsoft.Extensions.Options.dll", - "lib/net462/Microsoft.Extensions.Options.xml", - "lib/net8.0/Microsoft.Extensions.Options.dll", - "lib/net8.0/Microsoft.Extensions.Options.xml", - "lib/net9.0/Microsoft.Extensions.Options.dll", - "lib/net9.0/Microsoft.Extensions.Options.xml", - "lib/netstandard2.0/Microsoft.Extensions.Options.dll", - "lib/netstandard2.0/Microsoft.Extensions.Options.xml", - "lib/netstandard2.1/Microsoft.Extensions.Options.dll", - "lib/netstandard2.1/Microsoft.Extensions.Options.xml", - "microsoft.extensions.options.10.0.0.nupkg.sha512", - "microsoft.extensions.options.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.Extensions.Primitives/10.0.0": { - "sha512": "inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", - "type": "package", - "path": "microsoft.extensions.primitives/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/Microsoft.Extensions.Primitives.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets", - "lib/net10.0/Microsoft.Extensions.Primitives.dll", - "lib/net10.0/Microsoft.Extensions.Primitives.xml", - "lib/net462/Microsoft.Extensions.Primitives.dll", - "lib/net462/Microsoft.Extensions.Primitives.xml", - "lib/net8.0/Microsoft.Extensions.Primitives.dll", - "lib/net8.0/Microsoft.Extensions.Primitives.xml", - "lib/net9.0/Microsoft.Extensions.Primitives.dll", - "lib/net9.0/Microsoft.Extensions.Primitives.xml", - "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll", - "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml", - "microsoft.extensions.primitives.10.0.0.nupkg.sha512", - "microsoft.extensions.primitives.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "Microsoft.NET.ILLink.Tasks/8.0.19": { - "sha512": "IhHf+zeZiaE5EXRyxILd4qM+Hj9cxV3sa8MpzZgeEhpvaG3a1VEGF6UCaPFLO44Kua3JkLKluE0SWVamS50PlA==", - "type": "package", - "path": "microsoft.net.illink.tasks/8.0.19", - "hasTools": true, - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "LICENSE.TXT", - "Sdk/Sdk.props", - "THIRD-PARTY-NOTICES.TXT", - "analyzers/dotnet/cs/ILLink.CodeFixProvider.dll", - "analyzers/dotnet/cs/ILLink.RoslynAnalyzer.dll", - "build/Microsoft.NET.ILLink.Analyzers.props", - "build/Microsoft.NET.ILLink.Tasks.props", - "build/Microsoft.NET.ILLink.targets", - "microsoft.net.illink.tasks.8.0.19.nupkg.sha512", - "microsoft.net.illink.tasks.nuspec", - "tools/net472/ILLink.Tasks.dll", - "tools/net472/ILLink.Tasks.dll.config", - "tools/net472/Mono.Cecil.Mdb.dll", - "tools/net472/Mono.Cecil.Pdb.dll", - "tools/net472/Mono.Cecil.Rocks.dll", - "tools/net472/Mono.Cecil.dll", - "tools/net472/Sdk/Sdk.props", - "tools/net472/System.Buffers.dll", - "tools/net472/System.Collections.Immutable.dll", - "tools/net472/System.Memory.dll", - "tools/net472/System.Numerics.Vectors.dll", - "tools/net472/System.Reflection.Metadata.dll", - "tools/net472/System.Runtime.CompilerServices.Unsafe.dll", - "tools/net472/build/Microsoft.NET.ILLink.Analyzers.props", - "tools/net472/build/Microsoft.NET.ILLink.Tasks.props", - "tools/net472/build/Microsoft.NET.ILLink.targets", - "tools/net8.0/ILLink.Tasks.deps.json", - "tools/net8.0/ILLink.Tasks.dll", - "tools/net8.0/Mono.Cecil.Mdb.dll", - "tools/net8.0/Mono.Cecil.Pdb.dll", - "tools/net8.0/Mono.Cecil.Rocks.dll", - "tools/net8.0/Mono.Cecil.dll", - "tools/net8.0/Sdk/Sdk.props", - "tools/net8.0/build/Microsoft.NET.ILLink.Analyzers.props", - "tools/net8.0/build/Microsoft.NET.ILLink.Tasks.props", - "tools/net8.0/build/Microsoft.NET.ILLink.targets", - "tools/net8.0/illink.deps.json", - "tools/net8.0/illink.dll", - "tools/net8.0/illink.runtimeconfig.json", - "useSharedDesignerContext.txt" - ] - }, - "System.Diagnostics.DiagnosticSource/10.0.0": { - "sha512": "0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", - "type": "package", - "path": "system.diagnostics.diagnosticsource/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Diagnostics.DiagnosticSource.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.Diagnostics.DiagnosticSource.targets", - "lib/net10.0/System.Diagnostics.DiagnosticSource.dll", - "lib/net10.0/System.Diagnostics.DiagnosticSource.xml", - "lib/net462/System.Diagnostics.DiagnosticSource.dll", - "lib/net462/System.Diagnostics.DiagnosticSource.xml", - "lib/net8.0/System.Diagnostics.DiagnosticSource.dll", - "lib/net8.0/System.Diagnostics.DiagnosticSource.xml", - "lib/net9.0/System.Diagnostics.DiagnosticSource.dll", - "lib/net9.0/System.Diagnostics.DiagnosticSource.xml", - "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.dll", - "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.xml", - "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512", - "system.diagnostics.diagnosticsource.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.IO.Pipelines/10.0.0": { - "sha512": "M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", - "type": "package", - "path": "system.io.pipelines/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.IO.Pipelines.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.IO.Pipelines.targets", - "lib/net10.0/System.IO.Pipelines.dll", - "lib/net10.0/System.IO.Pipelines.xml", - "lib/net462/System.IO.Pipelines.dll", - "lib/net462/System.IO.Pipelines.xml", - "lib/net8.0/System.IO.Pipelines.dll", - "lib/net8.0/System.IO.Pipelines.xml", - "lib/net9.0/System.IO.Pipelines.dll", - "lib/net9.0/System.IO.Pipelines.xml", - "lib/netstandard2.0/System.IO.Pipelines.dll", - "lib/netstandard2.0/System.IO.Pipelines.xml", - "system.io.pipelines.10.0.0.nupkg.sha512", - "system.io.pipelines.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Net.ServerSentEvents/10.0.0": { - "sha512": "zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", - "type": "package", - "path": "system.net.serversentevents/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Net.ServerSentEvents.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.Net.ServerSentEvents.targets", - "lib/net10.0/System.Net.ServerSentEvents.dll", - "lib/net10.0/System.Net.ServerSentEvents.xml", - "lib/net462/System.Net.ServerSentEvents.dll", - "lib/net462/System.Net.ServerSentEvents.xml", - "lib/net8.0/System.Net.ServerSentEvents.dll", - "lib/net8.0/System.Net.ServerSentEvents.xml", - "lib/net9.0/System.Net.ServerSentEvents.dll", - "lib/net9.0/System.Net.ServerSentEvents.xml", - "lib/netstandard2.0/System.Net.ServerSentEvents.dll", - "lib/netstandard2.0/System.Net.ServerSentEvents.xml", - "system.net.serversentevents.10.0.0.nupkg.sha512", - "system.net.serversentevents.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Text.Encodings.Web/10.0.0": { - "sha512": "257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", - "type": "package", - "path": "system.text.encodings.web/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Text.Encodings.Web.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.Text.Encodings.Web.targets", - "lib/net10.0/System.Text.Encodings.Web.dll", - "lib/net10.0/System.Text.Encodings.Web.xml", - "lib/net462/System.Text.Encodings.Web.dll", - "lib/net462/System.Text.Encodings.Web.xml", - "lib/net8.0/System.Text.Encodings.Web.dll", - "lib/net8.0/System.Text.Encodings.Web.xml", - "lib/net9.0/System.Text.Encodings.Web.dll", - "lib/net9.0/System.Text.Encodings.Web.xml", - "lib/netstandard2.0/System.Text.Encodings.Web.dll", - "lib/netstandard2.0/System.Text.Encodings.Web.xml", - "runtimes/browser/lib/net10.0/System.Text.Encodings.Web.dll", - "runtimes/browser/lib/net10.0/System.Text.Encodings.Web.xml", - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll", - "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.xml", - "runtimes/wasi/lib/net10.0/System.Text.Encodings.Web.dll", - "runtimes/wasi/lib/net10.0/System.Text.Encodings.Web.xml", - "runtimes/win/lib/net9.0/System.Text.Encodings.Web.dll", - "runtimes/win/lib/net9.0/System.Text.Encodings.Web.xml", - "system.text.encodings.web.10.0.0.nupkg.sha512", - "system.text.encodings.web.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Text.Json/10.0.0": { - "sha512": "1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", - "type": "package", - "path": "system.text.json/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "analyzers/dotnet/roslyn3.11/cs/System.Text.Json.SourceGeneration.dll", - "analyzers/dotnet/roslyn3.11/cs/cs/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/de/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/es/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/fr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/it/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ja/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ko/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/pl/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/ru/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/tr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn3.11/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/System.Text.Json.SourceGeneration.dll", - "analyzers/dotnet/roslyn4.0/cs/cs/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/de/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/es/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/fr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/it/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ja/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ko/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/pl/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/ru/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/tr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.0/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/System.Text.Json.SourceGeneration.dll", - "analyzers/dotnet/roslyn4.4/cs/cs/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/de/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/es/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/fr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/it/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ja/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ko/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pl/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/ru/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/tr/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", - "analyzers/dotnet/roslyn4.4/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", - "buildTransitive/net461/System.Text.Json.targets", - "buildTransitive/net462/System.Text.Json.targets", - "buildTransitive/net8.0/System.Text.Json.targets", - "buildTransitive/netcoreapp2.0/System.Text.Json.targets", - "buildTransitive/netstandard2.0/System.Text.Json.targets", - "lib/net10.0/System.Text.Json.dll", - "lib/net10.0/System.Text.Json.xml", - "lib/net462/System.Text.Json.dll", - "lib/net462/System.Text.Json.xml", - "lib/net8.0/System.Text.Json.dll", - "lib/net8.0/System.Text.Json.xml", - "lib/net9.0/System.Text.Json.dll", - "lib/net9.0/System.Text.Json.xml", - "lib/netstandard2.0/System.Text.Json.dll", - "lib/netstandard2.0/System.Text.Json.xml", - "system.text.json.10.0.0.nupkg.sha512", - "system.text.json.nuspec", - "useSharedDesignerContext.txt" - ] - }, - "System.Threading.Channels/10.0.0": { - "sha512": "fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", - "type": "package", - "path": "system.threading.channels/10.0.0", - "files": [ - ".nupkg.metadata", - ".signature.p7s", - "Icon.png", - "PACKAGE.md", - "THIRD-PARTY-NOTICES.TXT", - "buildTransitive/net461/System.Threading.Channels.targets", - "buildTransitive/net462/_._", - "buildTransitive/net8.0/_._", - "buildTransitive/netcoreapp2.0/System.Threading.Channels.targets", - "lib/net10.0/System.Threading.Channels.dll", - "lib/net10.0/System.Threading.Channels.xml", - "lib/net462/System.Threading.Channels.dll", - "lib/net462/System.Threading.Channels.xml", - "lib/net8.0/System.Threading.Channels.dll", - "lib/net8.0/System.Threading.Channels.xml", - "lib/net9.0/System.Threading.Channels.dll", - "lib/net9.0/System.Threading.Channels.xml", - "lib/netstandard2.0/System.Threading.Channels.dll", - "lib/netstandard2.0/System.Threading.Channels.xml", - "lib/netstandard2.1/System.Threading.Channels.dll", - "lib/netstandard2.1/System.Threading.Channels.xml", - "system.threading.channels.10.0.0.nupkg.sha512", - "system.threading.channels.nuspec", - "useSharedDesignerContext.txt" - ] - } - }, - "projectFileDependencyGroups": { - "net8.0-windows7.0": [ - "Microsoft.AspNetCore.SignalR.Client >= 10.0.0", - "Microsoft.NET.ILLink.Tasks >= 8.0.19" - ] - }, - "packageFolders": { - "C:\\Users\\nanxun\\.nuget\\packages\\": {}, - "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {} - }, - "project": { - "version": "1.0.0", - "restore": { - "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", - "projectName": "SignalRTest", - "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", - "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", - "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\obj\\publish\\win-x64\\", - "projectStyle": "PackageReference", - "fallbackFolders": [ - "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" - ], - "configFilePaths": [ - "C:\\Users\\nanxun\\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" - ], - "originalTargetFrameworks": [ - "net8.0-windows" - ], - "sources": { - "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, - "C:\\Program Files\\dotnet\\library-packs": {}, - "https://api.nuget.org/v3/index.json": {} - }, - "frameworks": { - "net8.0-windows7.0": { - "targetAlias": "net8.0-windows", - "projectReferences": {} - } - }, - "warningProperties": { - "warnAsError": [ - "NU1605" - ] - }, - "restoreAuditProperties": { - "enableAudit": "true", - "auditLevel": "low", - "auditMode": "direct" - }, - "SdkAnalysisLevel": "9.0.300" - }, - "frameworks": { - "net8.0-windows7.0": { - "targetAlias": "net8.0-windows", - "dependencies": { - "Microsoft.AspNetCore.SignalR.Client": { - "target": "Package", - "version": "[10.0.0, )" - }, - "Microsoft.NET.ILLink.Tasks": { - "suppressParent": "All", - "target": "Package", - "version": "[8.0.19, )", - "autoReferenced": true - } - }, - "imports": [ - "net461", - "net462", - "net47", - "net471", - "net472", - "net48", - "net481" - ], - "assetTargetFallback": true, - "warn": true, - "downloadDependencies": [ - { - "name": "Microsoft.AspNetCore.App.Runtime.win-x64", - "version": "[8.0.19, 8.0.19]" - }, - { - "name": "Microsoft.NETCore.App.Runtime.win-x64", - "version": "[8.0.19, 8.0.19]" - }, - { - "name": "Microsoft.WindowsDesktop.App.Runtime.win-x64", - "version": "[8.0.19, 8.0.19]" - } - ], - "frameworkReferences": { - "Microsoft.NETCore.App": { - "privateAssets": "all" - }, - "Microsoft.WindowsDesktop.App.WindowsForms": { - "privateAssets": "none" - } - }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" - } - }, - "runtimes": { - "win-x64": { - "#import": [] - } - } - } +{ + "version": 3, + "targets": { + "net8.0-windows7.0": { + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Bcl.AsyncInterfaces": "10.0.0", + "Microsoft.Extensions.Features": "10.0.0", + "System.IO.Pipelines": "10.0.0" + }, + "compile": { + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Net.ServerSentEvents": "10.0.0" + }, + "compile": { + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", + "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0", + "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", + "Microsoft.Bcl.TimeProvider": "10.0.0", + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging": "10.0.0", + "System.Threading.Channels": "10.0.0" + }, + "compile": { + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "type": "package", + "compile": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.Features/10.0.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.Logging/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "System.Diagnostics.DiagnosticSource": "10.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {} + } + }, + "Microsoft.Extensions.Options/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "Microsoft.Extensions.Primitives": "10.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.Extensions.Options.targets": {} + } + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.NET.ILLink.Tasks/8.0.19": { + "type": "package", + "build": { + "build/Microsoft.NET.ILLink.Tasks.props": {} + } + }, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.IO.Pipelines/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.Net.ServerSentEvents/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Net.ServerSentEvents.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Net.ServerSentEvents.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.Text.Encodings.Web/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + }, + "runtimeTargets": { + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": { + "assetType": "runtime", + "rid": "browser" + } + } + }, + "System.Text.Json/10.0.0": { + "type": "package", + "dependencies": { + "System.IO.Pipelines": "10.0.0", + "System.Text.Encodings.Web": "10.0.0" + }, + "compile": { + "lib/net8.0/System.Text.Json.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Text.Json.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/System.Text.Json.targets": {} + } + }, + "System.Threading.Channels/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Threading.Channels.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Threading.Channels.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + } + }, + "net8.0-windows7.0/win-x64": { + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Bcl.AsyncInterfaces": "10.0.0", + "Microsoft.Extensions.Features": "10.0.0", + "System.IO.Pipelines": "10.0.0" + }, + "compile": { + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Common": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Net.ServerSentEvents": "10.0.0" + }, + "compile": { + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Connections.Client": "10.0.0", + "Microsoft.AspNetCore.SignalR.Client.Core": "10.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0", + "Microsoft.AspNetCore.SignalR.Protocols.Json": "10.0.0", + "Microsoft.Bcl.TimeProvider": "10.0.0", + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging": "10.0.0", + "System.Threading.Channels": "10.0.0" + }, + "compile": { + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0", + "System.Text.Json": "10.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll": { + "related": ".xml" + } + } + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "10.0.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "type": "package", + "compile": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Bcl.TimeProvider.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.Features/10.0.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Features.dll": { + "related": ".xml" + } + } + }, + "Microsoft.Extensions.Logging/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "10.0.0", + "Microsoft.Extensions.Logging.Abstractions": "10.0.0", + "Microsoft.Extensions.Options": "10.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "System.Diagnostics.DiagnosticSource": "10.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {} + } + }, + "Microsoft.Extensions.Options/10.0.0": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0", + "Microsoft.Extensions.Primitives": "10.0.0" + }, + "compile": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Options.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/Microsoft.Extensions.Options.targets": {} + } + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/Microsoft.Extensions.Primitives.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "Microsoft.NET.ILLink.Tasks/8.0.19": { + "type": "package", + "build": { + "build/Microsoft.NET.ILLink.Tasks.props": {} + } + }, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.IO.Pipelines/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.IO.Pipelines.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.Net.ServerSentEvents/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Net.ServerSentEvents.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Net.ServerSentEvents.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.Text.Encodings.Web/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Text.Encodings.Web.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + }, + "System.Text.Json/10.0.0": { + "type": "package", + "dependencies": { + "System.IO.Pipelines": "10.0.0", + "System.Text.Encodings.Web": "10.0.0" + }, + "compile": { + "lib/net8.0/System.Text.Json.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Text.Json.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/System.Text.Json.targets": {} + } + }, + "System.Threading.Channels/10.0.0": { + "type": "package", + "compile": { + "lib/net8.0/System.Threading.Channels.dll": { + "related": ".xml" + } + }, + "runtime": { + "lib/net8.0/System.Threading.Channels.dll": { + "related": ".xml" + } + }, + "build": { + "buildTransitive/net8.0/_._": {} + } + } + } + }, + "libraries": { + "Microsoft.AspNetCore.Connections.Abstractions/10.0.0": { + "sha512": "MPXDzUknemj+sCL/LYOLvU/qIX3o9zCJtKXu9jcwNMQiOvwuv75lV20p3qGENA/ynTH7hOPFqDUEGBT30IvhEA==", + "type": "package", + "path": "microsoft.aspnetcore.connections.abstractions/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.Connections.Abstractions.dll", + "lib/net10.0/Microsoft.AspNetCore.Connections.Abstractions.xml", + "lib/net462/Microsoft.AspNetCore.Connections.Abstractions.dll", + "lib/net462/Microsoft.AspNetCore.Connections.Abstractions.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.xml", + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.dll", + "lib/netstandard2.1/Microsoft.AspNetCore.Connections.Abstractions.xml", + "microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.connections.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Connections.Client/10.0.0": { + "sha512": "7nSER+de0V6mWTcdUqBJZlm1XMz+Y2mTHzL3B/msVF+JfSXXZtKNVC18TI7AeSz4PD//b5qpy8n0RQEIVByfJw==", + "type": "package", + "path": "microsoft.aspnetcore.http.connections.client/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Client.dll", + "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Client.xml", + "lib/net462/Microsoft.AspNetCore.Http.Connections.Client.dll", + "lib/net462/Microsoft.AspNetCore.Http.Connections.Client.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Client.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Client.xml", + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.dll", + "lib/netstandard2.1/Microsoft.AspNetCore.Http.Connections.Client.xml", + "microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.http.connections.client.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Connections.Common/10.0.0": { + "sha512": "VaEGwazymaL4NB+JoAdvM/IaFg5IIg1WXtVgKmD/y3Et2qnPxolAlMXYJrI8k1EPjmoIcXQZHTj47MskRRyRIA==", + "type": "package", + "path": "microsoft.aspnetcore.http.connections.common/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Common.dll", + "lib/net10.0/Microsoft.AspNetCore.Http.Connections.Common.xml", + "lib/net462/Microsoft.AspNetCore.Http.Connections.Common.dll", + "lib/net462/Microsoft.AspNetCore.Http.Connections.Common.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.xml", + "microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.http.connections.common.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Client/10.0.0": { + "sha512": "XHPNPLqPX7CVJ5JuaumTP58sAVrQG4TqFKLFOtN1mZIwgEUHKwtDeMwL0G8dIvy9zcpi7os4CYAHvA1bUUTzVw==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.client/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.dll", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.xml", + "lib/net462/Microsoft.AspNetCore.SignalR.Client.dll", + "lib/net462/Microsoft.AspNetCore.SignalR.Client.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.xml", + "microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.signalr.client.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Client.Core/10.0.0": { + "sha512": "MrXjT7YNV0e1Jb3Hai6kX/Ot7X2SlONHv5IC5XNGeycTTLu3qitJ7DXZUsPPZs6yanWIOsIKjPEY58ARHdRKGg==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.client.core/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.Core.dll", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Client.Core.xml", + "lib/net462/Microsoft.AspNetCore.SignalR.Client.Core.dll", + "lib/net462/Microsoft.AspNetCore.SignalR.Client.Core.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.Core.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Client.Core.xml", + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.dll", + "lib/netstandard2.1/Microsoft.AspNetCore.SignalR.Client.Core.xml", + "microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.signalr.client.core.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Common/10.0.0": { + "sha512": "pyG6FLV4/EeOQeZ30ra4aUYycJQPT/9ddB91aplMKwEGT5KbEs//WMqMObVGvDREP508EB4QUAKzacSVi30nxw==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.common/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Common.dll", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Common.xml", + "lib/net462/Microsoft.AspNetCore.SignalR.Common.dll", + "lib/net462/Microsoft.AspNetCore.SignalR.Common.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.xml", + "microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.signalr.common.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/10.0.0": { + "sha512": "L++SCI4pcG9uo7HTzAFTX33BsZFDHCdukJIK+/S4tgH/kcJlPTp9QS96E4zgOuzXRDrzaunwbFSS2DElTmWGRA==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.protocols.json/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", + "lib/net10.0/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", + "lib/net462/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", + "lib/net462/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", + "microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512", + "microsoft.aspnetcore.signalr.protocols.json.nuspec" + ] + }, + "Microsoft.Bcl.AsyncInterfaces/10.0.0": { + "sha512": "vFuwSLj9QJBbNR0NeNO4YVASUbokxs+i/xbuu8B+Fs4FAZg5QaFa6eGrMaRqTzzNI5tAb97T7BhSxtLckFyiRA==", + "type": "package", + "path": "microsoft.bcl.asyncinterfaces/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Bcl.AsyncInterfaces.targets", + "buildTransitive/net462/_._", + "lib/net462/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/net462/Microsoft.Bcl.AsyncInterfaces.xml", + "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml", + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll", + "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml", + "microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512", + "microsoft.bcl.asyncinterfaces.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Bcl.TimeProvider/10.0.0": { + "sha512": "bUubrBD6tRJE3V1kvRloYc6NymH3R5oFKjAS9e0ELNx6u0ZR+zjps9dDQyjgqN/rArzl7f+21KGszj3YRN7F2Q==", + "type": "package", + "path": "microsoft.bcl.timeprovider/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Bcl.TimeProvider.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Bcl.TimeProvider.targets", + "lib/net462/Microsoft.Bcl.TimeProvider.dll", + "lib/net462/Microsoft.Bcl.TimeProvider.xml", + "lib/net8.0/Microsoft.Bcl.TimeProvider.dll", + "lib/net8.0/Microsoft.Bcl.TimeProvider.xml", + "lib/netstandard2.0/Microsoft.Bcl.TimeProvider.dll", + "lib/netstandard2.0/Microsoft.Bcl.TimeProvider.xml", + "microsoft.bcl.timeprovider.10.0.0.nupkg.sha512", + "microsoft.bcl.timeprovider.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection/10.0.0": { + "sha512": "f0RBabswJq+gRu5a+hWIobrLWiUYPKMhCD9WO3sYBAdSy3FFH14LMvLVFZc2kPSCimBLxSuitUhsd6tb0TAY6A==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets", + "lib/net10.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net10.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net462/Microsoft.Extensions.DependencyInjection.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/net9.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/net9.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml", + "microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512", + "microsoft.extensions.dependencyinjection.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": { + "sha512": "L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets", + "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "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.10.0.0.nupkg.sha512", + "microsoft.extensions.dependencyinjection.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Features/10.0.0": { + "sha512": "kCFjPpfvz0K00xIpe7wJKre1gFJdNIu9+1BYJLklu3GWb+uU4HIjza0uMBQeFGZws9VJos9LeO+PUfvGcre+9g==", + "type": "package", + "path": "microsoft.extensions.features/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "lib/net10.0/Microsoft.Extensions.Features.dll", + "lib/net10.0/Microsoft.Extensions.Features.xml", + "lib/net462/Microsoft.Extensions.Features.dll", + "lib/net462/Microsoft.Extensions.Features.xml", + "lib/netstandard2.0/Microsoft.Extensions.Features.dll", + "lib/netstandard2.0/Microsoft.Extensions.Features.xml", + "microsoft.extensions.features.10.0.0.nupkg.sha512", + "microsoft.extensions.features.nuspec" + ] + }, + "Microsoft.Extensions.Logging/10.0.0": { + "sha512": "BStFkd5CcnEtarlcgYDBcFzGYCuuNMzPs02wN3WBsOFoYIEmYoUdAiU+au6opzoqfTYJsMTW00AeqDdnXH2CvA==", + "type": "package", + "path": "microsoft.extensions.logging/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Logging.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets", + "lib/net10.0/Microsoft.Extensions.Logging.dll", + "lib/net10.0/Microsoft.Extensions.Logging.xml", + "lib/net462/Microsoft.Extensions.Logging.dll", + "lib/net462/Microsoft.Extensions.Logging.xml", + "lib/net8.0/Microsoft.Extensions.Logging.dll", + "lib/net8.0/Microsoft.Extensions.Logging.xml", + "lib/net9.0/Microsoft.Extensions.Logging.dll", + "lib/net9.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.0/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.xml", + "lib/netstandard2.1/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.1/Microsoft.Extensions.Logging.xml", + "microsoft.extensions.logging.10.0.0.nupkg.sha512", + "microsoft.extensions.logging.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Logging.Abstractions/10.0.0": { + "sha512": "FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==", + "type": "package", + "path": "microsoft.extensions.logging.abstractions/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets", + "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net462/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml", + "lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll", + "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.10.0.0.nupkg.sha512", + "microsoft.extensions.logging.abstractions.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Options/10.0.0": { + "sha512": "8oCAgXOow5XDrY9HaXX1QmH3ORsyZO/ANVHBlhLyCeWTH5Sg4UuqZeOTWJi6484M+LqSx0RqQXDJtdYy2BNiLQ==", + "type": "package", + "path": "microsoft.extensions.options/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Options.SourceGeneration.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Options.SourceGeneration.resources.dll", + "buildTransitive/net461/Microsoft.Extensions.Options.targets", + "buildTransitive/net462/Microsoft.Extensions.Options.targets", + "buildTransitive/net8.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Options.targets", + "buildTransitive/netstandard2.0/Microsoft.Extensions.Options.targets", + "lib/net10.0/Microsoft.Extensions.Options.dll", + "lib/net10.0/Microsoft.Extensions.Options.xml", + "lib/net462/Microsoft.Extensions.Options.dll", + "lib/net462/Microsoft.Extensions.Options.xml", + "lib/net8.0/Microsoft.Extensions.Options.dll", + "lib/net8.0/Microsoft.Extensions.Options.xml", + "lib/net9.0/Microsoft.Extensions.Options.dll", + "lib/net9.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.0/Microsoft.Extensions.Options.dll", + "lib/netstandard2.0/Microsoft.Extensions.Options.xml", + "lib/netstandard2.1/Microsoft.Extensions.Options.dll", + "lib/netstandard2.1/Microsoft.Extensions.Options.xml", + "microsoft.extensions.options.10.0.0.nupkg.sha512", + "microsoft.extensions.options.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.Extensions.Primitives/10.0.0": { + "sha512": "inRnbpCS0nwO/RuoZIAqxQUuyjaknOOnCEZB55KSMMjRhl0RQDttSmLSGsUJN3RQ3ocf5NDLFd2mOQViHqMK5w==", + "type": "package", + "path": "microsoft.extensions.primitives/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/Microsoft.Extensions.Primitives.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets", + "lib/net10.0/Microsoft.Extensions.Primitives.dll", + "lib/net10.0/Microsoft.Extensions.Primitives.xml", + "lib/net462/Microsoft.Extensions.Primitives.dll", + "lib/net462/Microsoft.Extensions.Primitives.xml", + "lib/net8.0/Microsoft.Extensions.Primitives.dll", + "lib/net8.0/Microsoft.Extensions.Primitives.xml", + "lib/net9.0/Microsoft.Extensions.Primitives.dll", + "lib/net9.0/Microsoft.Extensions.Primitives.xml", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml", + "microsoft.extensions.primitives.10.0.0.nupkg.sha512", + "microsoft.extensions.primitives.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "Microsoft.NET.ILLink.Tasks/8.0.19": { + "sha512": "IhHf+zeZiaE5EXRyxILd4qM+Hj9cxV3sa8MpzZgeEhpvaG3a1VEGF6UCaPFLO44Kua3JkLKluE0SWVamS50PlA==", + "type": "package", + "path": "microsoft.net.illink.tasks/8.0.19", + "hasTools": true, + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "Sdk/Sdk.props", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/cs/ILLink.CodeFixProvider.dll", + "analyzers/dotnet/cs/ILLink.RoslynAnalyzer.dll", + "build/Microsoft.NET.ILLink.Analyzers.props", + "build/Microsoft.NET.ILLink.Tasks.props", + "build/Microsoft.NET.ILLink.targets", + "microsoft.net.illink.tasks.8.0.19.nupkg.sha512", + "microsoft.net.illink.tasks.nuspec", + "tools/net472/ILLink.Tasks.dll", + "tools/net472/ILLink.Tasks.dll.config", + "tools/net472/Mono.Cecil.Mdb.dll", + "tools/net472/Mono.Cecil.Pdb.dll", + "tools/net472/Mono.Cecil.Rocks.dll", + "tools/net472/Mono.Cecil.dll", + "tools/net472/Sdk/Sdk.props", + "tools/net472/System.Buffers.dll", + "tools/net472/System.Collections.Immutable.dll", + "tools/net472/System.Memory.dll", + "tools/net472/System.Numerics.Vectors.dll", + "tools/net472/System.Reflection.Metadata.dll", + "tools/net472/System.Runtime.CompilerServices.Unsafe.dll", + "tools/net472/build/Microsoft.NET.ILLink.Analyzers.props", + "tools/net472/build/Microsoft.NET.ILLink.Tasks.props", + "tools/net472/build/Microsoft.NET.ILLink.targets", + "tools/net8.0/ILLink.Tasks.deps.json", + "tools/net8.0/ILLink.Tasks.dll", + "tools/net8.0/Mono.Cecil.Mdb.dll", + "tools/net8.0/Mono.Cecil.Pdb.dll", + "tools/net8.0/Mono.Cecil.Rocks.dll", + "tools/net8.0/Mono.Cecil.dll", + "tools/net8.0/Sdk/Sdk.props", + "tools/net8.0/build/Microsoft.NET.ILLink.Analyzers.props", + "tools/net8.0/build/Microsoft.NET.ILLink.Tasks.props", + "tools/net8.0/build/Microsoft.NET.ILLink.targets", + "tools/net8.0/illink.deps.json", + "tools/net8.0/illink.dll", + "tools/net8.0/illink.runtimeconfig.json", + "useSharedDesignerContext.txt" + ] + }, + "System.Diagnostics.DiagnosticSource/10.0.0": { + "sha512": "0KdBK+h7G13PuOSC2R/DalAoFMvdYMznvGRuICtkdcUMXgl/gYXsG6z4yUvTxHSMACorWgHCU1Faq0KUHU6yAQ==", + "type": "package", + "path": "system.diagnostics.diagnosticsource/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Diagnostics.DiagnosticSource.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.Diagnostics.DiagnosticSource.targets", + "lib/net10.0/System.Diagnostics.DiagnosticSource.dll", + "lib/net10.0/System.Diagnostics.DiagnosticSource.xml", + "lib/net462/System.Diagnostics.DiagnosticSource.dll", + "lib/net462/System.Diagnostics.DiagnosticSource.xml", + "lib/net8.0/System.Diagnostics.DiagnosticSource.dll", + "lib/net8.0/System.Diagnostics.DiagnosticSource.xml", + "lib/net9.0/System.Diagnostics.DiagnosticSource.dll", + "lib/net9.0/System.Diagnostics.DiagnosticSource.xml", + "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.dll", + "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.xml", + "system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512", + "system.diagnostics.diagnosticsource.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.IO.Pipelines/10.0.0": { + "sha512": "M1eb3nfXntaRJPrrMVM9EFS8I1bDTnt0uvUS6QP/SicZf/ZZjydMD5NiXxfmwW/uQwaMDP/yX2P+zQN1NBHChg==", + "type": "package", + "path": "system.io.pipelines/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.IO.Pipelines.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.IO.Pipelines.targets", + "lib/net10.0/System.IO.Pipelines.dll", + "lib/net10.0/System.IO.Pipelines.xml", + "lib/net462/System.IO.Pipelines.dll", + "lib/net462/System.IO.Pipelines.xml", + "lib/net8.0/System.IO.Pipelines.dll", + "lib/net8.0/System.IO.Pipelines.xml", + "lib/net9.0/System.IO.Pipelines.dll", + "lib/net9.0/System.IO.Pipelines.xml", + "lib/netstandard2.0/System.IO.Pipelines.dll", + "lib/netstandard2.0/System.IO.Pipelines.xml", + "system.io.pipelines.10.0.0.nupkg.sha512", + "system.io.pipelines.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Net.ServerSentEvents/10.0.0": { + "sha512": "zRH5XXZfenw7bgn8BT+q6XH1Sp75kSQM5m7Ee4WzZhMu2syGawcsqdlfFa2u/+skXr/u2ufp9F6M9lgkKkfZZg==", + "type": "package", + "path": "system.net.serversentevents/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Net.ServerSentEvents.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.Net.ServerSentEvents.targets", + "lib/net10.0/System.Net.ServerSentEvents.dll", + "lib/net10.0/System.Net.ServerSentEvents.xml", + "lib/net462/System.Net.ServerSentEvents.dll", + "lib/net462/System.Net.ServerSentEvents.xml", + "lib/net8.0/System.Net.ServerSentEvents.dll", + "lib/net8.0/System.Net.ServerSentEvents.xml", + "lib/net9.0/System.Net.ServerSentEvents.dll", + "lib/net9.0/System.Net.ServerSentEvents.xml", + "lib/netstandard2.0/System.Net.ServerSentEvents.dll", + "lib/netstandard2.0/System.Net.ServerSentEvents.xml", + "system.net.serversentevents.10.0.0.nupkg.sha512", + "system.net.serversentevents.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Text.Encodings.Web/10.0.0": { + "sha512": "257hh1ep1Gqm1Lm0ulxf7vVBVMJuGN6EL4xSWjpi46DffXzm1058IiWsfSC06zSm7SniN+Tb5160UnXsSa8rRg==", + "type": "package", + "path": "system.text.encodings.web/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Text.Encodings.Web.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.Text.Encodings.Web.targets", + "lib/net10.0/System.Text.Encodings.Web.dll", + "lib/net10.0/System.Text.Encodings.Web.xml", + "lib/net462/System.Text.Encodings.Web.dll", + "lib/net462/System.Text.Encodings.Web.xml", + "lib/net8.0/System.Text.Encodings.Web.dll", + "lib/net8.0/System.Text.Encodings.Web.xml", + "lib/net9.0/System.Text.Encodings.Web.dll", + "lib/net9.0/System.Text.Encodings.Web.xml", + "lib/netstandard2.0/System.Text.Encodings.Web.dll", + "lib/netstandard2.0/System.Text.Encodings.Web.xml", + "runtimes/browser/lib/net10.0/System.Text.Encodings.Web.dll", + "runtimes/browser/lib/net10.0/System.Text.Encodings.Web.xml", + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll", + "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.xml", + "runtimes/wasi/lib/net10.0/System.Text.Encodings.Web.dll", + "runtimes/wasi/lib/net10.0/System.Text.Encodings.Web.xml", + "runtimes/win/lib/net9.0/System.Text.Encodings.Web.dll", + "runtimes/win/lib/net9.0/System.Text.Encodings.Web.xml", + "system.text.encodings.web.10.0.0.nupkg.sha512", + "system.text.encodings.web.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Text.Json/10.0.0": { + "sha512": "1Dpjwq9peG/Wt5BNbrzIhTpclfOSqBWZsUO28vVr59yQlkvL5jLBWfpfzRmJ1OY+6DciaY0DUcltyzs4fuZHjw==", + "type": "package", + "path": "system.text.json/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "analyzers/dotnet/roslyn3.11/cs/System.Text.Json.SourceGeneration.dll", + "analyzers/dotnet/roslyn3.11/cs/cs/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/de/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/es/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/fr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/it/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ja/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ko/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pl/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/ru/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/tr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn3.11/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/System.Text.Json.SourceGeneration.dll", + "analyzers/dotnet/roslyn4.0/cs/cs/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/de/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/es/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/fr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/it/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ja/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ko/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pl/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/ru/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/tr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.0/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/System.Text.Json.SourceGeneration.dll", + "analyzers/dotnet/roslyn4.4/cs/cs/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/de/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/es/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/fr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/it/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ja/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ko/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pl/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/ru/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/tr/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll", + "analyzers/dotnet/roslyn4.4/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll", + "buildTransitive/net461/System.Text.Json.targets", + "buildTransitive/net462/System.Text.Json.targets", + "buildTransitive/net8.0/System.Text.Json.targets", + "buildTransitive/netcoreapp2.0/System.Text.Json.targets", + "buildTransitive/netstandard2.0/System.Text.Json.targets", + "lib/net10.0/System.Text.Json.dll", + "lib/net10.0/System.Text.Json.xml", + "lib/net462/System.Text.Json.dll", + "lib/net462/System.Text.Json.xml", + "lib/net8.0/System.Text.Json.dll", + "lib/net8.0/System.Text.Json.xml", + "lib/net9.0/System.Text.Json.dll", + "lib/net9.0/System.Text.Json.xml", + "lib/netstandard2.0/System.Text.Json.dll", + "lib/netstandard2.0/System.Text.Json.xml", + "system.text.json.10.0.0.nupkg.sha512", + "system.text.json.nuspec", + "useSharedDesignerContext.txt" + ] + }, + "System.Threading.Channels/10.0.0": { + "sha512": "fwRdkJpKisUEVNaEdsL5w5EwidzuVw0BOTfzDvYB1Yg8sq1pqNfUZxBOVFgSj6i6tNhpT3HP8BEDXf1+kFkTDA==", + "type": "package", + "path": "system.threading.channels/10.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "PACKAGE.md", + "THIRD-PARTY-NOTICES.TXT", + "buildTransitive/net461/System.Threading.Channels.targets", + "buildTransitive/net462/_._", + "buildTransitive/net8.0/_._", + "buildTransitive/netcoreapp2.0/System.Threading.Channels.targets", + "lib/net10.0/System.Threading.Channels.dll", + "lib/net10.0/System.Threading.Channels.xml", + "lib/net462/System.Threading.Channels.dll", + "lib/net462/System.Threading.Channels.xml", + "lib/net8.0/System.Threading.Channels.dll", + "lib/net8.0/System.Threading.Channels.xml", + "lib/net9.0/System.Threading.Channels.dll", + "lib/net9.0/System.Threading.Channels.xml", + "lib/netstandard2.0/System.Threading.Channels.dll", + "lib/netstandard2.0/System.Threading.Channels.xml", + "lib/netstandard2.1/System.Threading.Channels.dll", + "lib/netstandard2.1/System.Threading.Channels.xml", + "system.threading.channels.10.0.0.nupkg.sha512", + "system.threading.channels.nuspec", + "useSharedDesignerContext.txt" + ] + } + }, + "projectFileDependencyGroups": { + "net8.0-windows7.0": [ + "Microsoft.AspNetCore.SignalR.Client >= 10.0.0", + "Microsoft.NET.ILLink.Tasks >= 8.0.19" + ] + }, + "packageFolders": { + "C:\\Users\\nanxun\\.nuget\\packages\\": {}, + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {} + }, + "project": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", + "projectName": "SignalRTest", + "projectPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", + "packagesPath": "C:\\Users\\nanxun\\.nuget\\packages\\", + "outputPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\obj\\publish\\win-x64\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages" + ], + "configFilePaths": [ + "C:\\Users\\nanxun\\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" + ], + "originalTargetFrameworks": [ + "net8.0-windows" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "C:\\Program Files\\dotnet\\library-packs": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net8.0-windows7.0": { + "targetAlias": "net8.0-windows", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + }, + "restoreAuditProperties": { + "enableAudit": "true", + "auditLevel": "low", + "auditMode": "direct" + }, + "SdkAnalysisLevel": "9.0.300" + }, + "frameworks": { + "net8.0-windows7.0": { + "targetAlias": "net8.0-windows", + "dependencies": { + "Microsoft.AspNetCore.SignalR.Client": { + "target": "Package", + "version": "[10.0.0, )" + }, + "Microsoft.NET.ILLink.Tasks": { + "suppressParent": "All", + "target": "Package", + "version": "[8.0.19, )", + "autoReferenced": true + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48", + "net481" + ], + "assetTargetFallback": true, + "warn": true, + "downloadDependencies": [ + { + "name": "Microsoft.AspNetCore.App.Runtime.win-x64", + "version": "[8.0.19, 8.0.19]" + }, + { + "name": "Microsoft.NETCore.App.Runtime.win-x64", + "version": "[8.0.19, 8.0.19]" + }, + { + "name": "Microsoft.WindowsDesktop.App.Runtime.win-x64", + "version": "[8.0.19, 8.0.19]" + } + ], + "frameworkReferences": { + "Microsoft.NETCore.App": { + "privateAssets": "all" + }, + "Microsoft.WindowsDesktop.App.WindowsForms": { + "privateAssets": "none" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\9.0.304/PortableRuntimeIdentifierGraph.json" + } + }, + "runtimes": { + "win-x64": { + "#import": [] + } + } + } } \ No newline at end of file diff --git a/backend/SignalRTest/obj/publish/win-x64/project.nuget.cache b/backend/SignalRTest/obj/publish/win-x64/project.nuget.cache index 3812f5a..888fbed 100644 --- a/backend/SignalRTest/obj/publish/win-x64/project.nuget.cache +++ b/backend/SignalRTest/obj/publish/win-x64/project.nuget.cache @@ -1,35 +1,35 @@ -{ - "version": 2, - "dgSpecHash": "tkEl1r4m+Ks=", - "success": true, - "projectFilePath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", - "expectedPackageFiles": [ - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.connections.abstractions\\10.0.0\\microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.connections.client\\10.0.0\\microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.connections.common\\10.0.0\\microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.client\\10.0.0\\microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.client.core\\10.0.0\\microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.common\\10.0.0\\microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.protocols.json\\10.0.0\\microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\10.0.0\\microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.bcl.timeprovider\\10.0.0\\microsoft.bcl.timeprovider.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\10.0.0\\microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\10.0.0\\microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.features\\10.0.0\\microsoft.extensions.features.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.logging\\10.0.0\\microsoft.extensions.logging.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\10.0.0\\microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.options\\10.0.0\\microsoft.extensions.options.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.primitives\\10.0.0\\microsoft.extensions.primitives.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.net.illink.tasks\\8.0.19\\microsoft.net.illink.tasks.8.0.19.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.diagnosticsource\\10.0.0\\system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.io.pipelines\\10.0.0\\system.io.pipelines.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.net.serversentevents\\10.0.0\\system.net.serversentevents.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.text.encodings.web\\10.0.0\\system.text.encodings.web.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.text.json\\10.0.0\\system.text.json.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.channels\\10.0.0\\system.threading.channels.10.0.0.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.netcore.app.runtime.win-x64\\8.0.19\\microsoft.netcore.app.runtime.win-x64.8.0.19.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.windowsdesktop.app.runtime.win-x64\\8.0.19\\microsoft.windowsdesktop.app.runtime.win-x64.8.0.19.nupkg.sha512", - "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.app.runtime.win-x64\\8.0.19\\microsoft.aspnetcore.app.runtime.win-x64.8.0.19.nupkg.sha512" - ], - "logs": [] +{ + "version": 2, + "dgSpecHash": "tkEl1r4m+Ks=", + "success": true, + "projectFilePath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\SignalRTest\\SignalRTest.csproj", + "expectedPackageFiles": [ + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.connections.abstractions\\10.0.0\\microsoft.aspnetcore.connections.abstractions.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.connections.client\\10.0.0\\microsoft.aspnetcore.http.connections.client.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.http.connections.common\\10.0.0\\microsoft.aspnetcore.http.connections.common.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.client\\10.0.0\\microsoft.aspnetcore.signalr.client.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.client.core\\10.0.0\\microsoft.aspnetcore.signalr.client.core.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.common\\10.0.0\\microsoft.aspnetcore.signalr.common.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.signalr.protocols.json\\10.0.0\\microsoft.aspnetcore.signalr.protocols.json.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\10.0.0\\microsoft.bcl.asyncinterfaces.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.bcl.timeprovider\\10.0.0\\microsoft.bcl.timeprovider.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\10.0.0\\microsoft.extensions.dependencyinjection.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\10.0.0\\microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.features\\10.0.0\\microsoft.extensions.features.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.logging\\10.0.0\\microsoft.extensions.logging.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\10.0.0\\microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.options\\10.0.0\\microsoft.extensions.options.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.extensions.primitives\\10.0.0\\microsoft.extensions.primitives.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.net.illink.tasks\\8.0.19\\microsoft.net.illink.tasks.8.0.19.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.diagnostics.diagnosticsource\\10.0.0\\system.diagnostics.diagnosticsource.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.io.pipelines\\10.0.0\\system.io.pipelines.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.net.serversentevents\\10.0.0\\system.net.serversentevents.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.text.encodings.web\\10.0.0\\system.text.encodings.web.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.text.json\\10.0.0\\system.text.json.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\system.threading.channels\\10.0.0\\system.threading.channels.10.0.0.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.netcore.app.runtime.win-x64\\8.0.19\\microsoft.netcore.app.runtime.win-x64.8.0.19.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.windowsdesktop.app.runtime.win-x64\\8.0.19\\microsoft.windowsdesktop.app.runtime.win-x64.8.0.19.nupkg.sha512", + "C:\\Users\\nanxun\\.nuget\\packages\\microsoft.aspnetcore.app.runtime.win-x64\\8.0.19\\microsoft.aspnetcore.app.runtime.win-x64.8.0.19.nupkg.sha512" + ], + "logs": [] } \ No newline at end of file diff --git a/docs/ER图.drawio b/docs/ER图.drawio index 4a22d5a..db20250 100644 --- a/docs/ER图.drawio +++ b/docs/ER图.drawio @@ -1,1094 +1,1094 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/IM 系统消息存储与推送策略文档.md b/docs/IM 系统消息存储与推送策略文档.md index e50bc50..b76cd49 100644 --- a/docs/IM 系统消息存储与推送策略文档.md +++ b/docs/IM 系统消息存储与推送策略文档.md @@ -1,141 +1,141 @@ -# IM 系统消息存储与推送策略文档 - -## 1. 概述 - -本策略文档定义了 **消息在系统中的存储、读取和推送流程**,目标是: - -- 保证 **消息实时性** -- 支持 **离线消息存储与同步** -- 支持 **多端登录同步** -- 支持 **单聊、群聊及系统消息** - ------- - -## 2. 消息存储策略 - -### 2.1 消息表设计 - -表结构参考前期设计: - -| 表名 | 作用 | -| ------------ | ------------------------------------------------------------ | -| Messages | 存储所有聊天消息(单聊/群聊) | -| Conversation | 缓存用户最近会话信息(last_message_id, target_id, unread_count) | -| Files | 附件 / 图片 / 语音存储URL | - ------- - -### 2.2 消息存储规则 - -1. **单聊消息** - - 写入 `Messages` 表 - - 更新发送者和接收者 `Conversation` 表 - - 更新 `UnreadCount` -2. **群聊消息** - - 写入 `Messages` 表 - - 更新群成员对应的 `Conversation` 表(except 发送者) - - 更新每个成员的 `UnreadCount` -3. **文件消息** - - 文件存储到对象存储(OSS/S3/MinIO) - - `Messages.Content` 存文件 URL + metadata -4. **消息撤回** - - 消息允许撤回时,修改 `message.status = 1 - - 更新 `Conversation.LastMessageId`(如撤回的是最后一条消息) - ------- - -## 3. 消息推送策略 - -### 3.1 推送原则 - -- **实时性**:在线用户立即通过 WebSocket 推送 -- **可靠性**:离线用户存储消息,登录时同步 -- **顺序保证**:消息按 `timestamp` 或 `messageId` 顺序发送 -- **幂等性**:客户端可根据 `messageId` 去重 - ------- - -### 3.2 单聊推送流程 - -1. 发送者通过 WebSocket 或 HTTP API 发送消息 -2. 服务端写入 `Messages` 表 -3. 查询接收者是否在线 - - **在线**:通过 WebSocket 推送 - - **离线**:存储到 Redis 或 `Conversation.UnreadCount` -4. 接收者收到消息后发送 `MESSAGE_ACK` -5. //暂不要求:更新消息状态(已送达 / 已读) - ------- - -### 3.3 群聊推送流程 - -1. 发送者发送群消息 -2. 服务端写入 `Message`s 表 -3. 查询群成员列表(`GroupMember` 表) -4. 遍历成员: - - **在线成员**:WebSocket 推送 - - **离线成员**:增加 `UnreadCount`,保存在 Redis/数据库 -5. //暂不要求:接收者回 ACK 后更新 `message_receipt`(已读) - ------- - -### 3.4 离线消息处理 - -- 离线消息存储位置: - 1. 数据库 `Messages` 表(长期保存) - 2. Redis 缓存(短期加速推送) -- 客户端上线时: - 1. 请求 `/syncMessages` 接口 - 2. 返回未读消息 + 未读计数 -- 消息同步完成后清除缓存或更新状态 - ------- - -### 3.5 多端同步策略 - -- 每个设备维护独立的 `deviceId` -- WebSocket 推送时: - - 排除发送设备 - - 推送给同账号其他设备 -- //暂不要求:消息回执: - - 每端发送 ACK - - 服务端更新 `Voncers` 和 `message_receipt` - ------- - -## 4. 消息可靠性保障 - -| 场景 | 解决方案 | -| ------------------ | ---------------------------------- | -| 消息丢失 | 发送端生成 `requestId`,服务端去重 | -| 消息顺序错乱 | 按 `messageId` 或 `timestamp` 排序 | -| WebSocket 异常断开 | 客户端重连后同步离线消息 | -| 群聊大消息量 | 异步推送 + 批量 ACK | - ------- - -## 5. //暂不要求:高性能优化策略 - -1. **消息表索引**:`(chat_type, to_id, created_at)` -2. **会话表缓存**:`conversation` 表避免全表查询 -3. **Redis 缓存**:用户在线状态、未读消息数 -4. **分表/分库**:按月或按用户分表 -5. **异步推送队列**:消息通过 MQ(Kafka/RabbitMQ)推送,保证高并发 - ------- - -## 6. 消息撤回与删除策略 - -1. **撤回条件**:超时限制( 2 分钟内可撤回) -2. **撤回操作**: - - 更新 `message.status = 1` - - 更新 `Conversation.LastMessageId` - - 推送撤回事件到在线用户 - ------- - -## 7. 系统消息与通知策略 - -- 系统消息(好友申请、群邀请、公告)走 **同样的消息推送流程** -- 保留在 `Notification` 表 +# IM 系统消息存储与推送策略文档 + +## 1. 概述 + +本策略文档定义了 **消息在系统中的存储、读取和推送流程**,目标是: + +- 保证 **消息实时性** +- 支持 **离线消息存储与同步** +- 支持 **多端登录同步** +- 支持 **单聊、群聊及系统消息** + +------ + +## 2. 消息存储策略 + +### 2.1 消息表设计 + +表结构参考前期设计: + +| 表名 | 作用 | +| ------------ | ------------------------------------------------------------ | +| Messages | 存储所有聊天消息(单聊/群聊) | +| Conversation | 缓存用户最近会话信息(last_message_id, target_id, unread_count) | +| Files | 附件 / 图片 / 语音存储URL | + +------ + +### 2.2 消息存储规则 + +1. **单聊消息** + - 写入 `Messages` 表 + - 更新发送者和接收者 `Conversation` 表 + - 更新 `UnreadCount` +2. **群聊消息** + - 写入 `Messages` 表 + - 更新群成员对应的 `Conversation` 表(except 发送者) + - 更新每个成员的 `UnreadCount` +3. **文件消息** + - 文件存储到对象存储(OSS/S3/MinIO) + - `Messages.Content` 存文件 URL + metadata +4. **消息撤回** + - 消息允许撤回时,修改 `message.status = 1 + - 更新 `Conversation.LastMessageId`(如撤回的是最后一条消息) + +------ + +## 3. 消息推送策略 + +### 3.1 推送原则 + +- **实时性**:在线用户立即通过 WebSocket 推送 +- **可靠性**:离线用户存储消息,登录时同步 +- **顺序保证**:消息按 `timestamp` 或 `messageId` 顺序发送 +- **幂等性**:客户端可根据 `messageId` 去重 + +------ + +### 3.2 单聊推送流程 + +1. 发送者通过 WebSocket 或 HTTP API 发送消息 +2. 服务端写入 `Messages` 表 +3. 查询接收者是否在线 + - **在线**:通过 WebSocket 推送 + - **离线**:存储到 Redis 或 `Conversation.UnreadCount` +4. 接收者收到消息后发送 `MESSAGE_ACK` +5. //暂不要求:更新消息状态(已送达 / 已读) + +------ + +### 3.3 群聊推送流程 + +1. 发送者发送群消息 +2. 服务端写入 `Message`s 表 +3. 查询群成员列表(`GroupMember` 表) +4. 遍历成员: + - **在线成员**:WebSocket 推送 + - **离线成员**:增加 `UnreadCount`,保存在 Redis/数据库 +5. //暂不要求:接收者回 ACK 后更新 `message_receipt`(已读) + +------ + +### 3.4 离线消息处理 + +- 离线消息存储位置: + 1. 数据库 `Messages` 表(长期保存) + 2. Redis 缓存(短期加速推送) +- 客户端上线时: + 1. 请求 `/syncMessages` 接口 + 2. 返回未读消息 + 未读计数 +- 消息同步完成后清除缓存或更新状态 + +------ + +### 3.5 多端同步策略 + +- 每个设备维护独立的 `deviceId` +- WebSocket 推送时: + - 排除发送设备 + - 推送给同账号其他设备 +- //暂不要求:消息回执: + - 每端发送 ACK + - 服务端更新 `Voncers` 和 `message_receipt` + +------ + +## 4. 消息可靠性保障 + +| 场景 | 解决方案 | +| ------------------ | ---------------------------------- | +| 消息丢失 | 发送端生成 `requestId`,服务端去重 | +| 消息顺序错乱 | 按 `messageId` 或 `timestamp` 排序 | +| WebSocket 异常断开 | 客户端重连后同步离线消息 | +| 群聊大消息量 | 异步推送 + 批量 ACK | + +------ + +## 5. //暂不要求:高性能优化策略 + +1. **消息表索引**:`(chat_type, to_id, created_at)` +2. **会话表缓存**:`conversation` 表避免全表查询 +3. **Redis 缓存**:用户在线状态、未读消息数 +4. **分表/分库**:按月或按用户分表 +5. **异步推送队列**:消息通过 MQ(Kafka/RabbitMQ)推送,保证高并发 + +------ + +## 6. 消息撤回与删除策略 + +1. **撤回条件**:超时限制( 2 分钟内可撤回) +2. **撤回操作**: + - 更新 `message.status = 1` + - 更新 `Conversation.LastMessageId` + - 推送撤回事件到在线用户 + +------ + +## 7. 系统消息与通知策略 + +- 系统消息(好友申请、群邀请、公告)走 **同样的消息推送流程** +- 保留在 `Notification` 表 - 支持离线同步 \ No newline at end of file diff --git a/docs/IM 系统鉴权与 Token 安全规范文档.md b/docs/IM 系统鉴权与 Token 安全规范文档.md index 2ece4d2..92aa5b3 100644 --- a/docs/IM 系统鉴权与 Token 安全规范文档.md +++ b/docs/IM 系统鉴权与 Token 安全规范文档.md @@ -1,115 +1,115 @@ -# IM 系统鉴权与 Token 安全规范文档 - -## 1. 概述 - -本规范用于确保系统用户身份验证、消息安全和多端同步安全。 - 鉴权体系采用 **Token(JWT 或自定义) + HTTPS/WebSocket** 方式。 - ------- - -## 2. 鉴权方式选择 - -| 方法 | -| -------------------------------------- | -| JWT(JSON Web Token)+ Redis黑名单机制 | - ------- - -## 3. Token 生成规则 - -### 3.1 Token 内容结构(JWT 示例) - -``` -{ - "userId": 1001, // 用户ID - "iat": 1700000000, // 签发时间(Unix时间戳) - "exp": 1700003600, // 过期时间 - "deviceId": "uuid-xxxx", // 设备ID,用于多端区分 - "role": "user" // 角色 -} -``` - -- **签名算法**:HMAC-SHA256 或 RSA -- **签名秘钥**:服务端统一管理,不暴露给客户端 - ------- - -### 3.2 Token 生成流程 - -1. 用户登录(用户名/密码) -2. 验证用户名与密码正确 -3. 生成 Token,写入 Redis(可选) -4. 返回 Token 给客户端 - -**响应示例**: - -``` -{ - "code": 0, - "message": "登录成功", - "data": { - "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." - } -} -``` - ------- - -## 4. Token 使用 - -### 4.1 HTTP 接口鉴权 - -- 客户端请求带上 Header: - -``` -Authorization: Bearer -``` - -- 后端解析 Token: - 1. 校验签名 - 2. 校验 exp 是否过期 - 3. 校验 Redis 黑名单(可选) -- 不通过返回 401 / code 1006 - ------- - -### 4.2 WebSocket 鉴权 - -- 建立连接时通过 Query 或 Header 传 Token: - -``` -ws://example.com/ws?token=xxxx&deviceId=uuid-001 -``` - -- 握手阶段: - 1. 服务器验证 Token - 2. 成功返回 AUTH_SUCCESS - 3. 失败返回 AUTH_FAIL 并关闭连接 - ------- - -## 5. Token 过期策略 - -| 类型 | 建议值 | 说明 | -| ------------------ | ---------------------- | ---------------------------------------- | -| 短期 Token | 30 分钟 ~ 1 小时 | 防止长时间泄露 | -| 长期 Refresh Token | 7 ~ 30 天 | 用于获取新 Token,安全性高 | -| WebSocket 长连接 | Token 与短期有效期一致 | 客户端定期刷新 Token(心跳或重连时验证) | - -### 5.1 Token 刷新流程 - -1. 客户端 Token 快过期时,调用刷新接口 -2. 服务端验证 Refresh Token -3. 返回新 Token,更新 Redis / 黑名单 - ------- - -## 6. 多端登录处理 - -- **每个设备对应一个 deviceId** -- Token 中绑定 deviceId -- 多端策略: - 1. **允许多端同时登录**:每端单独维护 Token - 2. **限制单端登录**:新登录覆盖旧设备 Token - 3. **设备列表管理**:可查看在线设备并强制下线 - +# IM 系统鉴权与 Token 安全规范文档 + +## 1. 概述 + +本规范用于确保系统用户身份验证、消息安全和多端同步安全。 + 鉴权体系采用 **Token(JWT 或自定义) + HTTPS/WebSocket** 方式。 + +------ + +## 2. 鉴权方式选择 + +| 方法 | +| -------------------------------------- | +| JWT(JSON Web Token)+ Redis黑名单机制 | + +------ + +## 3. Token 生成规则 + +### 3.1 Token 内容结构(JWT 示例) + +``` +{ + "userId": 1001, // 用户ID + "iat": 1700000000, // 签发时间(Unix时间戳) + "exp": 1700003600, // 过期时间 + "deviceId": "uuid-xxxx", // 设备ID,用于多端区分 + "role": "user" // 角色 +} +``` + +- **签名算法**:HMAC-SHA256 或 RSA +- **签名秘钥**:服务端统一管理,不暴露给客户端 + +------ + +### 3.2 Token 生成流程 + +1. 用户登录(用户名/密码) +2. 验证用户名与密码正确 +3. 生成 Token,写入 Redis(可选) +4. 返回 Token 给客户端 + +**响应示例**: + +``` +{ + "code": 0, + "message": "登录成功", + "data": { + "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." + } +} +``` + +------ + +## 4. Token 使用 + +### 4.1 HTTP 接口鉴权 + +- 客户端请求带上 Header: + +``` +Authorization: Bearer +``` + +- 后端解析 Token: + 1. 校验签名 + 2. 校验 exp 是否过期 + 3. 校验 Redis 黑名单(可选) +- 不通过返回 401 / code 1006 + +------ + +### 4.2 WebSocket 鉴权 + +- 建立连接时通过 Query 或 Header 传 Token: + +``` +ws://example.com/ws?token=xxxx&deviceId=uuid-001 +``` + +- 握手阶段: + 1. 服务器验证 Token + 2. 成功返回 AUTH_SUCCESS + 3. 失败返回 AUTH_FAIL 并关闭连接 + +------ + +## 5. Token 过期策略 + +| 类型 | 建议值 | 说明 | +| ------------------ | ---------------------- | ---------------------------------------- | +| 短期 Token | 30 分钟 ~ 1 小时 | 防止长时间泄露 | +| 长期 Refresh Token | 7 ~ 30 天 | 用于获取新 Token,安全性高 | +| WebSocket 长连接 | Token 与短期有效期一致 | 客户端定期刷新 Token(心跳或重连时验证) | + +### 5.1 Token 刷新流程 + +1. 客户端 Token 快过期时,调用刷新接口 +2. 服务端验证 Refresh Token +3. 返回新 Token,更新 Redis / 黑名单 + +------ + +## 6. 多端登录处理 + +- **每个设备对应一个 deviceId** +- Token 中绑定 deviceId +- 多端策略: + 1. **允许多端同时登录**:每端单独维护 Token + 2. **限制单端登录**:新登录覆盖旧设备 Token + 3. **设备列表管理**:可查看在线设备并强制下线 + diff --git a/docs/vue3组件文档.md b/docs/vue3组件文档.md index a3631dd..aebf979 100644 --- a/docs/vue3组件文档.md +++ b/docs/vue3组件文档.md @@ -1,150 +1,150 @@ -# 📚 MyButton - -## 🏷️ 1. 组件概览 - -### 基础信息 - -| **属性** | **值** | -| ------------ | ---------------------------------------------------------- | -| **组件名称** | `MyButton` | -| **文件路径** | `@/components/MyButton.vue` | -| **用途** | 封装项目中的所有交互按钮,提供统一的样式、交互状态和动画。 | -| **版本** | v1.0.0 | -| **核心依赖** | `feather-icons` (需要父组件或全局初始化) | - -### 引入方式 - -JavaScript - -``` -import MyButton from '@/components/MyButton.vue'; -``` - -## 💡 2. 使用示例 - -### 基础用法(Primary Variant) - -HTML - -``` -保存配置 - - - - 发送邮件 - -``` - -### 状态和事件绑定 - -HTML - -``` - - 取消 - - - - 删除数据 - -``` - -## ⚙️ 3. Props 属性说明 (API) - -| **名称 (Prop Name)** | **类型 (Type)** | **可选值/说明** | **默认值 (Default)** | **描述** | -| -------------------- | --------------- | ------------------------------------------------------------ | -------------------- | -------------------------------------------------------- | -| `variant` | `String` | `primary` (主色调), `secondary` (次要/灰色), `danger` (危险/红色), `text` (纯文本链接样式) | `'primary'` | 定义按钮的外观和主题颜色。 | -| `disabled` | `Boolean` | — | `false` | 明确禁用按钮,移除点击交互和视觉提示。 | -| `loading` | `Boolean` | — | `false` | 设置为 `true` 时,按钮显示加载状态,并自动应用禁用样式。 | - -## 🧩 4. 插槽说明 (Slots) - -| **名称 (Slot Name)** | **用途** | **插槽 Prop** | **示例用法** | -| -------------------- | ------------------------------------------ | ------------- | --------------------------------- | -| **默认** (`default`) | 用于插入按钮的**文本内容**或其他核心元素。 | 无 | ` 按钮文本 ` | - -## ⚡ 5. 事件说明 (Events) - -| **名称 (Event Name)** | **参数 (Payload)** | **描述** | -| --------------------- | --------------------- | ------------------------------------------------------------ | -| `@click` | `(event: MouseEvent)` | 按钮被点击时触发。由于使用了 `v-bind="attrs"`,此事件是透传自内部 `