6
私はTCP/IPのローカルネットワーク上のシッククライアントアプリケーション(変更できない)にコマンドを送信するWebアプリケーション(ASP.NET MVC)で実際に動作します。シッククライアントアプリケーションが私のコマンドに応答するか、私に情報を与える必要があるので、接続は常に開いておく必要があります。そうそこが優れている、TCP/IPクライアント側ループ.NET
public static async void getMessage()
{
while(true)
{
// Buffer to store the response bytes.
Byte[] data = new Byte[100000];
// String to store the response ASCII representation.
String responseData = String.Empty;
// Read the first batch of the TcpServer response bytes.
Int32 bytes = await stream.ReadAsync(data, 0, data.Length);
if (bytes == 0) continue;
responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes);
Debug.Write(responseData);
await stream.ReadAsync(data, 0, data.Length);
}
}
実際に働いている、と私は、サーバーからの応答を受信しますが、ブラウザは、すべての時間「localhostのを待って」されています。私はそのようなサーバの応答をチェックするループを作成します方法は、ブラウザ上のループなしで行うには?
ありがとうございました!
まずはお時間をいただき、ありがとうございます。私はもう1つの質問があるかもしれません(おそらく愚かなもの...)Webアプリケーションは、インターネットに接続されていないローカルネットワーク上でのみ使用できるように、サーバーに "デプロイ"されます。それは信号機の使用で問題になるのでしょうか? –
いいえ、イントラネットサーバーにSignalRパッケージを展開している限り、これは重要ではありません。 NuGet( 'Install-Package Microsoft.AspNet.SignalR')経由でインストールした場合は、正しくパッケージ化/展開する必要があります – dperish