我正在嘗試爲ASP MVC3編寫Protobuf ValueProviderFactory。我已經設法解決了how to add the factories,但現在我偶然發現了一個更緊迫的問題。 這裏就是當前的序列發生在JsonValueProviderFactory.cs
創建需要類型信息的MVC3 ValueProviderFactory?
JavaScriptSerializer serializer = new JavaScriptSerializer();
object jsonData = serializer.DeserializeObject(bodyText);
return jsonData;
所以反序列化是沒有任何類型的信息來完成? DeserializeObject
返回什麼樣的對象?動態?它如何知道數據的類型?我希望在這裏插入protobuf-net,但它顯然需要一種類型來實現它的魔力!
我沒有看過所有的MVC3源碼,但我猜測映射到類型發生在最後階段,並且沒有辦法知道ValueProviderFactories中的類型?
我必須放棄並在行動中進行轉換嗎?
重新類型 - 請注意,它需要一個'Type'實例,但你不必使用通用API。這意味着如果你可以從'ParameterInfo'之類的東西推斷'Type',它應該是可能的。 –