我已經創建了一個C#項目,這個項目由一個在LocalSystem帳戶下運行的後端服務和一個在當前登錄用戶帳戶下運行的GUI組成。通過網絡瀏覽器與局域網中的c#服務進行通信
這兩部分通過命名管道溝通,爲實現:
服務:
PipeHost = new ServiceHost(this, new Uri[] { new Uri("net.pipe://localhost") });
PipeHost.AddServiceEndpoint(typeof(IPipeComm), new NetNamedPipeBinding(), "MyProgComm");
PipeHost.Open();
GUI:
ChannelFactory<IPipeComm> PipeFactory = new ChannelFactory<IPipeComm>(new NetNamedPipeBinding(), new EndpointAddress("net.pipe://localhost/MyProgComm"));
IPipeComm PipeProxy = PipeFactory.CreateChannel();
所有工作甜的,但現在我停留在一個新的他們要求我添加功能。 我必須找到一種方式與移動設備上的服務進行通信(至少是單向服務),比如Android,連接到同一個局域網。
起初我想過構建一個簡單的Android本機應用程序,該應用程序將與添加服務的TCP服務器進行通信。
這需要我進行一些認真的研究,因爲我從來沒有做過這樣的事情。
所以,讓我問: 這是最簡單的方法來完成這個?
我可以利用現有的命名管道來達到此目的,從而節省時間和編碼嗎?
這可以通過添加一個最小的Web服務器來完成,以避免創建移動設備應用程序並使用其瀏覽器? (我真的preffer這一點!)
我很困惑,所以一對夫婦的指引將非常感激......
感謝您的澄清。我決定實施一個準系統HTTP服務器,並嘗試通過Web表單發送數據到服務。我不知道我是否會成功,但至少我不需要在移動端做任何編碼... – monica