Dhe*_*iri 3 .net c# linq mongodb mongodb-.net-driver
我使用的是MongoDb 2.4.9版本.当我尝试将字符串列表转换为Bson数组时,我最终会出现以下错误:
BsonArray bArray = new BsonArray();
foreach (var term in termMonitorIds)
{
bArray.Add(term.ToBson());
}
Run Code Online (Sandbox Code Playgroud)
'/'应用程序中的服务器错误.
String值无法写入BSON文档的根级别.
描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.
异常详细信息:System.InvalidOperationException:无法将String值写入BSON文档的根级别.
编辑
当我在下面的LINQ查询中使用它时:
entities =
(from e in this.collection.AsQueryable<SocialRecord>()
where sources.Contains(e.SocialType) && (e.DateCreated >= fr) && (e.DateCreated <= to) && e.TermMonitorIds.Any(X=> bArray.Contains(X)) && e.IsExactMatch == isInstagramExactMatch
select e)
.Take(5000)
.ToList();
Run Code Online (Sandbox Code Playgroud)
结果值不能为空.参数名称:名称.仅当我将bArray添加到查询时才会出现此错误消息.
你不需要调用ToBson.有已经从一个隐式转换string到BsonValue.使用ToBson实际生成bson,这可能不是你的目标:
BsonArray bArray = new BsonArray();
foreach (var term in termMonitorIds)
{
bArray.Add(term));
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8035 次 |
| 最近记录: |