Usuário com melhor resposta
Dúvida em DateTime C#

Pergunta
-
Pessoal, Boa noite.
Tenho um Form de cadastro com um datepicker...
Coloco a data: 06/09/2012 , eu atualizo já aparece: 69/20/1212
Se eu colocar com uma data onde o mês é acima de 10, aparece correto.
Na hora de exibir na página aparece certo, mas a data cadastrada fica a errada...
Segue meus fontes:
FeriadoController.cs
var model = new FeriadoModel(); try { var feriado = _repositorioFeriado.GetById(id) ?? new Feriado { Ativo = true }; model.IdFeriado = feriado.IdFeriado; model.DataFeriado = feriado.IdFeriado == 0 ? (DateTime?)null : feriado.DataFeriado; model.Descricao = feriado.Descricao; model.Ativo = feriado.Ativo; } catch (Exception ex) { model.Error = ex; } return View(model);
FeriadoModel.cs
[DisplayName("Data do Feriado")] [Required(ErrorMessage = "Você deve informar a data do feriado.")] public DateTime? DataFeriado { get; set; }
Edit.cshtml
<script language="javascript" type="text/javascript"> $(document).ready(function () { $(".editContent").css("height", "0px"); $(".editContent").css("height", ($(document).height() - 67) + "px"); var configDatePicker = { dateFormat: "dd/mm/yy", buttonImageOnly: true, buttonImage: "/Imagens/calendar.png", showOn: "button" } $("#DataFeriado").datepicker(configDatePicker); $("#DataFeriado").mask("99/99/9999"); $("#DataFeriado").focus(); @if(Model.RecarregaLista){ @:$("#FormPesquisaLista", $("#mainFrame", parent.top.document)[0].contentDocument)[0].submit(); } }); </script> @using (Html.BeginForm("Save", "Feriado")) { @Html.ValidationSummary(true) @Html.HiddenFor(model => model.IdFeriado) <div style="height: 46px; background-color: #ffffff; border-bottom: 1px solid #555;"> <table cellpadding="3" cellspacing="0" border="0" style="width: 100%;"> <tr> <td style="width: 100%;"> </td> <td> @Html.ImageButton("Novo", "Novo Registro", "button", "new-16.png", new Dictionary<string, object> { { "onclick", "$(this).parents('form:first')[0].action = $(this).parents('form:first')[0].action.replace('Save', 'Edit?id=0'); $(this).parents('form:first')[0].submit();" }, { "style", "width: 55px" } }) </td> <td> @Html.ImageButton("Gravar", "Gravar as Alterações", "submit", "save.png", new Dictionary<string, object> { { "style", "width: 55px" } }) </td> <td> @Html.ImageButton("Voltar", "Voltar", "button", "back.png", new Dictionary<string, object> { { "onclick", "CloseEdit();" }, { "style", "width: 55px" } }) </td> </tr> </table> </div> <div class="editContent"> <div style="float: left; clear: both; margin-bottom: 5px;"> <div style="float: left"> @Html.LabelFor(model => model.DataFeriado) </div> <div style="float: left; clear: both;"> @Html.TextBoxFor(model => model.DataFeriado) </div> </div>
Alguém pode me ajudar a resolver esse erro?
Respostas
-
Lucas. pode ser algo na gloabalização da sua aplicação.
http://social.technet.microsoft.com/wiki/contents/articles/7149.asp-net-mvc-globalizando-aplicacoes-pt-br.aspxTem que mudar no Web.Config, e também se tiver utilizando jQuery UI por exemplo, tem globalizar o componente.
Dá uma olhada nesse artigo e ve se te ajuda.
Abraços,
André Baltieri
MTAC – Microsoft Technical Audience Contributor
Twitter: @andrebaltieri
Blog: http://andrebaltieri.net- Sugerido como Resposta Janderson Candido de Mattos sábado, 6 de outubro de 2012 17:37
- Marcado como Resposta Harley Araujo terça-feira, 9 de outubro de 2012 12:17
-
Boa Tarde André
Realmente havia esquecido esse detalhe. Para o pessoal que estiver em dúvida também, segue a resolução do problema:
Adicione em Web.Config entre as tags <system.web> e </system.web> a seguinte linha:
<globalization culture="pt-BR" uiCulture="pt-BR" enableClientBasedCulture="true" />
Valeeu André pela ajuda!
- Sugerido como Resposta Janderson Candido de Mattos sábado, 6 de outubro de 2012 17:38
- Marcado como Resposta Harley Araujo terça-feira, 9 de outubro de 2012 12:17
Todas as Respostas
-
Lucas. pode ser algo na gloabalização da sua aplicação.
http://social.technet.microsoft.com/wiki/contents/articles/7149.asp-net-mvc-globalizando-aplicacoes-pt-br.aspxTem que mudar no Web.Config, e também se tiver utilizando jQuery UI por exemplo, tem globalizar o componente.
Dá uma olhada nesse artigo e ve se te ajuda.
Abraços,
André Baltieri
MTAC – Microsoft Technical Audience Contributor
Twitter: @andrebaltieri
Blog: http://andrebaltieri.net- Sugerido como Resposta Janderson Candido de Mattos sábado, 6 de outubro de 2012 17:37
- Marcado como Resposta Harley Araujo terça-feira, 9 de outubro de 2012 12:17
-
Boa Tarde André
Realmente havia esquecido esse detalhe. Para o pessoal que estiver em dúvida também, segue a resolução do problema:
Adicione em Web.Config entre as tags <system.web> e </system.web> a seguinte linha:
<globalization culture="pt-BR" uiCulture="pt-BR" enableClientBasedCulture="true" />
Valeeu André pela ajuda!
- Sugerido como Resposta Janderson Candido de Mattos sábado, 6 de outubro de 2012 17:38
- Marcado como Resposta Harley Araujo terça-feira, 9 de outubro de 2012 12:17