我可以对使用相同密钥签名的所有程序集显示内部构件吗?

时间:2011-10-17 06:35:50

标签: c# .net internalsvisibleto

我有一个功能集合,我不想公开,但仍然可以访问我的其他程序集。这可以使用InternalsVisibleToAttribute完成,方法是指定它将使其内部可见的每个程序集。

我想知道是否有一种方法我不必指定所有引用程序集,而只是执行规则,即程序集必须由同一个snk签名才能使内部构件可见。

这个功能是否存在,若然,有人能指出我正确的方向吗?

3 个答案:

答案 0 :(得分:3)

不,我不相信任何类似的东西是自动提供的。

您可以编写自己的工具来生成[InternalsVisibleTo(...)]行,并添加单元测试以确保所有此类引用都具有相同的键。

答案 1 :(得分:1)

我不知道有什么能为你强制执行此操作并自动生成InternalsVisibleTo但你可以编写一个Visual Studio扩展来执行此操作。

答案 2 :(得分:0)

我希望几年前创建的实用程序可以让您的生活更轻松地将InternalsVisibleTo添加到AssemblyInfo.cs文件中。

这是链接: http://vkreynin.wordpress.com/2007/12/09/testing-internals-members-with-internalsvisibleto-attribute/