Причина, по которой у нас есть оператор «+ =» вместо «= +» в C, C # и C ++, заключается в том, что в форме = + вы не можете сказать в некоторых случаях, является ли «+» частью оператора или унарным » +».
аюсь выяснить, почему мой модульный тест не проходит (третье утверждение ниже):
var date = new DateTime(2017, 1, 1, 1, 0, 0);
var formatted = "{countdown|" + date.ToString("o") + "}";
//Works
Assert.AreEqual(date.ToString("o"), $"{date:o}");
//Works
Assert.AreEqual(formatted, $"{{countdown|{date.ToString("o")}}}");
//This one fails
Assert.AreEqual(formatted, $"{{countdown|{date:o}}}");
AFAIK, это должно работать правильно, но похоже, что он не передает параметр форматирования правильно, он выглядит как просто{countdown|o}
к коду. Есть идеи, почему это не удается?