An invariant culture is simply such that it is invariant. You cannot change it.
This culture is for .NET applications that need to store data in such a way that they are transferred between cultures.
It is not assumed that users will be displayed or should care about the format that this data accepts, it must always be converted to their specific culture before viewing the data.
How much could you do if you really wanted this DateTime format to start defining a new culture (perhaps based on a culture of invariants, if you want).
var myStandardCulture = (CultureInfo)System.Globalization.CultureInfo.InvariantCulture.Clone(); myStandardCulture.DateTimeFormat.FullDateTimePattern = "yyyy'-'MM'-'dd' 'HH':'mm':'ss"; return myStandardCulture;
The disadvantage of defining your own culture is that other .NET applications that try to read your files will also need to talk about all your new culture rules, and not just accept the InvariantCulture rules built into .NET.
source share