ServiceStack/TypeScript: typescript-ref 忽略命名空间(这导致重复)
ServiceStack/TypeScript: The typescript-ref ignores namespaces (this causing duplicates)
我正在学习以 C# 中的 ServiceStack 作为后端的 NativeScript + Angular2。
对于应用程序,我使用 typescript-ref
命令生成了 TypeScript 类,以便与 ServiceStack 中的 JsonServiceClient
一起使用:
>typescript-ref http://192.168.0.147:8080 RestApi
一切看起来都很甜蜜和花花公子,直到我发现它似乎忽略了 ServiceStack 服务和响应 DTO 在 .NET 端的不同命名空间中:
我有不同的服务分支,每个服务的处理程序在分支之间可能略有不同。这在 ServiceStack 中运行良好,登录和处理程序按预期工作。
因此,在 app/NativeScript/Angular2-side 上,我使用了 typescript-ref
并生成了 restapi.dtos.ts
。问题是它跳过了名称空间差异,只是创建了重复的 类 (来自 VSCode):
ServiceStack 中的后端 WS 以这种 "branched" 方式构建,因此我不必在不同的端口上启动不同的服务,而是将所有服务集中在一个端口上并保持简单明了。
我的问题可以解决吗?
您不应该在 public 面向服务合同中依赖 .NET 命名空间。它在 .NET 客户端中受支持,但在 requires that each DTO be uniquely named.
的任何其他语言中不受支持
一般来说,您的 DTO 在整个 SOA 边界内应该是唯一的,这样只有 1 个 Test
DTO 映射到单个模式定义,确保当它通过服务网关发送时,通过服务发现解决,发布到 MQ 服务器等它只映射到单个 DTO 合同。
我正在学习以 C# 中的 ServiceStack 作为后端的 NativeScript + Angular2。
对于应用程序,我使用 typescript-ref
命令生成了 TypeScript 类,以便与 ServiceStack 中的 JsonServiceClient
一起使用:
>typescript-ref http://192.168.0.147:8080 RestApi
一切看起来都很甜蜜和花花公子,直到我发现它似乎忽略了 ServiceStack 服务和响应 DTO 在 .NET 端的不同命名空间中:
我有不同的服务分支,每个服务的处理程序在分支之间可能略有不同。这在 ServiceStack 中运行良好,登录和处理程序按预期工作。
因此,在 app/NativeScript/Angular2-side 上,我使用了 typescript-ref
并生成了 restapi.dtos.ts
。问题是它跳过了名称空间差异,只是创建了重复的 类 (来自 VSCode):
ServiceStack 中的后端 WS 以这种 "branched" 方式构建,因此我不必在不同的端口上启动不同的服务,而是将所有服务集中在一个端口上并保持简单明了。
我的问题可以解决吗?
您不应该在 public 面向服务合同中依赖 .NET 命名空间。它在 .NET 客户端中受支持,但在 requires that each DTO be uniquely named.
的任何其他语言中不受支持一般来说,您的 DTO 在整个 SOA 边界内应该是唯一的,这样只有 1 个 Test
DTO 映射到单个模式定义,确保当它通过服务网关发送时,通过服务发现解决,发布到 MQ 服务器等它只映射到单个 DTO 合同。