c# - c# 通用属性
问题描述
我正在尝试在 C# 中创建一个可用于返回任何类型数据的类。
public class ResponseObject
{
public <T> data { get;set }
public Boolean Success { get; set; }
public string Message { get; set; }
}
当我的应用程序向 API 发送请求时,该对象将成为响应对象的包装器。
我已经尝试对此进行研究,但找不到与我正在尝试做的事情相关的任何教程。
这在 C# 中可能吗?响应对象将被转换为 JSON 字符串,然后作为响应发送。
我不会对这个对象进行任何处理,因为这已经完成了。我只想将数据放在 ResponseObject 中并发送
我想做一些类似的事情:
var customers = repository.GetCustomers();
var orders = repository.GetOrders();
if(customers)
{
success = true;
message = "";
}
else{
success = false;
message = "failed to get customers";
}
if(orders)
{
orderssuccess = true;
ordersmessage = "";
}
else{
orderssuccess = false;
ordersmessage = "failed to get orders";
}
ResponseObject customerResponse = new ResponseObject{
data = customers,
success = success,
message = message
};
ResponseObject orderResponse = new ResponseObject{
data = orders,
success = orderssuccess,
message = ordersmessage
};
解决方案
您需要将 <T> 添加到类中并使用 T 作为属性的类型。
public class ResponseObject<T>
{
public T data { get; set; }
public Boolean Success { get; set; }
public string Message { get; set; }
}
推荐阅读
- bash - 如何在bash中自动将两个文件重命名为不同的名称
- javascript - 我无法在 JavaScript 中获取帖子
- python - 使用while循环在python中复制数据行
- javascript - 如何使用javascript函数getTotal在一个html页面中使用多个函数
- vba - 如何使用 VBA 更改 Access 超链接?
- c# - 用 [SerializeField] 注释的变量未显示在检查器中
- swift - 有没有办法让一个按钮在 SwiftUI 中运行多个功能?
- asp.net - 在不使用母版页的 WebForms VB.NET 项目中添加 AntiForgeryToken
- ssl - Error reading Kafka SSL client truststore file from Spark streaming
- c# - 在类构造函数中使用泛型类型