c# - 如何使用具有两种类型的通用接口返回方法
问题描述
我需要创建一个 2 类型的接口并将其用作方法返回值。
public interface StringLong<T1,T2>
where T1 : string
where T2 : long
{}
StringLong<T1,T2> method StringLong<T1,T2>()
解决方案
用两个泛型类型定义一个接口是没有意义的,你只需要string
和long
。
听起来你只想要一个元组:
(string, long) MyMethod()
{
return ("Hello", 42L);
}
您甚至可以命名返回值:
(string message, long meaningOfLife) MyMethod()
{
return ("Hello", 42L);
}
然后你可以写:
var result = MyMethod();
Console.WriteLine(result.message);
Console.WriteLine(result.meaningOfLife);
推荐阅读
- python - 无法查看谷歌存储桶图片
- python - 将一个多维列表的值设置为另一个多维列表的值
- php - 尝试访问插件中布尔类型值的数组偏移量
- html - 在 Nginx 中构建多个项目的最佳实践?
- python - Django OperationalError 表没有名为 user_id 的列
- reactjs - 如何通过 HOC 传递父道具并正常使用它
- java - 如何在运行时扫描Java应用程序的所有类中的方法并根据给定的请求调用这些方法?
- json - 使用 pl/sql 从嵌套数组 json 中提取数据
- angular - 如何在 Strapi、GraphQL 的 where 子句中使用多个“and”条件进行查询?
- javascript - 为什么更改数组的副本会影响原始数组?