2013-04-04 152 views
5

當我嘗試調用我的Adobe Livecyle Soap服務時,出現以下錯誤:值不能爲空。參數名稱:uri

值不能爲空。參數名稱: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"])); 

在此先感謝。

+0

你必須顯示你的代碼。該錯誤意味着您調用的方法已爲其'uri'參數傳遞了null值。 – devdigital 2013-04-04 07:51:58

+0

您可以編輯您的問題以添加更多詳細信息。如果你想共享代碼,這是非常有用的,因爲你可以使用'{}'按鈕來設置它的格式 - 你不能在註釋中做一個體面的代碼格式工作。編輯鏈接位於標籤下方的左下角。 – 2013-04-04 07:58:37

+1

它幾乎肯定是拋出異常的'EndpointAddress' [構造函數](http://msdn.microsoft.com/en-us/library/ms404972.aspx) - 檢查你的配置文件,並確保你有一個「 LetterMergeURL「'appSetting'。 – 2013-04-04 08:01:59

回答

5

EndpointAddress()該參數名爲URI(你可以把你的光標只是(後,按Ctrl + Shift + Space看參數表)。

你可以驗證這是否是問題通過更換:

new EndpointAddress(
      System.Configuration.ConfigurationManager.AppSettings["URL"])); 

..With類似如下:

new EndpointAddress("http://your.service.uri/"); 

如果這樣的作品,你知道你的錯誤是配置相關。

+0

解決了這個問題,這完全是關於配置文件。謝謝你的答案。 – gizemdemirel 2013-04-04 08:35:57

相關問題