我想在BsonDocument
中添加字段和值var bsonTypeValue = "Date";
var fieldValue = "2014-04-24T16:42:26";
BsonType bsonType;
const bool IgnoreCase = true;
if (Enum.TryParse(bsonTypeValue, IgnoreCase, out bsonType))
{
var x = BsonValue.Create(fieldValue);
doc[fieldName] = x;
}
但是如何指定BsonType x是什么? x.BsonType是只读的。
上面的示例是硬编码的,但我要做的是让bsonTypeValue和fieldValue来自配置文件,所以如果可能的话,我宁愿不编写大的if / else或switch语句。< / p>
答案 0 :(得分:0)
看起来BsonTypeMapper.MapToBsonValue()
就是我想要的。所以现在我的代码看起来像这样:
var bsonTypeValue = "DateTime";
var fieldValue = "2014-04-24T16:42:26";
BsonType bsonType;
const bool IgnoreCase = true;
if (Enum.TryParse(bsonTypeValue, IgnoreCase, out bsonType))
{
var x = BsonTypeMapper.MapToBsonValue(fieldValue, bsonType);
doc[fieldName] = x;
}