我在获取Microsoft.Azure.Documents库以初始化Azure辅助角色中的客户端时遇到问题。我正在使用Nuget Package 0.9.1-preview。Azure文档Db工作者角色
我曾模仿什么在example for azure document
做当通过模拟器在本地运行,我可以用documentdb正常连接并运行正常。在worker角色中运行时,我得到一系列的NullReferenceException,然后是ArgumentNullException。
是上文所强调的底部System.NullReferenceException有这个调用堆栈
所以NullReferenceException异常在新DocumentClient此调用启动。本地运行它VS其他辅助角色,那么环境(显然)之间
var endpoint = "myendpoint";
var authKey = "myauthkey";
var enpointUri = new Uri(endpoint);
DocumentClient client = new DocumentClient(endpointUri, authKey);
没有什么变化。
有没有人得到DocumentDb工作的工作者角色或没有人有一个想法,为什么它会抛出空引用异常?传入DocumentClient()的参数已填充。
更新: 我试图重写它是更通用的,至少让工作者角色运行,让我连接调试器。它在新的DocumentClient上抛出错误。似乎有些安全传递为空。初始化时所需的参数都不为空。是否有需要更改我的工作者角色以便能够连接到我的documentdb的安全设置? (仍然工作在当地罚款)
更新2: 我可以得到实例在发布模式下运行,但没有调试模式。所以这肯定是某些安全设置或存储设置的错误配置,我猜?
看来我得到System.Security.SecurityExceptions - 只有在使用DocumentDb时 - 队列不会给我那个错误。所有调用堆栈的错误似乎与System.Diagnostics.EventLog。我在Intellitrace摘要中看到的第一个异常是System.Threading.WaitHandleCannotBeOpenedException。
更多信息 的IntelliTrace摘要异常数据:
顶部是最早和底部是最新的(所以System.Security.SecurityException首先发生则NullReference)
你在哪里试图启动DocumentClient?在OnStart中,循环中运行同步? 另外,您的配置设置存储在哪里? 如果您部署到Azure,请确保配置设置位于正确的cscfg文件中(即不在app.config中) – 2014-12-05 02:13:00