我将 ReSharper 8.2.3 完整版与 Visual Studio Ultimate 2013 和 .NET 4.5 一起使用。
背景是我有一个带有大量项目的C# WPF解决方案。为了简化这里的描述,我有以下项目:
项目 1:具有 UI 资源(样式、字体等)的库,包括名为 ResourceLibrary.xaml 的资源字典。
项目 2:带有一些 WPF 用户控件/视图和 app.xaml 的主 exe。WPF 用户控件不直接引用项目 1 中的 ResourceLibrary.xaml。IntelliSense 工作正常,ReSharper 不会生成任何警告(蓝色波浪线)。
项目 3:带有一些 WPF 用户控件/视图的库。所有这些用户控件都引用 ResourceLibrary.xaml:
<UserControl.Resources>
<ResourceDictionary Source="/<my_resource_namespace>;component/ResourceLibrary.xaml" />
</UserControl.Resources>
IntelliSense 工作正常,ReSharper 不会生成任何警告(蓝色波浪线)。
该解决方案构建良好,IntelliSense 工作(在 ResourceLibrary.xaml 中找到静态资源)并且 ReSharper 不会生成任何警告。
但是,如果删除上述行,IntelliSense 将不起作用,并且 ReSharper 会生成警告“找不到资源 XXX”。请注意,项目 2 中的 XAML 文件并非如此,它也使用资源库中的资源。该解决方案构建良好。
由于性能原因,我想避免在每个 XAML 文件中包含资源库,但我确实希望 ReSharper 给我相关警告。这个问题有解决方法吗?
我知道我可以在 ReSharper 中关闭“找不到资源 XXX”警告,但这会阻止我检测到真正的资源问题。