IM/backend/IM_API/Models/ImContext.Custom.cs
nanxun 58bc8b4b5a 前端:
1、优化消息排序逻辑
2、新增加载历史消息
3、修复已知问题
后端:
1、优化消息排序逻辑
2、增加用户信息缓存机制
3、修改日期类型为DateTimeOffset改善时区信息丢失问题
3、修复了已知问题
数据库:
1、新增SequenceId字段用于消息排序
2、新增ClientMsgId字段用于客户端消息回执
2026-02-07 22:37:56 +08:00

101 lines
2.6 KiB
C#

using Microsoft.EntityFrameworkCore;
namespace IM_API.Models
{
public partial class ImContext
{
partial void OnModelCreatingPartial(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Admin>(entity =>
{
entity.Ignore(e => e.StateEnum);
});
modelBuilder.Entity<User>(entity =>
{
entity.Ignore(e => e.OnlineStatusEnum);
entity.Ignore(e => e.StatusEnum);
entity.HasQueryFilter(e => e.IsDeleted == 0);
});
modelBuilder.Entity<Conversation>(entity =>
{
entity.Ignore(e => e.ChatTypeEnum);
});
modelBuilder.Entity<Device>(entity =>
{
entity.Ignore(e => e.DtypeEnum);
});
modelBuilder.Entity<File>(entity =>
{
});
modelBuilder.Entity<Friend>(entity =>
{
entity.Ignore(e => e.StatusEnum);
});
modelBuilder.Entity<FriendRequest>(entity =>
{
entity.Ignore(e => e.StateEnum);
});
modelBuilder.Entity<Group>(entity =>
{
entity.Ignore(e => e.StatusEnum);
entity.Ignore(e => e.AllMembersBannedEnum);
entity.Ignore(e => e.AuhorityEnum);
});
modelBuilder.Entity<GroupInvite>(entity =>
{
entity.Ignore(e => e.StateEnum);
});
modelBuilder.Entity<GroupMember>(entity =>
{
entity.Ignore(e => e.RoleEnum);
});
modelBuilder.Entity<GroupRequest>(entity =>
{
entity.Ignore(e => e.StateEnum);
});
modelBuilder.Entity<LoginLog>(entity =>
{
entity.Ignore(e => e.StateEnum);
});
modelBuilder.Entity<Message>(entity =>
{
entity.Ignore(e => e.StateEnum);
entity.Ignore(e => e.MsgTypeEnum);
entity.Ignore(e => e.ChatTypeEnum);
});
modelBuilder.Entity<Notification>(entity =>
{
});
modelBuilder.Entity<Permission>(entity =>
{
});
modelBuilder.Entity<Permissionarole>(entity =>
{
});
modelBuilder.Entity<Role>(entity =>
{
});
}
}
}