C#MongoDB Upsert-&x27;BsonValue(Guid)已过时:';改用BsonBinaryData构造函数并指定Guid表示形式';

C#MongoDB Upsert-&x27;BsonValue(Guid)已过时:';改用BsonBinaryData构造函数并指定Guid表示形式';,c#,mongodb,guid,upsert,obsolete,C#,Mongodb,Guid,Upsert,Obsolete,我是MongoDB的新手,正在尝试创建一个Upsert: public void UpsertRecord<T>(string collectionName, Guid id, T record) { var collection = db.GetCollection<T>(collectionName); var result = collection.ReplaceOne( new BsonDocume

我是MongoDB的新手,正在尝试创建一个Upsert:

public void UpsertRecord<T>(string collectionName, Guid id, T record)
    {
        var collection = db.GetCollection<T>(collectionName);

        var result = collection.ReplaceOne(
            new BsonDocument("_id", id),
            record,
            new ReplaceOptions { IsUpsert = true });
    }
public void UpsertRecord(字符串集合名称、Guid id、T记录)
{
var collection=db.GetCollection(collectionName);
var result=collection.ReplaceOne(
新的B文件(“id”,id),
记录,
新的替换选项{IsUpsert=true});
}
但我在Visual Studio中收到以下警告:

'BsonValue.implicit运算符BsonValue(Guid)已过时:请使用 而不是BsonBinaryData构造函数,并指定Guid表示形式'


任何帮助都将不胜感激

我可以用这种方式修复它:

public void UpsertRecord<T>(string table, Guid id, T record)
    {
        BsonBinaryData binData = new BsonBinaryData(id, GuidRepresentation.Standard);
        var collection = db.GetCollection<T>(table);

        var result = collection.ReplaceOne(
            new BsonDocument("_id", binData),
            record,
            new ReplaceOptions { IsUpsert = true });
    }
public void UpsertRecord(字符串表、Guid id、T记录)
{
BsonBinaryData binData=新的BsonBinaryData(id,GuidRepresentation.Standard);
var collection=db.GetCollection(表);
var result=collection.ReplaceOne(
新的B文件(“id”,binData),
记录,
新的替换选项{IsUpsert=true});
}