问题标签 [azure-cosmosdb-sqlapi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure - Azure cosmos db 在 c# 代码中的 RequestContinuation 中提供转义字符
这里token
和maxItemCount
是参数。
上面的查询在下面用作IQueryable<T>
查询。
收到带有 excape 字符串的令牌。
提前致谢。
azure-cosmosdb - 问题将 0.0 保存到 cosmosdb double 到 int
使用 cosmosdb 作为存储我遇到了一个问题。我保存了一个对象,其中一个属性设置为 0.0(尝试使用双精度、十进制和浮点数)。后来检索到该值时,它是 0,而不是精度 0.0。如果我将它设置为 0.1 或 2.1 之类的东西,一切都会按我预期的那样工作。
有人可以解释为什么会这样吗?对于我的数据的使用,我需要它是 0.0。
此致
azure - 将数据从 SQL 数据库迁移到 Azure Cosmos DB 模拟器时,Cosmos 数据迁移工具引发错误
我正在尝试将数据从 SQL 数据库导入到 Cosmos Db,但由于服务当前不可用,它会引发错误。我不知道为什么它会显示此错误。Azure Cosmos DB 模拟器也已开启。错误如下
$ Microsoft.Azure.Documents.ServiceUnavailableException:服务当前不可用。ActivityId:9b40c18a-28ed-4945-b356-abaac18a1139 ---> Microsoft.Azure.Documents.GoneException:请求的资源在服务器上不再可用。ActivityId: 9b40c18a-28ed-4945-b356-abaac18a1139 在 Microsoft.Azure.Documents.StoreReader.d__5.MoveNext() --- 堆栈跟踪从先前抛出异常的位置结束---在 System.Runtime.ExceptionServices.ExceptionDispatchInfo .Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.Azure.Documents.QuorumReader.d__26.MoveNext() --- 从先前抛出异常的位置结束堆栈跟踪---在System.Runtime.CompilerServices 处的 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()。1.<>c__DisplayClassd
1.<b__c>d__f.MoveNext() --- 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)在 Microsoft.Azure.Documents.BackoffRetryUtility 1.<ExecuteRetry>d__16.MoveNext()
--- End of inner exception stack trace ---
at Microsoft.Azure.Documents.BackoffRetryUtility
1.d__16.MoveNext() --- 从先前抛出异常的位置结束堆栈跟踪 --- 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System. Microsoft.Azure.Documents.BackoffRetryUtility 上的 Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)1.<ExecuteAsync>d__12
1.MoveNext() --- 从先前引发异常的位置结束堆栈跟踪 --- 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 的 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 Microsoft .Azure.Documents.ReplicatedResourceClient.d__7.MoveNext() --- 在 System.Runtime.CompilerServices.TaskAwaiter 的 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 处从先前引发异常的位置结束堆栈跟踪。 Microsoft.Azure.Documents.StoreClient.d__0.MoveNext() 处的 HandleNonSuccessAndDebuggerNotification(Task task) --- 从先前引发异常的位置结束堆栈跟踪 --- 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System .Runtime.CompilerServices.TaskAwaiter。Microsoft.Azure.Documents.Client.DocumentClient.d__2e9.MoveNext() 处的 HandleNonSuccessAndDebuggerNotification(Task task) --- 从先前引发异常的位置结束堆栈跟踪 --- 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 Microsoft.Azure.Documents.Query.DocumentQueryClient.d__a.MoveNext() --- 堆栈跟踪从先前抛出异常的位置结束---在 System. Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 Microsoft.Azure.Documents.Query.DocumentQueryExecutionContextBase.d__11。MoveNext() --- 从先前引发异常的位置结束堆栈跟踪 --- 在 Microsoft.Azure 的 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 的 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() .Documents.Query.DocumentQueryExecutionContextBase.d__e.MoveNext() --- 在 System.Runtime.CompilerServices.TaskAwaiter 的 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 处从先前引发异常的位置结束堆栈跟踪。 Microsoft.Azure.Documents.Query.DefaultDocumentQueryExecutionContext.d__3.MoveNext() 处的 HandleNonSuccessAndDebuggerNotification(Task task) --- 从先前引发异常的位置结束堆栈跟踪 --- 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()在 System.Runtime。Microsoft.Azure.Documents.BackoffRetryUtility 上的 CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)1.<>c__DisplayClass2.<<ExecuteAsync>b__1>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Azure.Documents.BackoffRetryUtility
1.d__16.MoveNext() --- 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 的 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 上的异常抛出位置结束堆栈跟踪在 Microsoft.Azure.Documents.BackoffRetryUtility 1.<ExecuteAsync>d__7.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Azure.Documents.Query.DocumentQueryExecutionContextBase.<ExecuteWithRetryPolicy>d__1b.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Azure.Documents.Query.DefaultDocumentQueryExecutionContext.<ExecuteInternalAsync>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Azure.Documents.Query.DocumentQueryExecutionContextBase.<ExecuteNextAsync>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.Azure.Documents.Linq.DocumentQuery
1.d__171.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.DataTransfer.DocumentDb.Client.DocumentQueryExtensions.<FirstOrDefault>d__0
1.MoveNext() in f:_Bld\12470\6357\Sources_repo\DocumentDb\Microsoft.DataTransfer.DocumentDb\Client\DocumentQueryExtensions.cs:line 0 --- 堆栈跟踪从上一个引发异常的位置结束---在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 Microsoft.DataTransfer.DocumentDb.Client.DocumentDbClient.d__26.MoveNext() 在 f:_Bld\12470\6357\ Sources_repo\DocumentDb\Microsoft.DataTransfer.DocumentDb\Client\DocumentDbClient.cs:第 185 行 --- 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 处从引发异常的先前位置结束堆栈跟踪。 Microsoft.DataTransfer 上的 Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)。DocumentDb.Client.DocumentDbClient.d__2.MoveNext() in f:_Bld\12470\6357\Sources_repo\DocumentDb\Microsoft.DataTransfer.DocumentDb\Client\DocumentDbClient.cs:line 46 --- 堆栈跟踪从先前位置结束异常被抛出 --- 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 在 Microsoft.DataTransfer.DocumentDb.Sink.Parallel.DocumentDbParallelSinkAdapter.d__0.MoveNext() 的 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() f:_Bld\12470\6357\Sources_repo\DocumentDb\Microsoft.DataTransfer.DocumentDb\Sink\Parallel\DocumentDbParallelSinkAdapter.cs:line 0 --- 在 System.Runtime 处从先前引发异常的位置结束堆栈跟踪。 System.Runtime.CompilerServices.TaskAwaiter 处的 ExceptionServices.ExceptionDispatchInfo.Throw()。HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.DataTransfer.DocumentDb.Sink.Parallel.DocumentDbParallelSinkAdapterInternalFactory.d__0.MoveNext() in f:_Bld\12470\6357\Sources_repo\DocumentDb\Microsoft.DataTransfer.DocumentDb\Sink\Parallel\DocumentDbParallelSinkAdapterInternalFactory.cs:第 30 行 --- 从先前引发异常的位置结束堆栈跟踪 --- 在 Microsoft.DataTransfer 的 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 的 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()。 Core.Service.DataTransferService.d__9.MoveNext() in f:_Bld\12470\6357\Sources_repo\Core\Microsoft.DataTransfer.Core\Service\DataTransferService.cs:line 70 --- 堆栈跟踪从先前位置结束异常被抛出 --- 在 System.Runtime。ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.DataTransfer.WpfHost.Steps.Import.ImportStep.d__8.MoveNext() in f:_Bld\12470\6357\Sources_repo\ Wpf\Microsoft.DataTransfer.WpfHost\Steps\Import\ImportStep.cs:第 73 行
c# - 在 CosmosDb 上的 Linq.Where() 中使用 Linq.Any()
我正在尝试在子句中嵌套一个.Any()
来.Where()
查询本地 CosmosDb 模拟器。
代码如下所示;其中permittedStundentIds
是变量 ( List<long>
) 并且a
是Document
CosmosDb 中的
当我执行查询时,我收到错误:
不支持方法“任何”。ActivityId:800000a8-0002-d600-b63f-84710c7967bb,documentdb-dotnet-sdk/1.22.0 主机/64位MicrosoftWindowsNT/10.0.16299.0
我尝试了多种变体来获得等效的表达式,但无济于事。唯一有效的方法是.Contains()
对学生索引进行硬编码;这是不可行的,因为学生人数可能不知道。
我确实了解 CosmosDb 的 Sql API 尚不支持某些 lambda 扩展,但是有解决方法吗?
azure-cosmosdb - Cosmos DB 存储过程、UDF 和可重用代码 - 它们如何组合在一起?
我有很多问题:)
我已经开始使用 Cosmos DB (SQL API)。爱它!
但我正在努力寻找构建和管理代码的最佳方式。我正在使用 Visual Studio。
这是一些代码,我将根据这 4 个 javascript 函数提出问题:
在我的解决方案中,这 4 个函数位于 4 个不同的 .js 文件中。我会将前 3 个部署为我的集合中他们自己的用户定义函数。最后,我将部署为存储过程。
我的应用程序将执行“processYay”存储过程来执行一些操作。UDF 是支持性的。
问题:
- 我可以直接从存储过程中调用 UDF,就像我在上面的“processYay”中所做的那样吗?或者它们只能作为查询的一部分访问?
- 我可以像在“createYayDoc”中那样从另一个 UDF 调用 UDF 吗?
- UDF 可以“抛出”还是在这种情况下被认为是副作用?
如果答案是“nope”、“nope”和“nope”,似乎还有另一种解决方案:在存储过程本身内部定义函数。它会像这样完美地工作:
但是之后...
如何重用代码?
我的 javascript 位于 .NET 类库中。我喜欢“#include”技巧:)。我是否与 webpack 等一起破解某些东西?
或者......人们使用一些公认的方法吗?
azure-cosmosdb - Azure Cosmos DB (SQL API) 中非常简单的查询的高请求费用
在 Azure Cosmos DB (SQL API) 中,以下查询收取9356.66 RU 的费用:
相比之下,以下更复杂的查询仅收取6.84 RU 的费用:
这两个示例中的文档都非常小,具有少量属性。此外,文档集合不使用任何自定义索引策略。该集合包含 105685 个文档。
对我来说,这听起来好像“id”字段上没有正常工作的索引。
这怎么可能,如何解决?
更新:
- 如果没有 TOP 关键字,第二个查询会收取 3516.35 RU 的费用并返回 100000 条记录。
- 分区键为“/partition”,其值为 0 或 1(均匀分布)。
azure - cosmosdb CreateDocumentChangeFeedQuery ChangeFeedOption StartTime 不返回文档
我正在尝试获取自上次运行以来更改的文档。当我设置 ChangeFeed 选项 StartTime 时,我没有得到任何行。当我设置 StartFromBeginning 时,我正在获取文档。
var temp = query.ExecuteNextAsync().GetAwaiter().GetResult();
c# - 在单个查询中从 CosmosDb 中获取多种类型的实体
我正在尝试使用 sql API 从 CosmosDb 中的集合中获取所有类型的实体。但我只得到BaseClass
实体而不是特定的类实体。
这是我的模型:
这是当前的查询:
我最终得到的是一个List<ActivityBase>
.
我需要的是一个List<ActivityBase>
包含特定实体的Running
,Dancing
而不仅仅是基类对象。有没有办法在查询本身中指定它?
azure-cosmosdb-sqlapi - 使用 IN 子句参数化 CosmosDB 查询
我正在寻找任何工作方式来参数化查询中的 IN 子句。我已经尝试过这样的事情,但没有工作。
为了创建这个"(@Shipper0, @Shipper1)"
,做了一些 c# 编码。没有参数相同的查询工作正常。
工作查询:==>
提前致谢。
c# - 查询 Azure Cosmos DB 时并非所有属性都已映射
我希望将 Azure CosmosDB 集成到我们的项目中。我为自己设定的目标是创建一个常见问题解答部分。我已经创建了表格,还添加了三个带有一些示例数据的集合。但是,在查询时,我可以看到并非所有属性都是从 JSON 开始映射的,因此我的查询没有给出任何结果。
我的模型类看起来像这样;
基础文档数据库实体
常见问题组
常见问题解答部分
FAQ问题
我知道 CosmosDB 不是关系数据库类型。但是,如果我正确理解这篇文章,它应该是有可能的。
我的示例数据像这样存储在 CosmosDB 中;
团体:
部分:
问题:
我在 microsoft 文档中使用这篇文章作为参考。但我无法弄清楚为什么有些属性被填充而有些则没有。这就是我从我的存储库中得到的;
GroupId 和 Title 字段都不包含任何数据。我无法理解它。感觉很明显。有人知道吗?
更新
更新 2