这个问题在这里已有答案:
我在我正在处理的代码库中遇到过这样的代码:
private (string someVar1, string someVar2) ParseInfo(Info info)
{
return (someVar1: "test1", someVar2: "test2");
}
上面的方法是否基本上提供了一种简单的方法来动态返回复杂对象而无需创建特殊的类/结构?这个构造命名的是什么以及何时引入?
“C#7.0引入了ValueTuple结构,它是元组对象的值类型表示。语言团队为这个值元组类型做了许多好事,包括新语法和许多功能(例如解构)。
请注意,如果您没有在项目中看到ValueTuple,则必须将System.ValueTuple 4.3.0 NuGet包下载到您的项目中。如果您使用的是.NET Framework 4.7或更高版本,或.NET Standard Library 2.0或更高版本,则无需执行任何操作。“
https://blogs.msdn.microsoft.com/mazhou/2017/05/26/c-7-series-part-1-value-tuples/
它被称为'Value Tuples',它是在C#7.0中引入的。它是元组对象的值类型表示,您可以使用它来返回值
更多信息:https://blogs.msdn.microsoft.com/mazhou/2017/05/26/c-7-series-part-1-value-tuples/
其他更多细节:
Does C# support multiple return values?
并且有一个很好的解释
https://blogs.msdn.microsoft.com/mazhou/2017/05/26/c-7-series-part-1-value-tuples/