MAUI项目出现XC0103警告:已添加标记扩展注解仍触发提示
.NET MAUI中CommunityToolkit转换器已标注注解仍触发XC0103警告
在.NET MAUI项目中使用CommunityToolkit.Maui提供的转换器(如IsNullConverter、IsNotNullConverter)时,触发了XC0103警告,尽管这些转换器类已经添加了对应的标记扩展注解。
警告内容示例:
XC0103 Consider attributing the markup extension "CommunityToolkit.Maui.Converters.InvertedBoolConverter" with [RequireService] or [AcceptEmptyServiceProvider] if it doesn't require any.
警告指向XAML中添加转换器为资源的位置,代码如下:
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit" xmlns:vm="clr-namespace:MenuTest" x:DataType="vm:MainViewModel" x:Class="Test.MainPage"> <ContentPage.Resources> <toolkit:IsNullConverter x:Key="IsNullConverter"/> <!-- 警告触发位置 --> <toolkit:IsNotNullConverter x:Key="IsNotNullConverter"/> <!-- 警告触发位置 --> </ContentPage.Resources> <ScrollView> ... </ScrollView> </ContentPage>
当前环境
- Visual Studio 版本:17.12.4
CommunityToolkit.Maui版本:9.1.1
复现步骤
- 下载示例项目
- 重建项目
- 在错误列表窗口查看警告
查看社区工具包的源代码确认,这些转换器类已经正确添加了[RequireService]或[AcceptEmptyServiceProvider]注解,按逻辑不应出现此类警告。
内容的提问来源于stack exchange,提问作者Lance
相关产品推荐
相关产品推荐

