【发布时间】:2017-10-20 08:19:17
【问题描述】:
说,我们有那个代码:
var tuple = new Tuple<double, int>(10.6, 2);
var tupleString = tuple.ToString(); //returns "(10.6, 2)";
我们能否在不实现任何自定义解析器和 JsonConverters 以及扩展 TypeConverter 的情况下从 tupleString 获取新的 Tuple 实例?
更新 1
在我的生产代码中,我有SortedList<Tuple<DayOfWeek, double>, double>。该列表由 Json.NET 序列化,通过.ToString() 转换字典键。然后 JSON 被发送到前端应用程序。然后前端应用程序使用该序列化密钥向服务器发送请求。我必须将该密钥转换为 .NET Tuple,但我不知道该怎么做。
【问题讨论】:
-
您是否假设只有
double, int的元组需要从字符串中重建?在general 中,不能保证通过在各个元组组件上调用ToString()创建的字符串包含足够的信息来重新创建原始数据类型。如果你想要序列化,你应该寻找序列化机制,而不是ToString。 -
@Damien_The_Unbeliever,我更新了我的问题。