最近、プロジェクトで XML-RPC.Net ライブラリを使用しようとしています。サーバー (.Net Remoting) とクライアントの両方がhttp://xml-rpc.net/で見つけた指示に従って作成されました。
接続が確立され、サーバーなどからデータを取得します。
タイトルにあるように、ここでは、最初のクライアント呼び出しの後に作成される XML-RPC サーバー インスタンスを作成して、WPF UI にフィードバックを送信できるようにする方法を知りたいと思います。実現したいことは、サーバー プロパティにイベントを登録して、呼び出しが UI スレッドに到達できるようにすることです。
この点に関して、私たちはどんな提案も歓迎します。
サーバー側でチャネルを登録するコードは次のとおりです。
IDictionary props = new Hashtable();
props["name"] = "SubsetHttpChannel";
props["port"] = 5678;
channel = new System.Runtime.Remoting.Channels.Http.HttpChannel(
props,
null,
new XmlRpcServerFormatterSinkProvider()
);
ChannelServices.RegisterChannel(channel, false);
RemotingConfiguration.RegisterWellKnownServiceType( typeof(SubsetServer), "subsetserver.rem", WellKnownObjectMode.Singleton);
これは、サーバー インスタンスが UI で作成された後にプロパティを設定する方法を示すコードです。
Server = new SubsetServer();
Server.Machine.OnChangeState += delegate(State actual, State next, Event pEvent)
{
uiWindowInstance.PostMessage(string.Format("Subset Server: {0} -> {1}", actual.Name, next.Name));
};
使用されているテクノロジー: VS2012、WPF 4.5、および XML-RPC.NET 2.5.0
前もって感謝します