如何使用C#驱动程序在mongodb中实现自动增量ID?

时间:2018-02-09 14:07:31

标签: c# mongodb auto-increment

我试图实现这个并且它在MongoDB shell中工作,但是如何将属性id设置为要调用的js存储过程的值?我尝试过的每件事都以id属性中的js函数名称保存为字符串。

我为id创建了自定义序列化程序:

public class MyIdSerializer : SerializerBase<Int64>
        {
            public override void Serialize(BsonSerializationContext context, BsonSerializationArgs args, Int64 value)
            {
                if (value == 0)              {
context.Writer.WriteString($"getValueForNextSequence(\"myCollection\")");
                }
                else
                    context.Writer.WriteInt64(value);
            }
        }

如果值id(即:插入新文档),我只需要设置0值。

此代码将函数名称存储为字符串,不会执行它。

0 个答案:

没有答案