現在、Web サイトを既存の Web サーバーから新しいマシンに移動しています。
新しいマシンは、IIS6 を実行する WIN Sever 2003 です。このサイトは ASP.Net 2 を使用しています。
machine.config ファイルのセクションに次のコードを追加して<system.web>
、Web サイトと今後のサイトでデフォルトの米国設定ではなく南アフリカの地域設定を使用するようにしました。
<globalization culture="en-ZA" uiCulture="en-ZA"/>
これはほとんどうまくいきました - 通貨記号は $ から R に変更されましたが、次のように設定されたグリッドビュー (バインドされたフィールド - DB タイプはお金) に列があります:
DataFormatString="{0:c}"
[編集] - 以下のリチャードの提案に従って、{0:C} でこれを試しました: まだうまくいきません
これは、古いサーバーにあった R 10,000.00 ではなく、まだ 10000.0000 を返しています。
これを修正する方法についてのアイデアはありますか?
ありがとう!
[編集] - これは実際の文化設定とはほとんど関係がないと思い始めています。
私はそれが正常に動作する別のフォームを持っています:
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Bind("Balance", "{0:c}") %>'></asp:Label>
</ItemTemplate>
機能しないフォームは、テンプレートなしで gridview を使用します。
<asp:BoundField DataField="Amount" HeaderText="Amount" SortExpression="Amount" DataFormatString="{0:C}" >
<ItemStyle CssClass="al-r" />
</asp:BoundField>