我已經構建了一個小WCF服務,我正在嘗試爲其構建單元測試。我已經在本地部署了一個數據庫,並且該服務可以工作,並且可以保存和讀取數據庫中的數據。我在同一個解決方案中創建了一個獨立的項目,作爲控制檯應用程序,並帶有服務引用來使用此服務WCF服務控制檯客戶端異常
下面是代碼的樣子:
服務合同
[ServiceContract]
public interface IUserService
{
//When testing in the browser use verb GET
[OperationContract]
[WebInvoke(Method="POST", UriTemplate = "/CreateNewUserAccount?userNameValue={userName})]
void CreateNewUserAccount(string userName);
}
服務實現:
public void CreateNewUserAccount(string userName)
{
var userContorller = new UserController();
userContorller.addNewUser(userName);
}
控制檯客戶端與服務參考:
static void Main(string[] args)
{
try
{
UserServiceClient serviceClient = new UserServiceClient("");
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
Console.ReadKey();
}
下面是我如何在瀏覽器中調用該服務的示例: http://localhost:8654/Services/UserService/UserService.svc/CreateNewUserAccount?userNameValue=testUser
我已經確認,這在我本地運行服務時起作用。現在我從控制檯客戶端接收的例外是:
無法與在ServiceModel客戶端配置節名「」和合同「SerficeReference.IUserService」找到終結點元素。
看起來我缺少端點,並且在鏈接服務引用時app.config中沒有生成任何內容。我已經嘗試了app.config中的許多配置,但我似乎無法得到這個直線。當我嘗試在控制檯應用程序中實例化服務客戶端時發生異常。我的app.config看起來像這樣:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
</configuration>
任何幫助,將不勝感激。
您正在嘗試做什麼(將服務引用添加到WCF Web HTTP端點)不起作用! http://blogs.msdn.com/b/carlosfigueira/archive/2012/03/26/mixing-add-service-reference-and-wcf-web-http-aka-rest-endpoint-does-not-work。 aspx –