我在C#中使用SQL Server 2008 R2后端创建了一个应用程序。在我的数据库中,其中一个表包含一个数据类型为money
的列。我正在使用Entity Framework(数据库优先)来访问数据库中的数据。在我的EF模型中,归因的money
类型表示为decimal
。
现在,当我序列化该实体的对象时,该十进制属性表示为具有4个小数位。我需要这个只有2位小数。我正在使用JSON.NET
将我的对象序列化为JSON。
以下是我得到的内容(请参阅Price
属性的值)
{
ID: 1,
Name: "Product1"
Category:
{
ID: 1,
Name: "Category1"
},
Price: 200.0000
}
这是我需要的(参见Price
属性的值)
{
ID: 1,
Name: "Product1"
Category:
{
ID: 1,
Name: "Category1"
},
Price: 200.00
}
序列化时是否需要提供任何设置?请给我任何提示。
答案 0 :(得分:0)
如果在您的数据库中,您认为价格存储为
Price: 200.0000
然后你可以改变你的模型获取属性,只返回2位小数或者你可以 强制数据库只存储2个小数位
decimal Price {get;set;}
你需要实现get函数来舍入到小数点后2位