定义十进制属性-十进制(18,2)

时间:2019-08-02 19:02:57

标签: .net asp.net-core decimal data-annotations

我需要帮助映射模型中decimal列的属性。 我尝试只使用.Net 12.12,但是当我输入例如1212,00在输入字段中,此数字将另存为public decimal Ocjena1 { get; set; }

A car with number of wheels has been created.
Numbers of wheels = <wheels variable value>

我找不到解决方案。我应该如何在模型中声明该属性以匹配此列?

1 个答案:

答案 0 :(得分:0)

问题是您的浏览器文化无法识别.,它使用,而不是.来表示数字。

当我在现场使用[Column(TypeName = "decimal(18, 2)")]直到更改应用程序文化以支持hr(使用逗号而不是点表示数据并将克罗地亚语设置为浏览器语言的顶部)支持var supportedCultures = new[] { new CultureInfo("en-US"), new CultureInfo("hr"), }; app.UseRequestLocalization(new RequestLocalizationOptions { DefaultRequestCulture = new RequestCulture("en-US"), // Formatting numbers, dates, etc. SupportedCultures = supportedCultures, // UI strings that we have localized. SupportedUICultures = supportedCultures }); //other middlewares app.UseMvc() 时,效果很好。我的情况也一样。

12,12

尝试检查您的应用区域性和浏览器顺序区域性。如果使用逗号,则还需要输入Predicate inJsonNumbers = cb .function("jsonb_extract_path_text", String.class, root.get("json"), cb.literal("number")) .in(filter.getJsonNumbers()) Predicate inJsonNames = cb .function("jsonb_extract_path_text", String.class, root.get("json"), cb.literal("name")) .in(filter.getJsonNames())