相关疑难解决方法(0)

我应该如何在MVC中使用EditorFor()获取货币/货币类型?

在我看来,我有以下电话.

<%= Html.EditorFor(x => x.Cost) %>
Run Code Online (Sandbox Code Playgroud)

我有一个带有以下代码的ViewModel来定义Cost.

public decimal Cost { get; set; }
Run Code Online (Sandbox Code Playgroud)

但是,这会显示十进制值,小数点后有四位数(例如0.0000).我知道Decimal.toString("G")(MSDN)似乎解决了这个问题,但我不确定在哪里应用它.

一个解决方案似乎是创建一个局部视图"Currency.aspx".

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Decimal>" %>
<%= Html.TextBox(Model.ToString("g"), new { @class = "currency" }) %>
Run Code Online (Sandbox Code Playgroud)

并且[UIHint("Currency")]在我的视图模型.

这似乎不优雅.我认为这个问题已经在MVC框架或C#中的某个地方得到了解决,但我不知道更清洁的解决方案.

在MVC中处理编辑货币值的适当方法是什么?

c# asp.net-mvc currency

18
推荐指数
1
解决办法
3万
查看次数

标签 统计

asp.net-mvc ×1

c# ×1

currency ×1