我查看了google和stack over flow并阅读了有关如何让InternalsVisibleTo工作的所有帖子。
但它不适合我。
请不要对此问题进行投票,因为我已尽力在论坛上查看并实施答案。
我的代码如下:
*在TestInternal项目内*
namespace TestInteral
{
[TestClass]
public class MyProviderTest
{
[TestMethod]
public void TestBar()
{
bool retval = false;
retval = new MyProviderClass().Bar();
Assert.AreEqual(true,retval);
}
}
}
*内部提供商项目*
[assembly: InternalsVisibleTo("TestInternal")]
namespace Provider
{
public class MyProviderClass
{
internal bool Bar()
{
return true;
}
private void UseBar()
{
bool retval = Bar();
}
}
}
我的测试类中出现以下错误。
错误1'Provider.MyProviderClass'不包含'Bar'的定义,并且没有扩展方法'Bar'可以找到接受类型'Provider.MyProviderClass'的第一个参数(你是否缺少using指令或汇编参考?)
请告诉我如何正确使用InternalsVisibleTo,以便我可以正确测试MyProviderClass中的内部方法。
由于
答案 0 :(得分:11)
假设您刚刚将EXACT代码复制并粘贴到问题中,这是一个简单的错字。我注意到测试程序集上的命名空间是TestInteral
,没有' N'。您的InternalsVisibleTo
声明中包含最后一个N'
[assembly: InternalsVisibleTo("TestInternal")]
可能就是这样。