我有两个应用程序App1和App2. App1添加了对App2的引用,App2添加了对System.Drawing的引用.
在App2中有一个带有两个重载的函数,第一个是受保护的,有一个来自System.Drawing.Bitmap的参数,第二个是public有一个整数参数.
namespace App1Namespace { class Program { static void Main(string[] args) { App2Namespace.Staticclass.Func(4);
namespace App2Namespace { public class Staticclass { protected static void Func(System.Drawing.Bitmap bitmapParam) { } public static void Func(int intParam) { }
构建App1时,将抛出以下编译时错误:
Error 1 The type ‘System.Drawing.Bitmap’ is defined in an assembly
that is not referenced. You must add a reference to assembly
‘System.Drawing,Version=4.0.0.0,Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a’.
虽然具有Bimap param的Func受到保护,但App1需要引用System.Drawing.
问题是为什么App1需要System.Drawing?以及为什么只有在调用第二个重载时才出现此错误,并且在调用另一个重载(例如有两个参数)时不会出现此错误?
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。