using MongoDB.Driver;
using System;
/// <summary>
/// The result of a delete operation.
/// </summary>
public abstract class DeleteResult
{
/// <summary>
/// The result of an acknowledged delete operation.
/// </summary>
public class Acknowledged : DeleteResult
{
private readonly long _deletedCount;
/// <inheritdoc />
public override long DeletedCount => _deletedCount;
/// <inheritdoc />
public override bool IsAcknowledged => true;
/// <summary>
/// Initializes a new instance of the <see cref="T:MongoDB.Driver.DeleteResult.Acknowledged" /> class.
/// </summary>
/// <param name="deletedCount">The deleted count.</param>
public Acknowledged (long deletedCount);
}
/// <summary>
/// The result of an unacknowledged delete operation.
/// </summary>
public class Unacknowledged : DeleteResult
{
private static Unacknowledged __instance = new Unacknowledged ();
/// <summary>
/// Gets the instance.
/// </summary>
public static Unacknowledged Instance => __instance;
/// <inheritdoc />
public override long DeletedCount {
get;
}
/// <inheritdoc />
public override bool IsAcknowledged => false;
private Unacknowledged ();
}
/// <summary>
/// Gets the deleted count. If IsAcknowledged is false, this will throw an exception.
/// </summary>
public abstract long DeletedCount {
get;
}
/// <summary>
/// Gets a value indicating whether the result is acknowledged.
/// </summary>
public abstract bool IsAcknowledged {
get;
}
internal static DeleteResult FromCore (BulkWriteResult result);
}
上面的 Acknowleged 继承于 DeleteResult 可以是为啥要写到 DeleteResult 之中?岂不是造成循环了?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.