我有一个 API Controller ,它正在调用第 3 方 API,然后通过两个 API 模型将其反序列化为 C#。我在 API 模型中使用 JsonObject 和 JsonProperties。
现在我需要在对客户端的响应中收集两个模型的属性。在 Controller 中,我创建了两个 C# 对象,每个对象都从 API 模型获取信息。我想创建一个包含两个对象的特定属性的对象。任何人都可以建议实现此目标的最佳实践吗?
var personJson = await personResponse.Content.ReadAsStringAsync();
var companyJson = await companyResponse.Content.ReadAsStringAsync();
var UserObject = JsonConvert.DeserializeObject<Person.RootObject>(personJson);
var CompanyObject = JsonConvert.DeserializeObject<Company.RootObject>(companyJson);
最佳答案
您可以为需要返回的数据创建一个类
并填充它,但在许多情况下,使用匿名对象就足够了,框架随后会为您序列化该对象。示例:
return new
{
UserId = UserObject.Id,
UserFullname = UserObject.FirstName + " " + UserObject.LastName,
CompanyId = CompanyObject.Id,
CompanyName = CompanyObject.Name
};
您可以根据需要使用它,甚至包括数组、字典、列表、嵌套(子)对象等。
关于c# - C# 的多个 API 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52557172/