title: What influences the default currency of a windows desktop WPF application?
body: <p>My local development machine has its region set as United Kingdom. When I do this:</p>
  
  <pre><code> int total = 34;
   string.Format("{0:C}", total ?? 0);
  </code></pre>
  
  <p>I get the result "£34.00" as I'd expect. I have several unit tests that check similar string formatting occurs.</p>
  
  <p>The build server failed on these tests because the result came back as "$34.00" instead. When I check its region was set as United States so I changed it. I double checked the currency tab did indeed default to "£". And I rebooted the server just to be sure.</p>
  
  <p>It's still formatting these numbers as "$34.00". I changed the tests to ignore the first character to get the build through. But it begs the question: if resetting the Windows region doesn't change this behaviour, what does?</p>