货币本地化asp.net MVC 4

本文关键字:MVC net asp 本地化 货币 | 更新日期: 2023-09-27 18:12:04

我正在尝试实现货币本地化,如默认货币是美元,当用户将货币更改为欧元时,所有以美元计价的产品价格将转换为欧元。我为此创建了一个简单的资源文件,但不知道下一步该做什么。

货币本地化asp.net MVC 4

我已经在网上搜索了,但没有找到任何合适的解决方案。

你可以设置一个基本的静态助手方法来在你的应用程序上设置正确的货币,它将通过一个会话变量应用于你的整个应用程序域。

所以你只需将会话变量的默认值设置为USD,并将货币下拉列表中的选定值指向会话变量。

Session["currency"] = //set avalue from drop down list here;

和计算货币,你可以链接一个静态助手类到你的资源,并获得一个选定的货币。

  public static double CalcCurrency(double price)
  {
       //from your resource
       return GetCurrency(Session["currency"].ToString(), price);  
  }

现在在你的网页上,你到处都有一个关联价格,那么你必须使用上面的helper方法:

asp.net: Price: <%: CalcCurrency(200.55) %>
  Razor:  Price: @{ CalcCurrency(200.55) }

使用会话变量是唯一的选择,如果你不喜欢使用它,你可以使用ViewBag或ViewData。Session的优点是用户可以在整个应用程序中获得所选货币,而无需为每个视图维护它。