怎样跨namespace 传值?

wugamp 2017-04-01 02:24:52
solution 里有两个项目,分别有各自的namespace, 代码如下:
第一个文件:
namespace A
{
public partial class A: Form
{
......
}
}
第二个文件:
namespace B
{
public partial class B: Form
{
......
}
}

结果发现:class A 里可以引用 class B,反之则不可。即使我在第二个文件开头加上 using A,也还是无法引用 class A。
请问这是为什么?

...全文
318 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yunqing1201 2017-04-11
  • 打赏
  • 举报
回复
交叉是不能引用的,你的程序结构逻辑问题,理清楚就行啊
pamgu 2017-04-06
  • 打赏
  • 举报
回复
可以用TAG
Lee_Y_K 2017-04-01
  • 打赏
  • 举报
回复
先理解项目分层的需求,如果需要相互引用,那有必要分层?
john_QQ:2335298917 2017-04-01
  • 打赏
  • 举报
回复
循环依赖了,这样不可以
xuggzu 2017-04-01
  • 打赏
  • 举报
回复
一句话:代码划分不合理。 命名空间是用于层次划分用的,不同层次有不同规则,该空间的东东要依循自己空间的规则。访问另一空间时就要遵守该空间规则。 怎么划分命名空间当然是使用者的自由,但乱分只会搞乱规则,让自己,也让别人思路乱套。
angel6709 2017-04-01
  • 打赏
  • 举报
回复
不能循环依赖
pamgu 2017-04-01
  • 打赏
  • 举报
回复
两个命名空间应该分别对应于两个项目,两个项目之间有依赖关系。A依赖B,所以A能看见B里有什么,反过来就不行了。
Poopaye 2017-04-01
  • 打赏
  • 举报
回复
如果A引用B,那么加载A之前会先加载B 如果B又引用A,那么加载A之前会先加载B,但是加载B又必须先加载A,所以不可以。
wugamp 2017-04-01
  • 打赏
  • 举报
回复
补充:我如果在第一个文件里输入 B.,后面立刻就会跳出 class B,说明VS2010知道namespace B 里有什么东西。 但我如果在第二个文件里输入A.,后面就只会跳出 {}properties,而不会跳出 class A。

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧