Merge pull request 'feature-nxdev' (#9) from feature-nxdev into main
Reviewed-on: #9
This commit is contained in:
commit
ca9da60832
3
backend/IM_API/.gitignore
vendored
Normal file
3
backend/IM_API/.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
bin/
|
||||
obj/
|
||||
.vs/
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,12 +0,0 @@
|
||||
{
|
||||
"Version": 1,
|
||||
"WorkspaceRootPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\",
|
||||
"Documents": [],
|
||||
"DocumentGroupContainers": [
|
||||
{
|
||||
"Orientation": 0,
|
||||
"VerticalTabListWidth": 256,
|
||||
"DocumentGroups": []
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -1,12 +0,0 @@
|
||||
{
|
||||
"Version": 1,
|
||||
"WorkspaceRootPath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\",
|
||||
"Documents": [],
|
||||
"DocumentGroupContainers": [
|
||||
{
|
||||
"Orientation": 0,
|
||||
"VerticalTabListWidth": 256,
|
||||
"DocumentGroups": []
|
||||
}
|
||||
]
|
||||
}
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -10,7 +10,16 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="8.0.21">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="8.0.21">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.22.1" />
|
||||
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="8.0.3" />
|
||||
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.6.2" />
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
58
backend/IM_API/Models/Admin.cs
Normal file
58
backend/IM_API/Models/Admin.cs
Normal file
@ -0,0 +1,58 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("admins")]
|
||||
[Index("RoleId", Name = "RoleId")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Admin
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户名
|
||||
/// </summary>
|
||||
[StringLength(50)]
|
||||
public string Username { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 密码
|
||||
/// </summary>
|
||||
[StringLength(50)]
|
||||
public string Password { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 角色
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int RoleId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 状态(0:正常,2:封禁)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte State { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Created { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 更新时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Updated { get; set; }
|
||||
|
||||
[ForeignKey("RoleId")]
|
||||
[InverseProperty("Admins")]
|
||||
public virtual Role Role { get; set; } = null!;
|
||||
}
|
||||
57
backend/IM_API/Models/Conversation.cs
Normal file
57
backend/IM_API/Models/Conversation.cs
Normal file
@ -0,0 +1,57 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("conversations")]
|
||||
[Index("Userid", Name = "Userid")]
|
||||
[Index("LastMessageId", Name = "lastMessageId")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Conversation
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Userid { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 对方ID(群聊为群聊ID,单聊为单聊ID)
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Targetid { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 消息类型(同Messages.MsgType)
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int MsgType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最后一条消息ID
|
||||
/// </summary>
|
||||
[Column("lastMessageId", TypeName = "int(11)")]
|
||||
public int LastMessageId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 未读消息数
|
||||
/// </summary>
|
||||
[Column("unreadCount", TypeName = "int(11)")]
|
||||
public int UnreadCount { get; set; }
|
||||
|
||||
[ForeignKey("LastMessageId")]
|
||||
[InverseProperty("Conversations")]
|
||||
public virtual Message LastMessage { get; set; } = null!;
|
||||
|
||||
[ForeignKey("Userid")]
|
||||
[InverseProperty("Conversations")]
|
||||
public virtual User User { get; set; } = null!;
|
||||
}
|
||||
41
backend/IM_API/Models/Device.cs
Normal file
41
backend/IM_API/Models/Device.cs
Normal file
@ -0,0 +1,41 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("devices")]
|
||||
[Index("Userid", Name = "Userid")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Device
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 设备所属用户
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Userid { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 设备类型(
|
||||
/// 0:Android,1:Ios,2:PC,3:Pad,4:未知)
|
||||
/// </summary>
|
||||
[Column("DType", TypeName = "tinyint(4)")]
|
||||
public sbyte Dtype { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 最后一次登录
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime LastLogin { get; set; }
|
||||
|
||||
[ForeignKey("Userid")]
|
||||
[InverseProperty("Devices")]
|
||||
public virtual User User { get; set; } = null!;
|
||||
}
|
||||
59
backend/IM_API/Models/File.cs
Normal file
59
backend/IM_API/Models/File.cs
Normal file
@ -0,0 +1,59 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("files")]
|
||||
[Index("Messageld", Name = "Messageld")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class File
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 文件名
|
||||
/// </summary>
|
||||
[StringLength(50)]
|
||||
public string Name { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 文件储存URL
|
||||
/// </summary>
|
||||
[Column("URL")]
|
||||
[StringLength(100)]
|
||||
public string Url { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 文件大小(单位:KB)
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Size { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 文件类型
|
||||
/// </summary>
|
||||
[StringLength(10)]
|
||||
public string Type { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 关联消息ID
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Messageld { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Created { get; set; }
|
||||
|
||||
[ForeignKey("Messageld")]
|
||||
[InverseProperty("Files")]
|
||||
public virtual Message MessageldNavigation { get; set; } = null!;
|
||||
}
|
||||
53
backend/IM_API/Models/Friend.cs
Normal file
53
backend/IM_API/Models/Friend.cs
Normal file
@ -0,0 +1,53 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("friends")]
|
||||
[Index("Id", Name = "ID")]
|
||||
[Index("Userld", "Friendld", Name = "Userld")]
|
||||
[Index("Friendld", Name = "用户2id")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Friend
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户ID
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Userld { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户2ID
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Friendld { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 当前好友关系状态
|
||||
/// (0:待通过,1:已添加,2:已拒绝,3:已拉黑)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 好友关系创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Created { get; set; }
|
||||
|
||||
[ForeignKey("Friendld")]
|
||||
[InverseProperty("FriendFriendldNavigations")]
|
||||
public virtual User FriendldNavigation { get; set; } = null!;
|
||||
|
||||
[ForeignKey("Userld")]
|
||||
[InverseProperty("FriendUserldNavigations")]
|
||||
public virtual User UserldNavigation { get; set; } = null!;
|
||||
}
|
||||
57
backend/IM_API/Models/Friendrequest.cs
Normal file
57
backend/IM_API/Models/Friendrequest.cs
Normal file
@ -0,0 +1,57 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("friendrequest")]
|
||||
[Index("RequestUser", Name = "RequestUser")]
|
||||
[Index("ResponseUser", Name = "ResponseUser")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Friendrequest
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 申请人
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int RequestUser { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 被申请人
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int ResponseUser { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 申请时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Created { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 申请附言
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string? Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 申请状态(0:待通过,1:拒绝,2:同意,3:拉黑)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte State { get; set; }
|
||||
|
||||
[ForeignKey("RequestUser")]
|
||||
[InverseProperty("FriendrequestRequestUserNavigations")]
|
||||
public virtual User RequestUserNavigation { get; set; } = null!;
|
||||
|
||||
[ForeignKey("ResponseUser")]
|
||||
[InverseProperty("FriendrequestResponseUserNavigations")]
|
||||
public virtual User ResponseUserNavigation { get; set; } = null!;
|
||||
}
|
||||
73
backend/IM_API/Models/Group.cs
Normal file
73
backend/IM_API/Models/Group.cs
Normal file
@ -0,0 +1,73 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("groups")]
|
||||
[Index("GroupMaster", Name = "GroupMaster")]
|
||||
[Index("Id", Name = "ID")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Group
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 群聊名称
|
||||
/// </summary>
|
||||
[StringLength(20)]
|
||||
public string Name { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 群主
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int GroupMaster { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 群权限
|
||||
/// (0:需管理员同意,1:任意人可加群,2:不允许任何人加入)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte Auhority { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 全员禁言(0允许发言,2全员禁言)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte AllMembersBanned { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 群聊状态
|
||||
/// (1:正常,2:封禁)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 群公告
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string? Announcement { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 群聊创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Created { get; set; }
|
||||
|
||||
[ForeignKey("GroupMaster")]
|
||||
[InverseProperty("Groups")]
|
||||
public virtual User GroupMasterNavigation { get; set; } = null!;
|
||||
|
||||
[InverseProperty("Group")]
|
||||
public virtual ICollection<Groupinvite> Groupinvites { get; set; } = new List<Groupinvite>();
|
||||
|
||||
[InverseProperty("Group")]
|
||||
public virtual ICollection<Grouprequest> Grouprequests { get; set; } = new List<Grouprequest>();
|
||||
}
|
||||
63
backend/IM_API/Models/Groupinvite.cs
Normal file
63
backend/IM_API/Models/Groupinvite.cs
Normal file
@ -0,0 +1,63 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("groupinvite")]
|
||||
[Index("GroupId", Name = "GroupId")]
|
||||
[Index("InviteUser", Name = "InviteUser")]
|
||||
[Index("InvitedUser", Name = "InvitedUser")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Groupinvite
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 群聊编号
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int GroupId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 被邀请用户
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int? InvitedUser { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 邀请用户
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int? InviteUser { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 当前状态(0:待被邀请人同意
|
||||
/// 1:被邀请人已同意)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte? State { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime? Created { get; set; }
|
||||
|
||||
[ForeignKey("GroupId")]
|
||||
[InverseProperty("Groupinvites")]
|
||||
public virtual Group Group { get; set; } = null!;
|
||||
|
||||
[ForeignKey("InviteUser")]
|
||||
[InverseProperty("GroupinviteInviteUserNavigations")]
|
||||
public virtual User? InviteUserNavigation { get; set; }
|
||||
|
||||
[ForeignKey("InvitedUser")]
|
||||
[InverseProperty("GroupinviteInvitedUserNavigations")]
|
||||
public virtual User? InvitedUserNavigation { get; set; }
|
||||
}
|
||||
52
backend/IM_API/Models/Groupmember.cs
Normal file
52
backend/IM_API/Models/Groupmember.cs
Normal file
@ -0,0 +1,52 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("groupmember")]
|
||||
[Index("Groupld", Name = "Groupld")]
|
||||
[Index("Id", Name = "ID")]
|
||||
[Index("Userld", Name = "Userld")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Groupmember
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 用户编号
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Userld { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 群聊编号
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Groupld { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 成员角色(0:普通成员,1:管理员,2:群主)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte Role { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 加入群聊时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Created { get; set; }
|
||||
|
||||
[ForeignKey("Groupld")]
|
||||
[InverseProperty("GroupmemberGroupldNavigations")]
|
||||
public virtual User GroupldNavigation { get; set; } = null!;
|
||||
|
||||
[ForeignKey("Userld")]
|
||||
[InverseProperty("GroupmemberUserldNavigations")]
|
||||
public virtual User UserldNavigation { get; set; } = null!;
|
||||
}
|
||||
57
backend/IM_API/Models/Grouprequest.cs
Normal file
57
backend/IM_API/Models/Grouprequest.cs
Normal file
@ -0,0 +1,57 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("grouprequest")]
|
||||
[Index("GroupId", Name = "GroupId")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Grouprequest
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 群聊编号
|
||||
///
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int GroupId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 申请人
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 申请状态(0:待管理员同意,1:已拒绝,2:已同意)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte State { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 入群附言
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Description { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Created { get; set; }
|
||||
|
||||
[ForeignKey("GroupId")]
|
||||
[InverseProperty("Grouprequests")]
|
||||
public virtual Group Group { get; set; } = null!;
|
||||
|
||||
[ForeignKey("GroupId")]
|
||||
[InverseProperty("Grouprequests")]
|
||||
public virtual User GroupNavigation { get; set; } = null!;
|
||||
}
|
||||
343
backend/IM_API/Models/IMDbContext.cs
Normal file
343
backend/IM_API/Models/IMDbContext.cs
Normal file
@ -0,0 +1,343 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Pomelo.EntityFrameworkCore.MySql.Scaffolding.Internal;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
public partial class IMDbContext : DbContext
|
||||
{
|
||||
public IMDbContext()
|
||||
{
|
||||
}
|
||||
|
||||
public IMDbContext(DbContextOptions<IMDbContext> options)
|
||||
: base(options)
|
||||
{
|
||||
}
|
||||
|
||||
public virtual DbSet<Admin> Admins { get; set; }
|
||||
|
||||
public virtual DbSet<Conversation> Conversations { get; set; }
|
||||
|
||||
public virtual DbSet<Device> Devices { get; set; }
|
||||
|
||||
public virtual DbSet<File> Files { get; set; }
|
||||
|
||||
public virtual DbSet<Friend> Friends { get; set; }
|
||||
|
||||
public virtual DbSet<Friendrequest> Friendrequests { get; set; }
|
||||
|
||||
public virtual DbSet<Group> Groups { get; set; }
|
||||
|
||||
public virtual DbSet<Groupinvite> Groupinvites { get; set; }
|
||||
|
||||
public virtual DbSet<Groupmember> Groupmembers { get; set; }
|
||||
|
||||
public virtual DbSet<Grouprequest> Grouprequests { get; set; }
|
||||
|
||||
public virtual DbSet<LoginLog> LoginLogs { get; set; }
|
||||
|
||||
public virtual DbSet<Message> Messages { get; set; }
|
||||
|
||||
public virtual DbSet<Notification> Notifications { get; set; }
|
||||
|
||||
public virtual DbSet<Permission> Permissions { get; set; }
|
||||
|
||||
public virtual DbSet<Permissionarole> Permissionaroles { get; set; }
|
||||
|
||||
public virtual DbSet<Role> Roles { get; set; }
|
||||
|
||||
public virtual DbSet<User> Users { get; set; }
|
||||
|
||||
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
|
||||
#warning To protect potentially sensitive information in your connection string, you should move it out of source code. You can avoid scaffolding the connection string by using the Name= syntax to read it from configuration - see https://go.microsoft.com/fwlink/?linkid=2131148. For more guidance on storing connection strings, see https://go.microsoft.com/fwlink/?LinkId=723263.
|
||||
=> optionsBuilder.UseMySql("server=192.168.5.100;port=3306;database=IM;user=root;password=768788Dyw", Microsoft.EntityFrameworkCore.ServerVersion.Parse("5.7.44-mysql"));
|
||||
|
||||
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
||||
{
|
||||
modelBuilder
|
||||
.UseCollation("latin1_swedish_ci")
|
||||
.HasCharSet("latin1");
|
||||
|
||||
modelBuilder.Entity<Admin>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Created).HasComment("创建时间 ");
|
||||
entity.Property(e => e.Password).HasComment("密码");
|
||||
entity.Property(e => e.RoleId).HasComment("角色");
|
||||
entity.Property(e => e.State).HasComment("状态(0:正常,2:封禁) ");
|
||||
entity.Property(e => e.Updated).HasComment("更新时间 ");
|
||||
entity.Property(e => e.Username).HasComment("用户名");
|
||||
|
||||
entity.HasOne(d => d.Role).WithMany(p => p.Admins)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("admins_ibfk_1");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Conversation>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.LastMessageId).HasComment("最后一条消息ID ");
|
||||
entity.Property(e => e.MsgType).HasComment("消息类型(同Messages.MsgType) ");
|
||||
entity.Property(e => e.Targetid).HasComment("对方ID(群聊为群聊ID,单聊为单聊ID) ");
|
||||
entity.Property(e => e.UnreadCount).HasComment("未读消息数 ");
|
||||
entity.Property(e => e.Userid).HasComment("用户");
|
||||
|
||||
entity.HasOne(d => d.LastMessage).WithMany(p => p.Conversations)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("conversations_ibfk_2");
|
||||
|
||||
entity.HasOne(d => d.User).WithMany(p => p.Conversations)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("conversations_ibfk_1");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Device>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Dtype).HasComment("设备类型(\r\n0:Android,1:Ios,2:PC,3:Pad,4:未知)");
|
||||
entity.Property(e => e.LastLogin).HasComment("最后一次登录 ");
|
||||
entity.Property(e => e.Userid).HasComment("设备所属用户 ");
|
||||
|
||||
entity.HasOne(d => d.User).WithMany(p => p.Devices)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("devices_ibfk_1");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<File>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Created).HasComment("创建时间 ");
|
||||
entity.Property(e => e.Messageld).HasComment("关联消息ID ");
|
||||
entity.Property(e => e.Name).HasComment("文件名 ");
|
||||
entity.Property(e => e.Size).HasComment("文件大小(单位:KB) ");
|
||||
entity.Property(e => e.Type).HasComment("文件类型 ");
|
||||
entity.Property(e => e.Url).HasComment("文件储存URL ");
|
||||
|
||||
entity.HasOne(d => d.MessageldNavigation).WithMany(p => p.Files)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("files_ibfk_1");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Friend>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Created).HasComment("好友关系创建时间");
|
||||
entity.Property(e => e.Friendld).HasComment("用户2ID");
|
||||
entity.Property(e => e.Status).HasComment("当前好友关系状态\r\n(0:待通过,1:已添加,2:已拒绝,3:已拉黑)");
|
||||
entity.Property(e => e.Userld).HasComment("用户ID");
|
||||
|
||||
entity.HasOne(d => d.FriendldNavigation).WithMany(p => p.FriendFriendldNavigations)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("用户2id");
|
||||
|
||||
entity.HasOne(d => d.UserldNavigation).WithMany(p => p.FriendUserldNavigations)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("用户id");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Friendrequest>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Created).HasComment("申请时间 ");
|
||||
entity.Property(e => e.Description).HasComment("申请附言 ");
|
||||
entity.Property(e => e.RequestUser).HasComment("申请人 ");
|
||||
entity.Property(e => e.ResponseUser).HasComment("被申请人 ");
|
||||
entity.Property(e => e.State).HasComment("申请状态(0:待通过,1:拒绝,2:同意,3:拉黑) ");
|
||||
|
||||
entity.HasOne(d => d.RequestUserNavigation).WithMany(p => p.FriendrequestRequestUserNavigations)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("friendrequest_ibfk_1");
|
||||
|
||||
entity.HasOne(d => d.ResponseUserNavigation).WithMany(p => p.FriendrequestResponseUserNavigations)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("friendrequest_ibfk_2");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Group>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.AllMembersBanned).HasComment("全员禁言(0允许发言,2全员禁言)");
|
||||
entity.Property(e => e.Announcement).HasComment("群公告");
|
||||
entity.Property(e => e.Auhority).HasComment("群权限\r\n(0:需管理员同意,1:任意人可加群,2:不允许任何人加入)");
|
||||
entity.Property(e => e.Created).HasComment("群聊创建时间");
|
||||
entity.Property(e => e.GroupMaster).HasComment("群主");
|
||||
entity.Property(e => e.Name).HasComment("群聊名称");
|
||||
entity.Property(e => e.Status).HasComment("群聊状态\r\n(1:正常,2:封禁)");
|
||||
|
||||
entity.HasOne(d => d.GroupMasterNavigation).WithMany(p => p.Groups)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("groups_ibfk_1");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Groupinvite>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Created).HasComment("创建时间");
|
||||
entity.Property(e => e.GroupId).HasComment("群聊编号");
|
||||
entity.Property(e => e.InviteUser).HasComment("邀请用户");
|
||||
entity.Property(e => e.InvitedUser).HasComment("被邀请用户");
|
||||
entity.Property(e => e.State).HasComment("当前状态(0:待被邀请人同意\r\n1:被邀请人已同意)");
|
||||
|
||||
entity.HasOne(d => d.Group).WithMany(p => p.Groupinvites)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("groupinvite_ibfk_2");
|
||||
|
||||
entity.HasOne(d => d.InviteUserNavigation).WithMany(p => p.GroupinviteInviteUserNavigations).HasConstraintName("groupinvite_ibfk_1");
|
||||
|
||||
entity.HasOne(d => d.InvitedUserNavigation).WithMany(p => p.GroupinviteInvitedUserNavigations).HasConstraintName("groupinvite_ibfk_3");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Groupmember>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Created)
|
||||
.HasDefaultValueSql("'1970-01-01 00:00:00'")
|
||||
.HasComment("加入群聊时间");
|
||||
entity.Property(e => e.Groupld).HasComment("群聊编号");
|
||||
entity.Property(e => e.Role).HasComment("成员角色(0:普通成员,1:管理员,2:群主)");
|
||||
entity.Property(e => e.Userld).HasComment("用户编号");
|
||||
|
||||
entity.HasOne(d => d.GroupldNavigation).WithMany(p => p.GroupmemberGroupldNavigations)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("groupmember_ibfk_2");
|
||||
|
||||
entity.HasOne(d => d.UserldNavigation).WithMany(p => p.GroupmemberUserldNavigations)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("groupmember_ibfk_1");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Grouprequest>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Created).HasComment("创建时间");
|
||||
entity.Property(e => e.Description).HasComment("入群附言");
|
||||
entity.Property(e => e.GroupId).HasComment("群聊编号\r\n");
|
||||
entity.Property(e => e.State).HasComment("申请状态(0:待管理员同意,1:已拒绝,2:已同意)");
|
||||
entity.Property(e => e.UserId).HasComment("申请人 ");
|
||||
|
||||
entity.HasOne(d => d.Group).WithMany(p => p.Grouprequests)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("grouprequest_ibfk_1");
|
||||
|
||||
entity.HasOne(d => d.GroupNavigation).WithMany(p => p.Grouprequests)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("grouprequest_ibfk_2");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<LoginLog>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Dtype).HasComment("设备类型(通Devices/DType) ");
|
||||
entity.Property(e => e.Logined).HasComment("登录时间 ");
|
||||
entity.Property(e => e.State).HasComment("登录状态(0:登陆成功,1:未验证,2:已被拒绝) ");
|
||||
entity.Property(e => e.Userld).HasComment("登录用户 ");
|
||||
|
||||
entity.HasOne(d => d.UserldNavigation).WithMany(p => p.LoginLogs)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("login_log_ibfk_1");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Message>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.ChatType).HasComment("聊天类型\r\n(0:私聊,1:群聊)");
|
||||
entity.Property(e => e.Content).HasComment("消息内容 ");
|
||||
entity.Property(e => e.Created).HasComment("发送时间 ");
|
||||
entity.Property(e => e.MsgType).HasComment("消息类型\r\n(0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)");
|
||||
entity.Property(e => e.Recipient).HasComment("接收者(私聊为用户ID,群聊为群聊ID) ");
|
||||
entity.Property(e => e.Sender).HasComment("发送者 ");
|
||||
entity.Property(e => e.State).HasComment("消息状态(0:已发送,1:已撤回) ");
|
||||
|
||||
entity.HasOne(d => d.SenderNavigation).WithMany(p => p.Messages)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("messages_ibfk_1");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Notification>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Content).HasComment("通知内容");
|
||||
entity.Property(e => e.Created).HasComment("创建时间");
|
||||
entity.Property(e => e.Ntype).HasComment("通知类型(0:文本)");
|
||||
entity.Property(e => e.Title).HasComment("通知标题");
|
||||
entity.Property(e => e.Userld).HasComment("接收人(为空为全体通知)");
|
||||
|
||||
entity.HasOne(d => d.UserldNavigation).WithMany(p => p.Notifications)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("notifications_ibfk_1");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Permission>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Code).HasComment("权限编码 ");
|
||||
entity.Property(e => e.Created).HasComment("创建时间 ");
|
||||
entity.Property(e => e.Name).HasComment("权限名称 ");
|
||||
entity.Property(e => e.Ptype).HasComment("权限类型(0:增,1:删,2:改,3:查) ");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Permissionarole>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Id).ValueGeneratedNever();
|
||||
entity.Property(e => e.Permissionld).HasComment("权限 ");
|
||||
entity.Property(e => e.Roleld).HasComment("角色 ");
|
||||
|
||||
entity.HasOne(d => d.PermissionldNavigation).WithMany(p => p.Permissionaroles)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("permissionarole_ibfk_2");
|
||||
|
||||
entity.HasOne(d => d.RoleldNavigation).WithMany(p => p.Permissionaroles)
|
||||
.OnDelete(DeleteBehavior.ClientSetNull)
|
||||
.HasConstraintName("permissionarole_ibfk_1");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<Role>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Created).HasComment("创建时间 ");
|
||||
entity.Property(e => e.Description).HasComment("角色描述 ");
|
||||
entity.Property(e => e.Name).HasComment("角色名称 ");
|
||||
});
|
||||
|
||||
modelBuilder.Entity<User>(entity =>
|
||||
{
|
||||
entity.HasKey(e => e.Id).HasName("PRIMARY");
|
||||
|
||||
entity.Property(e => e.Created)
|
||||
.HasDefaultValueSql("'1970-01-01 00:00:00'")
|
||||
.HasComment("创建时间");
|
||||
entity.Property(e => e.IsDeleted).HasComment("软删除标识\r\n0:账号正常\r\n1:账号已删除");
|
||||
entity.Property(e => e.NickName).HasComment("用户昵称");
|
||||
entity.Property(e => e.OlineStatus).HasComment("用户在线状态\r\n0(默认):不在线\r\n1:在线");
|
||||
entity.Property(e => e.Password).HasComment("密码");
|
||||
entity.Property(e => e.Status)
|
||||
.HasDefaultValueSql("'1'")
|
||||
.HasComment("账户状态\r\n(0:未激活,1:正常,2:封禁)");
|
||||
entity.Property(e => e.Updated).HasComment("修改时间");
|
||||
entity.Property(e => e.Username).HasComment("唯一用户名");
|
||||
});
|
||||
|
||||
OnModelCreatingPartial(modelBuilder);
|
||||
}
|
||||
|
||||
partial void OnModelCreatingPartial(ModelBuilder modelBuilder);
|
||||
}
|
||||
46
backend/IM_API/Models/LoginLog.cs
Normal file
46
backend/IM_API/Models/LoginLog.cs
Normal file
@ -0,0 +1,46 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("login_log")]
|
||||
[Index("Userld", Name = "Userld")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class LoginLog
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 设备类型(通Devices/DType)
|
||||
/// </summary>
|
||||
[Column("DType", TypeName = "tinyint(4)")]
|
||||
public sbyte Dtype { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 登录时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Logined { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 登录用户
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Userld { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 登录状态(0:登陆成功,1:未验证,2:已被拒绝)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte State { get; set; }
|
||||
|
||||
[ForeignKey("Userld")]
|
||||
[InverseProperty("LoginLogs")]
|
||||
public virtual User UserldNavigation { get; set; } = null!;
|
||||
}
|
||||
72
backend/IM_API/Models/Message.cs
Normal file
72
backend/IM_API/Models/Message.cs
Normal file
@ -0,0 +1,72 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("messages")]
|
||||
[Index("Sender", Name = "Sender")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Message
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 聊天类型
|
||||
/// (0:私聊,1:群聊)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte ChatType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 消息类型
|
||||
/// (0:文本,1:图片,2:语音,3:视频,4:文件,5:语音聊天,6:视频聊天)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte MsgType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 消息内容
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Content { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 发送者
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Sender { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 接收者(私聊为用户ID,群聊为群聊ID)
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Recipient { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 消息状态(0:已发送,1:已撤回)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte State { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 发送时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Created { get; set; }
|
||||
|
||||
[InverseProperty("LastMessage")]
|
||||
public virtual ICollection<Conversation> Conversations { get; set; } = new List<Conversation>();
|
||||
|
||||
[InverseProperty("MessageldNavigation")]
|
||||
public virtual ICollection<File> Files { get; set; } = new List<File>();
|
||||
|
||||
[ForeignKey("Sender")]
|
||||
[InverseProperty("Messages")]
|
||||
public virtual User SenderNavigation { get; set; } = null!;
|
||||
}
|
||||
52
backend/IM_API/Models/Notification.cs
Normal file
52
backend/IM_API/Models/Notification.cs
Normal file
@ -0,0 +1,52 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("notifications")]
|
||||
[Index("Userld", Name = "Userld")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Notification
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 接收人(为空为全体通知)
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Userld { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 通知类型(0:文本)
|
||||
/// </summary>
|
||||
[Column("NType", TypeName = "tinyint(4)")]
|
||||
public sbyte Ntype { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 通知标题
|
||||
/// </summary>
|
||||
[StringLength(40)]
|
||||
public string Title { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 通知内容
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Content { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Created { get; set; }
|
||||
|
||||
[ForeignKey("Userld")]
|
||||
[InverseProperty("Notifications")]
|
||||
public virtual User UserldNavigation { get; set; } = null!;
|
||||
}
|
||||
44
backend/IM_API/Models/Permission.cs
Normal file
44
backend/IM_API/Models/Permission.cs
Normal file
@ -0,0 +1,44 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("permissions")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Permission
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限类型(0:增,1:删,2:改,3:查)
|
||||
/// </summary>
|
||||
[Column("PType", TypeName = "int(11)")]
|
||||
public int Ptype { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限名称
|
||||
/// </summary>
|
||||
[StringLength(50)]
|
||||
public string Name { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 权限编码
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Code { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Created { get; set; }
|
||||
|
||||
[InverseProperty("PermissionldNavigation")]
|
||||
public virtual ICollection<Permissionarole> Permissionaroles { get; set; } = new List<Permissionarole>();
|
||||
}
|
||||
39
backend/IM_API/Models/Permissionarole.cs
Normal file
39
backend/IM_API/Models/Permissionarole.cs
Normal file
@ -0,0 +1,39 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("permissionarole")]
|
||||
[Index("Permissionld", Name = "Permissionld")]
|
||||
[Index("Roleld", Name = "Roleld")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Permissionarole
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 角色
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Roleld { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 权限
|
||||
/// </summary>
|
||||
[Column(TypeName = "int(11)")]
|
||||
public int Permissionld { get; set; }
|
||||
|
||||
[ForeignKey("Permissionld")]
|
||||
[InverseProperty("Permissionaroles")]
|
||||
public virtual Permission PermissionldNavigation { get; set; } = null!;
|
||||
|
||||
[ForeignKey("Roleld")]
|
||||
[InverseProperty("Permissionaroles")]
|
||||
public virtual Role RoleldNavigation { get; set; } = null!;
|
||||
}
|
||||
41
backend/IM_API/Models/Role.cs
Normal file
41
backend/IM_API/Models/Role.cs
Normal file
@ -0,0 +1,41 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("roles")]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class Role
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 角色名称
|
||||
/// </summary>
|
||||
[StringLength(20)]
|
||||
public string Name { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 角色描述
|
||||
/// </summary>
|
||||
[Column(TypeName = "text")]
|
||||
public string Description { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Created { get; set; }
|
||||
|
||||
[InverseProperty("Role")]
|
||||
public virtual ICollection<Admin> Admins { get; set; } = new List<Admin>();
|
||||
|
||||
[InverseProperty("RoleldNavigation")]
|
||||
public virtual ICollection<Permissionarole> Permissionaroles { get; set; } = new List<Permissionarole>();
|
||||
}
|
||||
117
backend/IM_API/Models/User.cs
Normal file
117
backend/IM_API/Models/User.cs
Normal file
@ -0,0 +1,117 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace IM_API.Models;
|
||||
|
||||
[Table("users")]
|
||||
[Index("Id", Name = "ID")]
|
||||
[Index("Username", Name = "Username", IsUnique = true)]
|
||||
[MySqlCharSet("utf8mb4")]
|
||||
[MySqlCollation("utf8mb4_general_ci")]
|
||||
public partial class User
|
||||
{
|
||||
[Key]
|
||||
[Column("ID", TypeName = "int(11)")]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 唯一用户名
|
||||
/// </summary>
|
||||
[StringLength(50)]
|
||||
public string Username { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 密码
|
||||
/// </summary>
|
||||
[StringLength(50)]
|
||||
public string Password { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 用户昵称
|
||||
/// </summary>
|
||||
[StringLength(50)]
|
||||
public string NickName { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// 用户在线状态
|
||||
/// 0(默认):不在线
|
||||
/// 1:在线
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte OlineStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 创建时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime Created { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 修改时间
|
||||
/// </summary>
|
||||
[Column(TypeName = "datetime")]
|
||||
public DateTime? Updated { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 账户状态
|
||||
/// (0:未激活,1:正常,2:封禁)
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 软删除标识
|
||||
/// 0:账号正常
|
||||
/// 1:账号已删除
|
||||
/// </summary>
|
||||
[Column(TypeName = "tinyint(4)")]
|
||||
public sbyte IsDeleted { get; set; }
|
||||
|
||||
[InverseProperty("User")]
|
||||
public virtual ICollection<Conversation> Conversations { get; set; } = new List<Conversation>();
|
||||
|
||||
[InverseProperty("User")]
|
||||
public virtual ICollection<Device> Devices { get; set; } = new List<Device>();
|
||||
|
||||
[InverseProperty("FriendldNavigation")]
|
||||
public virtual ICollection<Friend> FriendFriendldNavigations { get; set; } = new List<Friend>();
|
||||
|
||||
[InverseProperty("UserldNavigation")]
|
||||
public virtual ICollection<Friend> FriendUserldNavigations { get; set; } = new List<Friend>();
|
||||
|
||||
[InverseProperty("RequestUserNavigation")]
|
||||
public virtual ICollection<Friendrequest> FriendrequestRequestUserNavigations { get; set; } = new List<Friendrequest>();
|
||||
|
||||
[InverseProperty("ResponseUserNavigation")]
|
||||
public virtual ICollection<Friendrequest> FriendrequestResponseUserNavigations { get; set; } = new List<Friendrequest>();
|
||||
|
||||
[InverseProperty("InviteUserNavigation")]
|
||||
public virtual ICollection<Groupinvite> GroupinviteInviteUserNavigations { get; set; } = new List<Groupinvite>();
|
||||
|
||||
[InverseProperty("InvitedUserNavigation")]
|
||||
public virtual ICollection<Groupinvite> GroupinviteInvitedUserNavigations { get; set; } = new List<Groupinvite>();
|
||||
|
||||
[InverseProperty("GroupldNavigation")]
|
||||
public virtual ICollection<Groupmember> GroupmemberGroupldNavigations { get; set; } = new List<Groupmember>();
|
||||
|
||||
[InverseProperty("UserldNavigation")]
|
||||
public virtual ICollection<Groupmember> GroupmemberUserldNavigations { get; set; } = new List<Groupmember>();
|
||||
|
||||
[InverseProperty("GroupNavigation")]
|
||||
public virtual ICollection<Grouprequest> Grouprequests { get; set; } = new List<Grouprequest>();
|
||||
|
||||
[InverseProperty("GroupMasterNavigation")]
|
||||
public virtual ICollection<Group> Groups { get; set; } = new List<Group>();
|
||||
|
||||
[InverseProperty("UserldNavigation")]
|
||||
public virtual ICollection<LoginLog> LoginLogs { get; set; } = new List<LoginLog>();
|
||||
|
||||
[InverseProperty("SenderNavigation")]
|
||||
public virtual ICollection<Message> Messages { get; set; } = new List<Message>();
|
||||
|
||||
[InverseProperty("UserldNavigation")]
|
||||
public virtual ICollection<Notification> Notifications { get; set; } = new List<Notification>();
|
||||
}
|
||||
@ -1,4 +0,0 @@
|
||||
// <autogenerated />
|
||||
using System;
|
||||
using System.Reflection;
|
||||
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]
|
||||
@ -1,24 +0,0 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Reflection;
|
||||
|
||||
[assembly: Microsoft.Extensions.Configuration.UserSecrets.UserSecretsIdAttribute("3f396849-59bd-435f-a0cb-351ec0559e70")]
|
||||
[assembly: System.Reflection.AssemblyCompanyAttribute("IM_API")]
|
||||
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+5ac2a859f072f36c9a26b6a0ae100926ce361737")]
|
||||
[assembly: System.Reflection.AssemblyProductAttribute("IM_API")]
|
||||
[assembly: System.Reflection.AssemblyTitleAttribute("IM_API")]
|
||||
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||
|
||||
// 由 MSBuild WriteCodeFragment 类生成。
|
||||
|
||||
@ -1 +0,0 @@
|
||||
ecdfe90ee262639f8d7c4eb34d36c17cf3984ff8a0ebd0c562bbe56091dd7da2
|
||||
@ -1,21 +0,0 @@
|
||||
is_global = true
|
||||
build_property.TargetFramework = net8.0
|
||||
build_property.TargetPlatformMinVersion =
|
||||
build_property.UsingMicrosoftNETSdkWeb = true
|
||||
build_property.ProjectTypeGuids =
|
||||
build_property.InvariantGlobalization =
|
||||
build_property.PlatformNeutralAssembly =
|
||||
build_property.EnforceExtendedAnalyzerRules =
|
||||
build_property._SupportedPlatformList = Linux,macOS,Windows
|
||||
build_property.RootNamespace = IM_API
|
||||
build_property.RootNamespace = IM_API
|
||||
build_property.ProjectDir = C:\Users\nanxun\Documents\IM\backend\IM_API\
|
||||
build_property.EnableComHosting =
|
||||
build_property.EnableGeneratedComInterfaceComImportInterop =
|
||||
build_property.RazorLangVersion = 8.0
|
||||
build_property.SupportLocalizedComponentNames =
|
||||
build_property.GenerateRazorMetadataSourceChecksumAttributes =
|
||||
build_property.MSBuildProjectDirectory = C:\Users\nanxun\Documents\IM\backend\IM_API
|
||||
build_property._RazorSourceGeneratorDebug =
|
||||
build_property.EffectiveAnalysisLevelStyle = 8.0
|
||||
build_property.EnableCodeStyleSeverity =
|
||||
@ -1,17 +0,0 @@
|
||||
// <auto-generated/>
|
||||
global using global::Microsoft.AspNetCore.Builder;
|
||||
global using global::Microsoft.AspNetCore.Hosting;
|
||||
global using global::Microsoft.AspNetCore.Http;
|
||||
global using global::Microsoft.AspNetCore.Routing;
|
||||
global using global::Microsoft.Extensions.Configuration;
|
||||
global using global::Microsoft.Extensions.DependencyInjection;
|
||||
global using global::Microsoft.Extensions.Hosting;
|
||||
global using global::Microsoft.Extensions.Logging;
|
||||
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.Net.Http.Json;
|
||||
global using global::System.Threading;
|
||||
global using global::System.Threading.Tasks;
|
||||
Binary file not shown.
Binary file not shown.
@ -1 +0,0 @@
|
||||
{"GlobalPropertiesHash":"CTgS+cWYTbcaEAEp0gp2B6cHTV0srRdQzYydcF2wY5A=","FingerprintPatternsHash":"gq3WsqcKBUGTSNle7RKKyXRIwh7M8ccEqOqYvIzoM04=","PropertyOverridesHash":"8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=","InputHashes":["o/KWD0aNxlAqF51Di\u002BQMhbth5dV2eE0GsWviN/A7C5M=","1Co80OYN1AHERXdYjGVBC4OME7Ab4Ta6mjxvn8WvY5M="],"CachedAssets":{},"CachedCopyCandidates":{}}
|
||||
@ -1,87 +0,0 @@
|
||||
{
|
||||
"format": 1,
|
||||
"restore": {
|
||||
"C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj": {}
|
||||
},
|
||||
"projects": {
|
||||
"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": {
|
||||
"Microsoft.VisualStudio.Azure.Containers.Tools.Targets": {
|
||||
"target": "Package",
|
||||
"version": "[1.22.1, )"
|
||||
},
|
||||
"Swashbuckle.AspNetCore": {
|
||||
"target": "Package",
|
||||
"version": "[6.6.2, )"
|
||||
}
|
||||
},
|
||||
"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"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,25 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
|
||||
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
|
||||
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
|
||||
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
|
||||
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\nanxun\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
|
||||
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
|
||||
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.14.1</NuGetToolVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<SourceRoot Include="C:\Users\nanxun\.nuget\packages\" />
|
||||
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
|
||||
</ItemGroup>
|
||||
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.props" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.props')" />
|
||||
<Import Project="$(NuGetPackageRoot)swashbuckle.aspnetcore\6.6.2\build\Swashbuckle.AspNetCore.props" Condition="Exists('$(NuGetPackageRoot)swashbuckle.aspnetcore\6.6.2\build\Swashbuckle.AspNetCore.props')" />
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.visualstudio.azure.containers.tools.targets\1.22.1\build\Microsoft.VisualStudio.Azure.Containers.Tools.Targets.props" Condition="Exists('$(NuGetPackageRoot)microsoft.visualstudio.azure.containers.tools.targets\1.22.1\build\Microsoft.VisualStudio.Azure.Containers.Tools.Targets.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<PkgMicrosoft_Extensions_ApiDescription_Server Condition=" '$(PkgMicrosoft_Extensions_ApiDescription_Server)' == '' ">C:\Users\nanxun\.nuget\packages\microsoft.extensions.apidescription.server\6.0.5</PkgMicrosoft_Extensions_ApiDescription_Server>
|
||||
<PkgMicrosoft_VisualStudio_Azure_Containers_Tools_Targets Condition=" '$(PkgMicrosoft_VisualStudio_Azure_Containers_Tools_Targets)' == '' ">C:\Users\nanxun\.nuget\packages\microsoft.visualstudio.azure.containers.tools.targets\1.22.1</PkgMicrosoft_VisualStudio_Azure_Containers_Tools_Targets>
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.apidescription.server\6.0.5\build\Microsoft.Extensions.ApiDescription.Server.targets')" />
|
||||
<Import Project="$(NuGetPackageRoot)microsoft.visualstudio.azure.containers.tools.targets\1.22.1\build\Microsoft.VisualStudio.Azure.Containers.Tools.Targets.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.visualstudio.azure.containers.tools.targets\1.22.1\build\Microsoft.VisualStudio.Azure.Containers.Tools.Targets.targets')" />
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
@ -1,620 +0,0 @@
|
||||
{
|
||||
"version": 3,
|
||||
"targets": {
|
||||
"net8.0": {
|
||||
"Microsoft.Extensions.ApiDescription.Server/6.0.5": {
|
||||
"type": "package",
|
||||
"build": {
|
||||
"build/Microsoft.Extensions.ApiDescription.Server.props": {},
|
||||
"build/Microsoft.Extensions.ApiDescription.Server.targets": {}
|
||||
},
|
||||
"buildMultiTargeting": {
|
||||
"buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props": {},
|
||||
"buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets": {}
|
||||
}
|
||||
},
|
||||
"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.VisualStudio.Azure.Containers.Tools.Targets/1.22.1": {
|
||||
"type": "package",
|
||||
"build": {
|
||||
"build/Microsoft.VisualStudio.Azure.Containers.Tools.Targets.props": {},
|
||||
"build/Microsoft.VisualStudio.Azure.Containers.Tools.Targets.targets": {}
|
||||
}
|
||||
},
|
||||
"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.props": {}
|
||||
}
|
||||
},
|
||||
"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"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"libraries": {
|
||||
"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.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.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"
|
||||
]
|
||||
},
|
||||
"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"
|
||||
]
|
||||
}
|
||||
},
|
||||
"projectFileDependencyGroups": {
|
||||
"net8.0": [
|
||||
"Microsoft.VisualStudio.Azure.Containers.Tools.Targets >= 1.22.1",
|
||||
"Swashbuckle.AspNetCore >= 6.6.2"
|
||||
]
|
||||
},
|
||||
"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\\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": {
|
||||
"Microsoft.VisualStudio.Azure.Containers.Tools.Targets": {
|
||||
"target": "Package",
|
||||
"version": "[1.22.1, )"
|
||||
},
|
||||
"Swashbuckle.AspNetCore": {
|
||||
"target": "Package",
|
||||
"version": "[6.6.2, )"
|
||||
}
|
||||
},
|
||||
"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"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,16 +0,0 @@
|
||||
{
|
||||
"version": 2,
|
||||
"dgSpecHash": "sPkaomFyhxE=",
|
||||
"success": true,
|
||||
"projectFilePath": "C:\\Users\\nanxun\\Documents\\IM\\backend\\IM_API\\IM_API.csproj",
|
||||
"expectedPackageFiles": [
|
||||
"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.openapi\\1.6.14\\microsoft.openapi.1.6.14.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\\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"
|
||||
],
|
||||
"logs": []
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user