我想查询 DocumentDB 数据库中的文档。我想使用 LINQ 处理 DocumentDB 查询并想要查询 facebookUsername 字段。
如果我使用下面的代码来查询标准 Id 字段,它工作正常,但是当我尝试使用 facebookUsername 字段执行此操作时,我收到一个编译错误,内容为
“‘Microsoft.Azure.Documents.Document’不包含定义
对于“facebookUsername”且没有扩展方法“facebookUsername”
接受类型的第一个参数
可以找到“Microsoft.Azure.Documents.Document”(您是否缺少
使用指令或程序集引用?)”
这是我当前用于按 Id 查询的代码,它有效。我只想能够查询 facebookUsername 字段。
dynamic doc = (from f in client.CreateDocumentQuery(collection.DocumentsLink)
where f.Id == myId.ToString()
select f).AsEnumerable().FirstOrDefault();
如何修改代码以通过 facebookUsername 字段进行查询?
var families = from f in client.CreateDocumentQuery<Family>(colSelfLink)
where f.Address.City != "NY"
select f;
将为您提供一个列表,其中 Family: { "Address" : {"City": "NY"} } }
在我的例子中,如果您没有像 Family 这样的对象,那么您就无法使用 Linq 来评估动态对象上的查询。然后您需要使用 SQL 查询语法。
var families = client.CreateDocumentQuery<Family>(colSelfLink. "SELECT * FROM c WHERE field=value").AsEnumnerable();
应该管用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)