{"action":"created","issue":{"url":"https://api.github.com/repos/aspnet/Mvc/issues/3146","labels_url":"https://api.github.com/repos/aspnet/Mvc/issues/3146/labels{/name}","comments_url":"https://api.github.com/repos/aspnet/Mvc/issues/3146/comments","events_url":"https://api.github.com/repos/aspnet/Mvc/issues/3146/events","html_url":"https://github.com/aspnet/Mvc/issues/3146","id":106832768,"number":3146,"title":"Invariant culture for POST","user":{"login":"miloush","id":10546952,"avatar_url":"https://avatars.githubusercontent.com/u/10546952?v=3","gravatar_id":"","url":"https://api.github.com/users/miloush","html_url":"https://github.com/miloush","followers_url":"https://api.github.com/users/miloush/followers","following_url":"https://api.github.com/users/miloush/following{/other_user}","gists_url":"https://api.github.com/users/miloush/gists{/gist_id}","starred_url":"https://api.github.com/users/miloush/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/miloush/subscriptions","organizations_url":"https://api.github.com/users/miloush/orgs","repos_url":"https://api.github.com/users/miloush/repos","events_url":"https://api.github.com/users/miloush/events{/privacy}","received_events_url":"https://api.github.com/users/miloush/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/aspnet/Mvc/labels/question","name":"question","color":"cc317c"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-09-16T18:25:15Z","updated_at":"2015-09-29T16:57:04Z","closed_at":"2015-09-29T16:57:03Z","body":"> When the values come from POSTed form fields, we know they came from the user and can then apply the user's locale when binding.\r\n\r\nThat means that the MVC handling of POST requests works or breaks depending on how the server's locale is set up or changed. When is this a reasonable design?\r\n\r\nCouldn't we just have a deterministic parameter parsing like in the case of GET?"},"comment":{"url":"https://api.github.com/repos/aspnet/Mvc/issues/comments/144119766","html_url":"https://github.com/aspnet/Mvc/issues/3146#issuecomment-144119766","issue_url":"https://api.github.com/repos/aspnet/Mvc/issues/3146","id":144119766,"user":{"login":"danroth27","id":1874516,"avatar_url":"https://avatars.githubusercontent.com/u/1874516?v=3","gravatar_id":"","url":"https://api.github.com/users/danroth27","html_url":"https://github.com/danroth27","followers_url":"https://api.github.com/users/danroth27/followers","following_url":"https://api.github.com/users/danroth27/following{/other_user}","gists_url":"https://api.github.com/users/danroth27/gists{/gist_id}","starred_url":"https://api.github.com/users/danroth27/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danroth27/subscriptions","organizations_url":"https://api.github.com/users/danroth27/orgs","repos_url":"https://api.github.com/users/danroth27/repos","events_url":"https://api.github.com/users/danroth27/events{/privacy}","received_events_url":"https://api.github.com/users/danroth27/received_events","type":"User","site_admin":false},"created_at":"2015-09-29T16:57:03Z","updated_at":"2015-09-29T16:57:03Z","body":"When parsing JSON we use JSON.NET which by default uses the InvariantCulture, but you can configure JSON.NET to use whatever culture you want. If you have a mixture of data you might be able to leverage extensibility to control which culture is used (ex serialization surrogates).\r\n\r\nWe do use the Accept-Language header by default in our localization middleware (see https://github.com/aspnet/Localization/blob/dev/src/Microsoft.AspNet.Localization/AcceptLanguageHeaderRequestCultureProvider.cs), and you're correct that it isn't a perfect determination of locale, but you can implement your own `RequestCultureProvider` to determine the culture however you want.\r\n\r\nThe fallback to the server's locale is based on the heuristic that the server and the client are often \"close\" to each other (i.e. in the same locale). Obviously this heuristic is far from perfect.\r\n\r\n"}}