title: Resource files, string.Format and placeholders in .NET
body: <p>As far as I know, the best way to handle dynamic data in a localized string using resource files in .NET is to have your localized string in the resources.resx file with a placeholder in it: <em>Lorem {0} ipsum.</em> and in your code, to handle it this way: <code>string.Format(Resources.My_Localized_Key, myValue);</code>.</p>
  
  <p>My concerns are the following:</p>
  
  <p>1/ How to be sure that the placeholder will be replaced by an actual value? For example, a new developer in your team may need to use this localized string in some new piece of code he's writing but not being aware he has to feed it with some data. Nor what kind of data.</p>
  
  <p>2/ If later, for some reasons, the localized string changes to <em>Lorem {0} ipsum {1}.</em>, how can we ensure that all uses of this string across the application will be updated?</p>
  
  <p>Is there any better way to handle this? For example a way to handle these placeholders in a strongly-typed manner without having to use reflection or having to parse the content of the localized string...? Or is it just the way to do it?</p>