[Export(typeof(IExample))]
internal class Example : IExample
{
private static IEnumerable<string> Process()
{
// do stuff and yeild return
}
private HashSet<string> myHash = new HashSet<string>(Process());
public someType MemberFunction(typeA _a, typeB _b, typeC _c)
{
if(!myHash.Contains(/* blah blah */))
// do more stuff and return
}
}
注意:MemberFunction()
在项目的其余部分中有 20+个参考。
然而,我得到CA1811:
CA1811避免未调用的私有代码'Example.Process()'似乎没有上游公共或受保护的呼叫者。
有没有办法绕过它,而不是抑制这个警告?
答案 0 :(得分:3)
由于某些原因,您的课程似乎是internal
,但您Export
了。
您的编译器只能看到它是内部的,并且您的函数不会从您的类所在的程序集中调用。它无法看到您的导出/导入的黑魔法背后。
如果你Export
某事,它应该是公开的。这就是重点。