A family of Microsoft suites of integrated development tools for building applications for Windows, the web, mobile devices and many other platforms. Miscellaneous topics that do not fit into specific categories.
Update the .NET version that your project actually targets: a net10.0-ios project needs the .NET 10 workload set with Xcode 27.2 support, while the installed 27.2.11039/11.0.100 workload applies to net11.0-ios.
If the project targets .NET 10
Open the MAUI .csproj and check TargetFrameworks, for example:
<PropertyGroup>
<TargetFrameworks>
net10.0-android;net10.0-ios;net10.0-maccatalyst;
net10.0-windows10.0.19041.0
</TargetFrameworks>
</PropertyGroup>
If it contains net10.0-ios, install .NET SDK 10.0.404 and its 10.0.404 workload set, which contains .NET for iOS 27.2.10000 supporting Xcode 27.2. The currently installed .NET 11 workload does not replace the pack selected for a .NET 10 target. Workload commands operate in the context of the selected SDK version ^1^.
After installing SDK 10.0.404, run from the solution directory:
dotnet --list-sdks
dotnet new globaljson --sdk-version 10.0.404 --force
dotnet workload install ios maccatalyst maui --version 10.0.404
dotnet workload --info
dotnet clean
dotnet build -f net10.0-ios
The expected result is that the build resolves Microsoft.iOS.Sdk.net10.0_27.2 rather than Microsoft.iOS.Sdk.net10.0_26.0. The Xcode 27.2-compatible .NET 10 release and workload set are listed on the Apple workload releases page ^2^.
The generated global.json is useful here because it makes the CLI and workload commands select SDK 10.0.404 consistently. Without one, dotnet selects the latest installed SDK—currently 11.0.100 in your environment ^3^.
On Windows, avoid mixing Visual Studio-managed MAUI workloads with repeated manual workload uninstall/reinstall operations. If the CLI installation leaves Visual Studio unable to locate workloads, use Visual Studio Installer → Modify → .NET Multi-platform App UI development to repair the installation; Microsoft documents that mixed CLI and Visual Studio workload management can cause this state ^4^.
If the project already targets .NET 11
For net11.0-ios, your displayed workload is already the correct Xcode 27.2 workload:
- workload set:
[IP Address] - iOS pack:
27.2.11039 - Xcode:
27.2
In that case, the 26.0.11017 error means the build is resolving a different SDK or target framework than the dotnet workload list command. From the directory containing the solution, run:
dotnet --version
dotnet workload --info
dotnet build -f net11.0-ios -v:diag > build.log
Then search build.log for:
Microsoft.iOS.Sdk.net
MSBuildSDKPath
global.json
Also check parent directories for a global.json; SDK discovery searches upward and can use a file outside the project directory ^5^. Check Directory.Build.props in the solution and parent directories for overrides of TargetFramework, TargetFrameworks, or MSBuildSDKPath.
If necessary, pin the already installed .NET 11 SDK at the solution root:
{
"sdk": {
"version": "11.0.100",
"rollForward": "latestPatch"
}
}
Restart Visual Studio after changing the selected SDK, delete the project’s bin and obj directories, and rebuild.
Do not bypass the check as the primary fix
ValidateXcodeVersion=false suppresses only the version validation. Microsoft notes that using a different Xcode version may sometimes build, but it is unsupported ^6^. Because supported Xcode 27.2 workloads are available for both .NET 10 and .NET 11, align the target framework and workload instead.
References