[ASP .NET][Serializable]導致parameter value皆為null

[ASP .NET][Serializable]導致parameter value皆為null

最近同事在撰寫web api時,測試某一支api發現傳入的物件值不管怎樣都是null,如下圖:

系統並沒有回報任何錯誤,傳入的資料是JSON,讓.net自行繫結資料到class,

經測試,換一個class就可以正常看到值,如下圖:

一整個很詭異...比對兩個class的差異,並沒有什麼特別不一樣的地方,唯一比較不同就是[Serializable]這個attribute

以這關鍵字查了一下stackoverflow,果然是這個在搞鬼,移除後就正常囉~特別記錄一下提醒自己...

相關的原因有點不大懂,有空再多查詢看看...

參考資料

https://stackoverflow.com/questions/25790610/json-serialization-of-webapi-parameters

https://stackoverflow.com/questions/33215188/parameter-values-are-not-mapped-in-web-api-if-the-model-class-is-marked-as-seri