C# string.IndexOf различается в разных средахC#

Место общения программистов C#
Anonymous
C# string.IndexOf различается в разных средах

Сообщение Anonymous »

Я получаю странные результаты для string.IndexOf в некоторых средах (к сожалению, у меня нет прямого доступа к машине для получения подробной информации). Но поведение похоже на то, что я могу смоделировать здесь:

Код: Выделить всё

    var testString = "STX";
var iof = testString.IndexOf('\u20BD'.ToString(), 0, StringComparison.InvariantCultureIgnoreCase);
Console.WriteLine($"IOF: {iof}");
В Roslyn 4.8 результат равен 0, что для меня неожиданно:
https://dotnetfiddle.net/ZX3s2z
Однако , для .NET7 результат будет, как и ожидалось, -1:
https://dotnetfiddle.net/7mvKuP
То, что мне удалось получить от целевой машины, FrameworkDescription< /code> — это описание платформы .NET 7.0.0-rc.2.22472.3, и здесь код возвращает 0 вместо -1.
Может ли это быть связано с версией RC и обновление среды выполнения .NET решит эту проблему?


Подробнее здесь: https://stackoverflow.com/questions/788 ... vironments

Вернуться в «C#»