Description
Synopsis
This issue is a minor but extensive style refactoring proposal to replace all invocations of string.Format(IProvider, string, ...)
where the provider is explicitly specified to be the literal CultureInfo.CurrentCulture
with string.Format(string, ...)
.
The expected benefit is simpler, more readable code.
No Change In Behavior
This change will not alter any behavior, since the the string.Format
method uses the current culture by default anyway if no provider is passed. As stated in the first sentence under the heading "String.Format Method > Remarks > Formatting and culture",
Generally, objects in the argument list are converted to their string representations by using the conventions of the current culture, which is returned by the CultureInfo.CurrentCulture property. You can control this behavior by calling one of the overloads of Format that includes a provider parameter.
Feedback
First, is the content/risk/benefit of this proposed style refactoring accurately characterized herein?
Second, if this proposal is reasonable, would it be acceptable for someone (e.g. me, @travis-c-lagrone) to submit a single PR resolving this proposal? Or would it be preferable to approach it gradually over the course of multiple PRs?
Third, part of my motivation for raising this issue is to better understand the reason (if any) why string.Format
is so commonly invoked throughout the code base with the literal argument CultureInfo.CurrentCulture
. So that if there is a reason (e.g. facilitate culture parameterization), I can better address it as I perform some deep spot refactoring for other issues these days.