1

我有一个 ServiceStack 应用程序,其中一个类Performance在此应用程序中命名。

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

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

为此,我需要在我的客户端应用程序中运行它,它将性能数据以 JSON 格式发布到我的 ServieStack 应用程序:

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

我的客户端应用程序中没有Performance课程。我不希望客户拥有课程,以便在需要进行更改时更新所有客户。

我想知道,如何将Performance类或其 DLL 动态地放入我的客户端应用程序中?因此,当客户端运行时,它将具有该类,以便将帖子发布到 Web 服务。

4

2 回答 2

1

我建议您将ServiceStack Web 服务的 DTO 分开放在一个无依赖项的项目中,因为这代表了您的服务的合同API。如果它在自己的程序集中,那么您可以轻松地与任何客户或单元测试等共享它。

如果您不喜欢复制 dll 的想法(即使它的工作/摩擦较少),您可以从 /metadata 页面上的 xsds 生成自己的 DTO,请参阅此问题:

如何将 XSD 文件转换为 C# 类

于 2011-11-04T14:53:29.220 回答
0

您所说的内容实际上可以通过使用 SOAP 服务获得。或者,您需要在客户端上创建一个“性能”类并将 JSON 结果反序列化为该类。

于 2011-11-04T13:59:27.150 回答