共用方式為


StringValues 隱式運算子解析中的多載歧義問題

在 .NET 9 中,params Span<T> 功能的重大變更會引起與StringValues的隱含運算符間的模棱兩可。 這項變更會導致編譯程式在遇到模棱兩可的方法呼叫時擲回錯誤 CS0121

先前的行為

先前在 受影響 API 一節中提及的 API,沒有與 StringValues 的隱含運算子混淆的多載。 因此,編譯程式會毫無問題地解決多載函式。

新行為

編譯程式在遇到這些模棱兩可的多載時擲回錯誤 CS0121 ,導致下列錯誤:

CS0121: The call is ambiguous between the following methods or properties: 'Program.Join(string, params string[])' and 'Program.Join(string, params ReadOnlySpan<string>)'

推出的版本

.NET 9

破壞性變更的類型

這項變更是 來源相容性 變更。

變更的原因

StringValues 具有的隱含運算符 string ,且 string[] 會導致與 params Span<T> lang 功能衝突。

將自變數轉換成適當的類型或套用具名參數,明確指定您想要呼叫的方法。

受影響的 API