c# - 如何拆箱元组?

标签 c# tuples c#-7.0 unboxing

我有盒装元组:

(int, string) tuple = (1, "abc");
object box = tuple;

如何从box中获取元组?将 object 转换回元组的正确语法是什么?

我的尝试:

var deconstruct = (int, string)box;

显然是错误的:

Error CS1525 Invalid expression term 'int'

Error CS1525 Invalid expression term 'string'

Error CS1002 ; expected

Error CS0201 Only assignment, call, increment, decrement, await, and new object expressions can be used as a statement

最佳答案

ValueTuple<int, string> t = (ValueTuple<int, string>)box;

(int, string) t = ((int, string))box;

关于c# - 如何拆箱元组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58506346/

相关文章:

python - 字符串拆分为字符,同时将其添加到元组

list - Haskell Tuple 在无限列表上的解构在将 Tuple 作为参数解构时与使用 let 解构时的行为不同

json.net - 无法转换类型为 Newtonsoft.Json.Linq.JObject 的对象,即使我试图转换为具有匹配属性的对象

c# - 模式匹配机制有哪些限制?

c# - C++ 中的多播委托(delegate)

c# - C#获取用户登录名

python - 遍历元组并计算数字的百分比

c# - C# 7 中局部函数的惯用命名约定是什么

c# - 大括号 c# 拆分问题

c# - 根据实时值进行或退出单元测试的正确方法