{"action":"opened","issue":{"url":"https://api.github.com/repos/dotnet/corefx/issues/2177","labels_url":"https://api.github.com/repos/dotnet/corefx/issues/2177/labels{/name}","comments_url":"https://api.github.com/repos/dotnet/corefx/issues/2177/comments","events_url":"https://api.github.com/repos/dotnet/corefx/issues/2177/events","html_url":"https://github.com/dotnet/corefx/issues/2177","id":91365031,"number":2177,"title":"XmlSerializer.Deserialize Method (XmlReader)","user":{"login":"KaelumYodi","id":1742782,"avatar_url":"https://avatars.githubusercontent.com/u/1742782?v=3","gravatar_id":"","url":"https://api.github.com/users/KaelumYodi","html_url":"https://github.com/KaelumYodi","followers_url":"https://api.github.com/users/KaelumYodi/followers","following_url":"https://api.github.com/users/KaelumYodi/following{/other_user}","gists_url":"https://api.github.com/users/KaelumYodi/gists{/gist_id}","starred_url":"https://api.github.com/users/KaelumYodi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KaelumYodi/subscriptions","organizations_url":"https://api.github.com/users/KaelumYodi/orgs","repos_url":"https://api.github.com/users/KaelumYodi/repos","events_url":"https://api.github.com/users/KaelumYodi/events{/privacy}","received_events_url":"https://api.github.com/users/KaelumYodi/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-06-26T21:19:22Z","updated_at":"2015-06-26T21:19:22Z","closed_at":null,"body":"I attempted to file this on Connect, but it appears that even though Connect states that it is still accepting issues, it is closed.  There is a bug in the current release version (4.5.2) that fails w/o any errors, on the deserialization of a property of a class that is defined as a List<string>.  I haven't tried lists of other types, but they are probably affected as well, and this only affects Deserialize, not Serialize.\r\n\r\nThere are 2 classes below, and both serialize properly, in the exact same way.  However, the Works class will deserialize properly, while the DoesNotWork class will not.  The DoesNotWork class will end up with an Items property that contains a list with zero items, when 1 or more items exist.  We discovered this in a property that has code in both the get and set accessors, while all properties that don't have any get or set code work perfectly.\r\n\r\n```C#\r\n[Serialize]\r\n[XmlRoot(\"root\")]\r\npublic class Works\r\n{\r\n\t[XmlElement(\"items\")]\t\r\n\tpublic List<string> Items { get; set; }\r\n}\r\n\r\n\r\n[Serialize]\r\n[XmlRoot(\"root\")]\r\npublic class DoesNotWork\r\n{\r\n\tprivate List<string> _items;\r\n\r\n\t[XmlElement(\"items\")]\t\r\n\tpublic List<string> Items\r\n\t{\r\n\t\tget { return _items; }\r\n\t\tset { _items = value; }\r\n\t}\r\n}\r\n```"}}