How do I tell .NET that a given DateTime is in a particular timezone? There seems to be no constructor where I can say "this is Paris time". If I serialise the time to JSON, remote systems think it's GMT when it's actually French.
If I try and force it to a French time zone, then it adds an hour which makes the time incorrect:
var france = TimeZoneInfo.FindSystemTimeZoneById("Romance Standard Time");
var frenchTime = TimeZoneInfo.ConvertTimeFromUtc(receipt.TransactionTimeStamp.Value, france);
I'm communicating with a 3rd party API which expects local times to be supplied in JSON format.