方法是否有可能具有双重访问修饰符?

Is it possible for methods to have dual access modifiers?

我有很多内部定义的方法,如下所示:

internal static string GetAJobShaNaNaNaShaNaNaNaNaNa(string Silhouettes)

但是,为了从添加到解决方案的测试项目中调用它们,我需要将它们的访问修饰符从内部更改为 public。

是否有一种简单的方法可以使这些方法 public 用于测试,但在其他情况下仍保留在内部?

为什么不在程序集中添加 InternalsVisibleTo 以允许测试访问?

[assembly:InternalsVisibleTo("YourTestAssembly")]

您可以使用 internalsvisibleto 属性。 https://msdn.microsoft.com/en-us/library/system.runtime.compilerservices.internalsvisibletoattribute.aspx