vb.net引入类库后显示指定不明确错误

 象要引入命名空间system.data.sqlclient其实并非只有这么简单,引用命名空间(实际是引用该命名空间下的类库,使得在当前工程中可以引用或者说使用该类库中的类)有两种方式:一是在公共窗体类的顶端,就是类的上面声明imports system.data.sqlclient二是在菜单栏中选择"项目"-->"添加引用",在弹出的对话框中选择system.data.sqlclient选择以后,表面上没有什么变化,双击解决方案资源管理器中的my project,选择"引用"选项卡可以看到,对system.data.sqlclient命名空间的引用已经添加进工程了.当我们新建一个windows应用程序项目时默认引用如下命名空间:systemsystem.datasystem.deploymentsystem.drawingsystem.windows.formssystem.xml这时如果使用sqlconnection类,如:dim a as new sqlconnection系统会提示"未定义类型".由于当前工程已经引入了system.data命名空间,所以我们只要明确一下该类所处的具体位置就可以了,如:dim a as new sqlclient.sqlconnection 或dim a as new system.data.sqlclient.sqlconnection你也可以使用imports关键字引用system.data.sqlclient命名空间,如:imports system.data.sqlclient然后你就可以象如下这样声明sqlconnection对象dim a as new sqlconnection由于新建项目的不同,系统默认引入的类库或者说使用的命名空间也会不同,所以,在开始数据库编程之前你应当了解当前工程引用了哪些命名空间.如果你的项目中没有引用system.data,而你使用imports关键字这样引用imports system.dataimports system.data.sqlclient会出现"指定空间不包括任何公共成员或类型....."的错误如果你的项目中既引用了system.data又引用了system.data.sqlclient命名空间,当然大多数情况都是由于误操作引起的,你会发现,无论你是否使用imports关键字引用imports system.dataimports system.data.sqlclient在使用以下任何一条代码时dim a as new sqlconnectiondim a as new sqlclient.sqlconnectiondim a as new system.data.sqlclient.sqlconnection都会出现sqlconnection在命名空间system.data.sqlclient中不明确的错误.这时你必须双击my porject,在"引用"选项卡上将对命名空间system.data.sqlclient的引用移除.出现这种状况,据我判断可能是重复引用造成的,但是使用imports关键字引用却不会出现重复引用的问题.(我就是遇到这个问题,困扰了2个多小时才解决)如果你的项目中只引用了system.data.sqlclient命名空间而未引用system.data命名空间,则会出现要求必须引用基类的错误提示.以上是我对引用的一些理解,以此类推,在应用程序的开发中使用系统提供的类库应当会遵循以上的使用规则,出现这类问题,多试试就可以了,另外如果你声明一个类和系统提供的类重名,可能也会出现重复引用的问题.希望我的这一点点经验能让其他初学者少走一点弯路

 

 

WINCE下的编程是工程中引入和代码中同时imports;到了PC下工程中引入system.data后不能同时引入system.data.sqlclient;否则会出现指定不明确的错误!

阅读更多
个人分类: vb.net
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭