【发布时间】:2022-01-16 12:52:35
【问题描述】:
我有一个如下模型:
[BsonIgnoreExtraElements]
public class MongoDbLogModel
{
public string Level { get; set; }
public string RenderedMessage { get; set; }
[BsonDateTimeOptions(Kind = DateTimeKind.Local)]
public DateTime? Timestamp { get; set; }
[BsonDateTimeOptions(Kind = DateTimeKind.Local)]
public DateTime UtcTimeStamp { get; set; }
public dynamic Properties { get; set; }
public dynamic Exception { get; set; }
}
这是 JSON 模型:
{
"_id": { "$oid": "61a8dadd1ab0e48d55b06626" },
"Level": "Error",
"UtcTimeStamp": { "$date": "2021-12-02T14:40:30.436Z" },
"MessageTemplate": {...},
"RenderedMessage": "",
"Properties": {...},
"Exception": {
"_t": "SqlException",
"HelpLink": null,
"Source": "Core Microsoft SqlClient Data Provider",
"HResult": -2146232060,
"Message": "Invalid object name 'SystemControlLogs'.",
"StackTrace": " at Microsoft.Data.SqlClien",
"Data": {...}
}
}
这里是my code 获取日志数据:
var logs = await _collection
.Find(builder)
.Skip(count * page)
.Limit(count)
.SortByDescending(entry => entry.Timestamp)
.ToListAsync();
我在反序列化数据时遇到Unknown discriminator value "SqlException" 异常。有什么方法可以不为Exception 属性创建模型来消除该异常? (我试过BsonClassMap.RegisterClassMap<MongoDbLogModel>();,但没有运气)。
【问题讨论】:
-
您的 JSON 末尾是否有太多
}? -
嗨 Mohsen :) 你达到了 10k
标签: c# mongodb mongodb-.net-driver