我有一個WCF服務。現在我想將其轉換爲控制檯應用程序。基本上,這是一項簡單的服務。它僅根據PowerShell請求的客戶端請求執行2個作業。將WCF服務轉換爲控制檯應用程序
Invoke-WebRequest "http://localhost:10000/backup/DoBackup?id=BackupClient1"
或
Invoke-WebRequest "http://localhost:10000/backup/DoBackup?id=BackupClient2"
我的服務偵聽請求這2個請求。
我有這樣的WCF代碼:
myService service = new myService(_settings);
backupServiceHost = new WebServiceHost(service, _backupAddress);
WebHttpBinding binding = new WebHttpBinding();
string address = "";
ServiceEndpoint endpoint = backupServiceHost .AddServiceEndpoint(typeof(ISnapshotServiceContract), binding, address);
backupServiceHost .Open();
在我的控制檯應用程序我不能使用WebServiceHost
和WebHttpBinding
。什麼是最好的替代品?我正在考慮使用簡單的HttpClient
。但我不確定這是否是正確的選擇?
但客戶必須通過PS調用-的WebRequest「要求http:// localhost:10000 /。所以我不能使用cmd參數 – masiboo
在這種情況下,您可以參考此示例如何實例化WCF「ServiceHost」(https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/how-to-create-a-service-endpoint-in-code),但是您需要解決如何停止服務 - 您需要例如在啓動後運行永久循環服務和服務中的附加命令來指示服務應該退出。 – shrpq