我们正在构建 ServiceStack 的第一个小型实现,我们需要对位于客户端和服务器之间共享的单独程序集中的 DTO 进行一些说明。
新 API 的 WIKI 页面为 DTO 推荐以下内容
在服务开发中,您的服务 DTO 提供了与技术无关的服务层,您希望保持清洁并尽可能“无依赖”,以实现最大的可访问性和潜在的重用。我们的建议是将您的服务 DTO 保留在一个单独的、很大程度上无 dep 的程序集中。
还有这个片段
*但是,假设您采用复制 DTO 的正常路线(以二进制形式的任一源),因此您在客户端上有这样的东西:
[Route("/reqstars")]
public class AllReqstars : IReturn<List<Reqstar>> { }
The code on the client now just becomes:
var client = new JsonServiceClient(BaseUri);
List<Reqstar> response = client.Get(new AllReqstars());
它向 /reqstars 路由发出 GET Web 请求。当客户端上不存在自定义路由时,它会自动回退到使用 ServiceStack 的预定义路由。
我的问题是……由于 DTO 类的路由属性,“很大程度上无依赖”的程序集是否仍然需要对 ServiceStack 的依赖?