string.IndexOf在不同环境下行为不一致的问题咨询
string.IndexOf在不同环境下行为不一致的问题咨询
我遇到了一个关于string.IndexOf的奇怪问题,在部分环境里得到的结果完全不符合预期,可惜我没法直接访问出问题的机器获取详细信息,但我能模拟出类似的行为:
var testString = "STX"; var iof = testString.IndexOf('\u20BD'.ToString(), 0, StringComparison.InvariantCultureIgnoreCase); Console.WriteLine($"IOF: {iof}");
用Roslyn 4.8运行这段代码时,输出是0,这完全出乎我的意料;但在正式版.NET 7里运行,输出是符合预期的-1。
我从出问题的机器上拿到了Framework描述,是.NET 7.0.0-rc.2.22472.3,在这个版本里代码返回的是0而不是-1。
我想请教一下,这个问题会不会和RC版本有关?是不是升级.NET运行时就能解决这个问题?
备注:内容来源于stack exchange,提问作者Jan Drozen
相关产品推荐
相关产品推荐

