博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.NET添加引用后,但在代码中使用using时却找不到命名空间?
阅读量:4213 次
发布时间:2019-05-26

本文共 1506 字,大约阅读时间需要 5 分钟。

在同一个解决方案(.sln)下的A工程(.csproj)引用B工程的.dll后,在代码中使用using是无法找到对应命名空间。

如图1所示,MCC.Client引用了MCC.Business工程生成的.dll,但在图2中,报了“Error 2 The type or namespace name 'UserProfile' could not be found (are you missing a using directive or an assembly reference?) C:\Documents and Settings\a531032\My Documents\visual studio 2010\Projects\MCC\MCC.Client\SysUtility\AppContext.cs 15 24 MCC.Client”的错误。

图1 解决方案结构

图2 编译错误

由于之前修改过工程名称,一直以为是这个原因造成的引用失败,便沿着一下方向查了一遍错误,最终找到了原因。

  • 查找被引用工程(此例中的MCC.Business工程)的Properties/Assembly.cs文件中AssemblyTitleAssemblyProduct是否有误?如图3所示。

图3 MCC.Business的Properties/Assembly.cs文件

  • 右键查看被引用工程(此例中的MCC.Business工程)的属性是否正确?如图4所示

图4 MCC.Business的属性页

  • 查找引用者工程的.csproj中的值是否与MCC.Business的Assembly信息一致?如图5所示

图5 MCC.Client的.csproj文件

  • 查看引用者工程的属性页,字段“Target Framework” 是否置为了“.NET Framework 4 Client Profile”?如图6所示

图6 MCC.Client的属性页

问题找到了

我的问题出在了创建MCC.Client工程(一个WinForm工程)时,VS 2010默认选择了“.NET Framework 4 Client Profile”,以便于在客户端部署时的便捷。但由于MCC.DataAccess工程中引用了System.Data.OracleClient(其并非包含在.NET Framework 4 Client Profile库中,而在.NET Framework 4 Full库中)。之后,MCC.Business引用了MCC.DataAccess生成的.dll,当MCC.Client去引用MCC.Business生成的.dll时,发现该.dll又引用了.NET Framework 4 Client Profile不包含的内容,所以在编译时MCC.Client对MCC.Business的.dll给出编译错误。

========================

.NET Framework 4 Client Profile 相对于 .NET Framework 4 的区别

  • 是后者的一个子集
  • 减少.NET Framework以及包还.NET Framework的应用程序的部署时间
  • 减少.NET Framework部署的失败
  • 减少.NET Framework在ISV软件的所占大小,从而给其软件更多的空间
  • 减少安装了.NET Framework Client Profile的系统受攻击的“界面”,因为Client Profille中部包括ASP.NET和一些服务器所要的组件
  • 从下图可以看到两者大小差异

网址: 

转载地址:http://uxzmi.baihongyu.com/

你可能感兴趣的文章
ARC MRC 变换
查看>>
Swift cell的自适应高度
查看>>
【linux】.fuse_hiddenXXXX 文件是如何生成的?
查看>>
【LKM】整合多个LKM为1个
查看>>
【Windows C++】调用powershell上传指定目录下所有文件
查看>>
Java图形界面中单选按钮JRadioButton和按钮Button事件处理
查看>>
小练习 - 排序:冒泡、选择、快排
查看>>
SparkStreaming 如何保证消费Kafka的数据不丢失不重复
查看>>
Spark Shuffle及其调优
查看>>
数据仓库分层
查看>>
常见数据结构-TrieTree/线段树/TreeSet
查看>>
Hive数据倾斜
查看>>
TopK问题
查看>>
Hive调优
查看>>
HQL排查数据倾斜
查看>>
DAG以及任务调度
查看>>
LeetCode——DFS
查看>>
MapReduce Task数目划分
查看>>
ZooKeeper分布式锁
查看>>
3126 Prime Path
查看>>