ASP.NET MVC 和 SQL Server 中的十进制值

马库斯

我正在编写的 ASP.NET MVC 应用程序中的十进制值有一个小问题。我有一个 NPoco 绑定到一个数据库表和一个Price定义为十进制(9,2)条目。这是我使用的模型条目:

[Display(Name = "Price")]
[Required]
[DisplayFormat(DataFormatString = "{0:0,##}", ApplyFormatInEditMode = true)]
public decimal Price { get; set; }

接下来我有一个淘汰赛 js 模型,它绑定了所有参数并且工作正常。其他所有字段都被正确地获取和绑定。对于价格,我有这段 html 代码:

<input type="text" required data-bind="value: Price" class="form-control input-sm" id="priceID"/>

现在,如果我用逗号插入一个值,一切正常,并且该值正确插入到数据库中(例如 15,20),但如果我使用点,则在数据库中插入一个 0.00 值。有趣的是,当我重新加载对象进行编辑时,价格的值被设置并在 html 页面内用点写入。

所以我的问题是:有没有一种方法可以接受这两种格式(用点和逗号表示)?

IAMDM

我认为这是不可能的,尽管您可以强制使用一个语言环境<html lang="en-US" >和/或相应地处理输入。

每个用户的体验将根据他们的计算机区域设置而有所不同,强制分隔符为逗号可能并不明智,反之亦然。但是您可以替换或禁用所述字符的输入。

可能最优雅的方法是在服务器端处理所有内容,在语言环境之间进行转换。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

ASP.NET MVC绑定十进制值

Delphi ADO从SQL Server舍入十进制值

Asp.NET MVC Razor格式十进制?至 #。###,##

在SQL Server中舍入十进制值

ASP.NET MVC中的SQL Server流文件输出和配置连接

SQL Server数据库中ASP.NET MVC中的Bootstrap滑块

Asp.net MVC SQL Server连接返回null

MS SQL Server SSIS导入错误十进制值

如何在SQL Server 2012中为字符串分配十进制值

如何使用ASP.NET MVC和SQL Server将表字段值从一个表传递或复制到另一表

使用实体框架和SQL Server数据库无法访问ASP.NET MVC Web应用程序中的数据

在SQL Server中自定义舍入十进制值

使用ASP.NET MVC,LINQ和Entity Framework从SQL Server 2008切换到MySQL

使用EF 5和MVC 4将十进制值插入SQL Server

SSIS中DB2压缩的十进制和SQL Server DT_NUMERIC之间的查找转换

SQL Server和ASP.NET MVC性能问题

在没有实体框架和SQL Server的情况下,新的ASP.NET MVC身份框架是否可以工作?

我的ASP.NET MVC项目未获取我的SQL Server Express值

ASP.NET MVC中的单个SQL

ASP.NET MVC:如何搜索十进制值?

ASP.NET MVC从MS SQL Server获取数据

关于ASP.NET和SQL Server中的C#

Chart.js - 使用 sql server 和 asp.net mvc5 从数据库中获取数据

更新功能不起作用,SQL Server 和 ASP.NET MVC 5

SQL Server 十进制计算和默认值

使用 C# 和 ASP.NET MVC 中的 ajax 从 SQL Server 填充下拉列表

从sql server中的字符串中提取所有十进制值

表单值中的 ASP.NET Core 剃刀十进制无效

从 HTML 发送十进制数,但在 MVC C# ,ASP Net 上以整数形式发送