【发布时间】:2013-04-04 07:49:04
【问题描述】:
我在尝试调用 Adobe Livecyle Soap 服务时收到以下错误:
值不能为空。参数名称:uri
奇怪的是我没有任何名为“uri”的参数。我无法调试此错误,因为该服务甚至无法启动。错误消息是我所拥有的。
这是我传递参数的代码:
BasicHttpBinding binding =
new BasicHttpBinding(BasicHttpSecurityMode.Transport);
binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Basic;
LetterService.LETTER_APPLICATIONS_Client client =
new LetterService.LETTER_APPLICATIONS_Client(
binding,
new EndpointAddress(
System.Configuration.ConfigurationManager.AppSettings["URL"]));
【问题讨论】:
-
您必须出示您的代码。该错误意味着您调用的方法已为其 'uri' 参数传递了一个 null 值。
-
您可以编辑您的问题以添加更多详细信息。如果您想共享代码,这将非常有用,因为您可以使用
{}按钮对其进行格式化——您无法在 cmets 中做好代码格式化工作。编辑链接位于标签下方的左下方。 -
几乎可以肯定是
EndpointAddressconstructor 引发了异常 - 检查您的配置文件并确保您有一个“LetterMergeURL”appSetting。 -
统一资源标识符 (URI) 用于标识网站或资源,因此这是一个强有力的指标,表明您的错误位于指向此类资源的代码的一部分。这应该可以让您很好地了解在哪里调试代码。
标签: c# wcf visual-studio wcf-binding livecycle