2

私は現在、ASP.NET MVC 4 を使用して Web アプリケーションを開発しています。私が直面している問題の説明は次のとおりです。

テーブルのいくつかのフィールド、特にフィールドを編集するために、厳密に型指定されたビューを作成しましたDateTime。私がやりたいことは、次のコードを使用してデータベースから取得したデフォルト値でテキストボックスを表示することです:

@Html.TextBoxFor(m => m.Date, new { @Value = ViewBag.DefaultValue })

whereViewBag.DefaultValueは、単純なクエリを使用してコントローラーに設定されます。日付について話しているので、これも web.config に追加しました。

<globalization uiCulture="fr-Fr" culture="fr-FR" />

ここでおもしろいのは、表示される日付が、データベースに保存されている DD/MM/YYYY 形式ではなく、MM/DD/YYYY 形式になっていることです。さらに、div に表示したいだけの場合ViewBag.DefaultValue、正しい形式、つまり DD/MM/YYYY が表示されます。

誰かが同様の問題に直面しましたか? 私の説明がかなり曖昧であることは理解できますが、実際に何が起こっているのか理解できません。

前もって感謝します。

4

2 に答える 2

1

試してみましたが、成功しませんでした。

しばらくチェックした後、最終的に解決策を見つけました:http://geekswithblogs.net/80n/archive/2012/04/27/apply-a-datetime-format-in-an-asp.net-mvc-textboxfor .aspx

このタグをdatepickerイベントにリンクする必要があるため、EditorForとデータ注釈を使用すると機能しませんでした。そこで、2 番目のソリューションを使用しました。

トリックは、値が渡されるときにフォーマットを強制することにあります: @Html.TextBoxFor( m => m.Date, new {@Value = Model.Date.ToString("dd/MM/yyyy")}

これが役立つことを願っています。

于 2013-04-22T08:46:47.037 に答える