C# 我应该何时在.NET应用程序中实现全球化和本地化?
我正在清理我编写的一个C#应用程序中的一些代码,并试图专注于最佳实践和编码风格。因此,我正在通过FXCop运行我的程序集,并试图研究它给我的每条消息,以决定应该和不应该更改什么。我目前关注的是区域设置。例如,我当前遇到的两个错误是,我应该为Convert.ToString(int)指定IFormatProvider参数,并设置Dataset和Datatable区域设置。这是我从来没有做过,也从来没有花太多的心思。我总是不去想那些多余的东西 我目前正在开发的应用程序是一家小型公司的内部应用程序,它很可能永远不需要在其他国家运行。因此,我认为我根本不需要设置这些。另一方面,这样做不会有什么大不了的,但似乎没有必要,可能会在一定程度上阻碍可读性C# 我应该何时在.NET应用程序中实现全球化和本地化?,c#,.net,localization,globalization,C#,.net,Localization,Globalization,我正在清理我编写的一个C#应用程序中的一些代码,并试图专注于最佳实践和编码风格。因此,我正在通过FXCop运行我的程序集,并试图研究它给我的每条消息,以决定应该和不应该更改什么。我目前关注的是区域设置。例如,我当前遇到的两个错误是,我应该为Convert.ToString(int)指定IFormatProvider参数,并设置Dataset和Datatable区域设置。这是我从来没有做过,也从来没有花太多的心思。我总是不去想那些多余的东西 我目前正在开发的应用程序是一家小型公司的内部应用程序,它
我理解微软的论点是,如果它在那里,就使用它。从技术上讲,我应该对实现IDisposable的每个对象调用Dispose(),但我不想对数据集和数据表这样做。我想知道在小型内部应用程序的全球化和本地化方面,“在野外”的做法是什么。我通常忽略小型内部应用程序的此类警告。请记住,FXCop的目的是确保您的代码适用于框架,并非所有代码都与您相关,我总是在构建应用程序时禁用各种我认为不适合它们的规则
尽管我会在实现它们的任何类上调用Disponse,但如果它们现在不执行任何操作,则无关紧要,该类的升级版本可能会开始泄漏一些基本内容,这是一个好习惯。如果不在数据集上调用Dispose,则必然会出现内存泄漏。这是两个问题。第2部分与标题完全无关。@Otavio:不,所有控件/组件都可以IDisposable,但不是所有这些类都需要它。@Henk:我只是想知道全球化和本地化。我只是提供了关于IDisposable的实践,作为我不遵循微软建议的一个例子,这是正确的。我将对我的问题稍加修改,使之更加清晰。根据对一个已删除问题的评论,我将做一个简短的说明:我谈论的一个例外是WCF代理类。这是我所知道的唯一一个
Dispose
可能引发异常的情况。如果使用块在末尾调用Dispose
,然后抛出异常,则您将丢失已在进行的任何异常。