FromObjectDictionary方法的返回值错误

时间:2018-10-04 09:09:26

标签: servicestack-text

我在ServiceStack.Text \ PlatformExtensions.cs文件中注意到FromObjectDictionary方法可能返回错误的值。

    public static object FromObjectDictionary(this IReadOnlyDictionary<string, object> values, Type type)
    {
        if (values == null)
            return null;

        var alreadyDict = type == typeof(IReadOnlyDictionary<string, object>);
        if (alreadyDict)
            return true;

        var to = type.CreateInstance();

        PopulateInstanceInternal(values, to, type);

        return to;
    }

如果已经Dict为true,我认为它应该返回值对象。无论如何,真实值似乎是错误的,并且可能导致无效的强制转换异常。

我不知道在这里写代码是否是在ServiceStack中提交问题的正确过程。

1 个答案:

答案 0 :(得分:0)

感谢您抓住这个!我已经通过this commit中的FromObjectDictionary()解决了这个问题。

此更改可从v5.4.1(现在为available from MyGet)中获得。