是否可以使用system.currency。它表示system.currency由于其保护级别而无法访问。什么是货币的替代。我可以在.NET中使用“System.Currency”吗?
回答
这可能是通过反射,但原因可能是它的出现是FromOACurrency()
和ToOACurrency()
静态方法上System.Decimal
,这是自/至OLE自动化Currency
类型的Visual Basic 6层的用途convering。
使用十进制。 Currency提供的所有函数都是Decimal,FromOACurrency和ToO货币的静态方法。
您实际上不能使用货币的十进制数。当你分裂时,你会在以后遇到更大的问题。假设你有1美元分成3分,即1/3 = 0.33(四舍五入),但是3×0.33 = 0.99!= 1.它可能很小,但是当你在会计和答案中这样做时,一个巨大的数字。这也是为什么.Net(默认其他编程语言)中默认的向上/向下行为是下一个偶数值(也称为银行家舍入)的原因,以最大限度地减少与我们正常的“人为”舍入方式相比的会计错误。
阅读此页面以获得更清晰的解释和专门处理金钱的课程。 Code Project : A Money type for the CLR
兼谈Rounding
-1的部分,因为此答案具有误导性。十进制是专门用于正确存储资金的数据类型。做计算是一种不同的问题,取决于上下文:如果你想在不损失金钱的情况下平均分配资金,你应该使用专门的函数/方法/类来正确地执行它(参见http:// martinfowler的.com/eaaCatalog/money.html)。 关于Code Project的引用文章基于一些无效的假设:不理解Decimal以基数10存储,测试也可以使用Decimal成功,但假定它们将失败。 – 2014-06-12 12:00:43
- 1. 我可以在Android应用程序中使用Net Dll吗?
- 2. 我可以在.net 3.5中调用.net 2.0 dll吗?
- 3. 我可以在SharePoint 2007中使用.NET 4吗?
- 4. 我可以在“Delphi 2007 for Win32”中使用.NET DLL吗?
- 5. 我们可以在没有COM的.NET中使用TypeIdentifierAttribute吗?
- 6. 我仍然可以在VisualStudio 2010中使用.NET Framework 1.1吗?
- 7. 我可以在任何.NET客户端中使用OperationContextScope吗?
- 8. 我可以在.NET 4.0项目中使用System.Xml 2.0吗?
- 9. 我可以在.NET 3.0中使用异步CTP吗?
- 10. 我可以在.NET 4.0中使用FsXaml吗?
- 11. 我可以在c#.NET中强制使用'this'关键字吗?
- 12. 我可以在VS2008中使用.NET Framework 4.0吗?
- 13. 我可以在Docker上使用Windows .Net应用程序吗?
- 14. 我可以在2.0 NET解决方案中使用4.0 NET项目吗?
- 15. 我可以在常规.NET项目中使用.NET Core编写的Nuget包吗?
- 16. 我可以在Linqpad中使用IronPython吗?
- 17. 我可以在UIScrollView中使用UIRefreshControl吗?
- 18. 我可以在iOS中使用system()吗?
- 19. 我可以在async.parallel中使用async.waterfall吗?
- 20. 我可以在Javascript中使用SendKeys吗?
- 21. 我可以在PhoneGap中使用Mojo.Controller.showAlertDialog吗?
- 22. 我可以在Phonegap中使用Cookie吗?
- 23. 我可以在sp_msforeachdb中使用EF4吗?
- 24. 我可以在NightWatchjs中使用ReportPortal吗?
- 25. 我可以在HTML中使用resourcekey吗?
- 26. 我可以在foreach中使用html.action吗?
- 27. 我可以在MulticastDelegate中使用BeginInvoke吗?
- 28. 我可以在SherlockFragmentActivity中使用NavigationView吗?
- 29. 我可以在WCF中使用INotifyPropertyChanged吗?
- 30. 我可以在cgo中使用C++吗?
重新标记为您 – 2008-09-30 00:32:03