Let\'s say my method has a argument of type Double. but sometimes what I pass is an int like 7 and not a double like 7.0 , so if I use ToString method then 7 will be \"7\" ,
Are you looking for this?
double x = 7.0;
String Display = x.ToString("0.0", CultureInfo.CreateSpecificCulture("de-DE"));
you need to use
string.format
msdn
http://msdn.microsoft.com/en-us/library/system.string.format.aspx
http://msdn.microsoft.com/en-us/library/dwhawy9k.aspx
It already is culture sensitive, it pays attention to the Thread.CurrentCulture property. That won't be English when a French user is running your program. Don't do anything special unless you know for a fact that the default culture is not correct.
Besides all the correct answers to your question I'd like to hint you into using CultureInfo.InvariantCulture
for any scenario where you are about to store data into a file, database etc.
Had I known this earlier, it would have saved me lots of time and pain.