加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – TextBoxFor中限制为2位小数

发布时间:2020-12-15 19:14:01 所属栏目:asp.Net 来源:网络整理
导读:下面的代码工作正常,但在文本框中的十进制值具有此格式“0,0000” (,是小数分隔符)。我想只有两个十进制。我如何做到这一点? 谢谢, //Database model used with NHibernatepublic class Bank{ public virtual int Id { get; set; } public virtual strin
下面的代码工作正常,但在文本框中的十进制值具有此格式“0,0000”
(,是小数分隔符)。我想只有两个十进制。我如何做到这一点?

谢谢,

//Database model used with NHibernate
public class Bank
{
    public virtual int Id { get; set; }
    public virtual string FirstName { get; set; }
    public virtual string LastName{ get; set; }
    public virtual decimal Amount { get; set; }
}

//MVC Model
public class MyModel
{
    public Bank Bank { get; set; }  
}

//View
@Html.TextBoxFor(m => m.Bank.Amount,new { id = "tbAmount"})

更新1

在调试器中,我没有看到任何小数,wehn我一步一步地在里面(o @ HTML.Textbofor)的视图,该值没有任何小数,但是当页面显示有4个小数

//Database model used with NHibernate
public class Bank
{
    public virtual int Id { get; set; }
    public virtual string FirstName { get; set; }
    public virtual string LastName{ get; set; }
    public virtual decimal Amount { get; set; }
}

//Class for view
public class ViewBank
{
    [DisplayFormat(DataFormatString = "{0:n2}",ApplyFormatInEditMode = true)]
    public decimal Amount { get; set; }
}

//MVC Model
public class MyModel
{
    public Bank Bank { get; set; }      
    var ViewBank = new ViewBank() { Amount = Bank.Amount};
}

//View
@Html.TextBoxFor(m => m.Amount,new { id = "tbAmount"})

更新2

我做了一个小工作例子:http://goo.gl/RKtwY

解决方法

我会使用编辑器模板,我不会使用我的NHibernate域模型在我的意见。我将定义视图模型,这是专门针对给定视图的要求(在这种情况下限制到2小数的要求):
[DisplayFormat(DataFormatString = "{0:n2}",ApplyFormatInEditMode = true)]
public decimal Amount { get; set; }

接着:

@Html.EditorFor(m => m.Bank.Amount)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读