【发布时间】:2016-02-29 08:03:15
【问题描述】:
问题 我调用不同的 web 服务返回 json 字符串。我将这些字符串解析为自定义对象,并将它们保存在名为 APIResult 的“结果类”中。例如,一个 Web 服务返回一个列表 OBJ1,另一个返回 OBJ2,有时还会返回两个或多个对象。结果类将返回给调用它的方法,其中包含对象和指示请求是否成功的布尔值。
这可行,但是当我必须调用许多不同的 Web 服务时,该类变得丑陋。现在我有 7 个属性,如 OBJ1、OBJ2、List、List 等。为了避免向 APIResult 类添加更多属性,我想重新设计它以使其更灵活,但我不确定什么是最好的方法。
想法 泛型似乎是个好主意。我可以用 new APIResult(ObjectType) 初始化我的类,然后拥有一个或多个属性 T Data1。拥有三个属性 T Data1、T Data2、T Data3 还是有点难看。我也不确定是否可以将对象从 json 解析为没有反射的泛型类型,以及这是否会减慢速度。
你有什么建议吗?
【问题讨论】:
标签: c# json web-services api architecture