2011-11-04 28 views
1

我在这个应用程序中有一个名为Performance的ServiceStack应用程序。在远程应用程序中获取DLL的引用?

现在,我有另一个由我的最终用户使用的应用程序。这是一个控制台应用程序,由最终用户下载并作为后台任务运行。

我想将该应用程序的性能数据发布到我的REST Web服务并将其存储在数据库中。

对,我需要在我的客户端应用程序,其性能数据职位,以JSON格式我ServieStack应用程序运行以下命令:

JsonServiceClient client = new JsonServiceClient("http://localhost/RestIntro"); 
     var res = client.Post<Performance>("/Performance", c); 

我没有在我的客户端应用程序Performance类。我不希望客户有班级,以便我可以在需要更改时更新所有客户。

我想知道,我怎样才能将Performance类或其DLL动态地移动到我的客户端应用程序中?因此,当客户端运行时,它将拥有该类以便发布到Web服务。

+2

-1“请投票支持这获得更高的优先级。”我其实并不认为你所说的是“非常棘手”。所有你需要的是一个更新的应用程序,首先加载,检查更新,将它们复制到你的应用程序目录并退出。 – briantyler

+0

嘿,我认为你真的只是想着一个简单的方式来更新应用程序,我知道这个解决方案,但我不希望这样,因为我更新了,在我的情况下,我不得不停止正在运行的exe文件并替换与新的,停止数据几秒钟,甚至创建一个问题,以防万一网络问题发生时,我认为“mythz”(见下面的用户配置文件)正在得到我的问题,因为他是服务堆栈的创建者/开发者(请检查他的个人资料) –

回答

0

你所说的实际上是通过使用SOAP服务来实现的。或者,您需要在客户端上创建一个“性能”类,并将该JSON结果反序列化到该类。

+0

是的,我知道它可以通过SOAP服务获得,但这不是我正在寻找的解决方案。 –

1

我建议你保持你ServiceStack Web服务分开的DTO在无依赖性的项目,因为这是代表你的服务的合同API。如果它在自己的程序集中,则可以轻松地与任何客户端或单元测试共享它。

如果您不喜欢复制dll的想法(即使其较少的工作/摩擦),您可以从/元数据页上的XSD生成自己的DTO,看到了这个问题:

How can i convert XSD file to C# Class

相关问题