LinqToExcel 和货币格式(文化)
LinqToExcel and currency format (Culture)
我在我的应用程序中使用 LinqToExcel 已经有一段时间了,并且一直工作得很好。
但我在从 Excel 读取货币字符串时遇到问题。
我还不能 post 图片,但是 excel 中的值是 9999
格式,如 9.999,00
(pt-BR)
我机器上的本地 LinqToExcel 可以很好地读取这个值 (9999),我可以将它转换为十进制。
但是在具有 en-US 区域性的 IIS 服务器上,它读取的值与 9,999.00 相同,因此当我尝试将 is 转换为十进制时,出现异常。
有没有办法为 LinqToExcel 或类似的东西设置默认文化?因为我不想替换 ,
和 .
太丑了。
我正在使用 C# VS2013。
实际上问题在于 excel 的第一行都是空字符串,因此如果用户将这些字段留空,LinqToExcel 将假定字符串为这些列的类型,返回屏蔽输入(9.999 ,00) 而不是整数值 (9999).
解决方法是在 excel 文件中使用 VBA 宏,以便在文件 saved/closed.[=10= 时将空字符串替换为 0(零) ]
我在我的应用程序中使用 LinqToExcel 已经有一段时间了,并且一直工作得很好。
但我在从 Excel 读取货币字符串时遇到问题。
我还不能 post 图片,但是 excel 中的值是 9999
格式,如 9.999,00
(pt-BR)
我机器上的本地 LinqToExcel 可以很好地读取这个值 (9999),我可以将它转换为十进制。
但是在具有 en-US 区域性的 IIS 服务器上,它读取的值与 9,999.00 相同,因此当我尝试将 is 转换为十进制时,出现异常。
有没有办法为 LinqToExcel 或类似的东西设置默认文化?因为我不想替换 ,
和 .
太丑了。
我正在使用 C# VS2013。
实际上问题在于 excel 的第一行都是空字符串,因此如果用户将这些字段留空,LinqToExcel 将假定字符串为这些列的类型,返回屏蔽输入(9.999 ,00) 而不是整数值 (9999).
解决方法是在 excel 文件中使用 VBA 宏,以便在文件 saved/closed.[=10= 时将空字符串替换为 0(零) ]