namespace MiGu.DB.Abstractions.Exceptions; public sealed class ConcurrencyConflictException : Exception { public string EntityType { get; } public object? EntityId { get; } public long? ExpectedVersion { get; } public ConcurrencyConflictException(string entityType, object? entityId, long? expectedVersion = null) : base("数据已被其他用户修改,请刷新后重试") { EntityType = entityType; EntityId = entityId; ExpectedVersion = expectedVersion; } } public sealed class EntityLockedException : Exception { public string EntityType { get; } public object? EntityId { get; } public EntityLockedException(string entityType, object? entityId) : base("数据已锁定,不能修改") { EntityType = entityType; EntityId = entityId; } } public sealed class EntityNotFoundException : Exception { public string EntityType { get; } public object? EntityId { get; } public EntityNotFoundException(string entityType, object? entityId) : base("数据不存在") { EntityType = entityType; EntityId = entityId; } }