using System;
using System.Threading;
using System.Threading.Tasks;
using Dpz.Core.Entity.Base;
using MongoDB.Driver;
namespace Dpz.Core.MongodbAccess;
/// <summary>
/// MongoDB 索引初始化服务。
/// </summary>
public interface IMongoIndexInitializer
{
/// <summary>
/// 同步实体对应集合索引与代码定义(缺失则创建,漂移则重建)。
/// </summary>
Task SynchronizeAsync<T>(
IMongoCollection<T> collection,
CancellationToken cancellationToken = default
)
where T : IBaseEntity;
/// <summary>
/// 根据运行时实体类型同步索引与代码定义。
/// </summary>
Task SynchronizeForTypeAsync(
Type entityType,
string connectionString,
CancellationToken cancellationToken = default
);
/// <summary>
/// 重置初始化状态
/// </summary>
Task ResetAsync(CancellationToken cancellationToken = default);
}
AI 正在分析代码…
评论加载中...