C#引用同一个项目namespace的引用问题,初学者,谢谢。
1.类似于Java的package,在C#我也想把一些类封装成package,那么请问在我这个项目结构里面,为什么我usingTestNamespace.的时候,没有代码...
1.类似于Java的package,在C#我也想把一些类封装成package,那么请问在我这个项目结构里面,为什么我using TestNamespace. 的时候,没有代码提示,没有提示Bean?2.请问实际开发里面,这个项目类是放在解决方案根目录还是放在当前主窗体的项目下,谢谢。
展开
1个回答
展开全部
c#不像java那样通过路径和文件名来约束引用关系。而是通过项目属性和代码。你的bean在C#里叫类库,不叫包。编译好后在bean库bin下面就有相应dll。测试项目-引用-右键-添加引用并浏览此dll,然后就可以using其namespace,使用里面的类(当然要改成public的)。这个dll你可以随意复制到什么地方都可以引用。另外由于它们在同一个解决方案下更方便的就是在添加引用时勾选项目名称,而不是浏览dll,这样每次编译后会自动把那个dll复制到引用项目的bin下面。
追问
非常高感谢你的回答,最后想问一个细节,在实际开发里面,类库的位置是解决方案的根目录,还是引用这个类库的当前项目的类库。
比如解决方案Result,我的项目Project想引用Bean这个类库。
那么类库创建的位置是Result目录下和Project同一级还是放在Project目录下。
谢谢。,
追答
库与应用程序是相同等级的,在C#的编译单位都是“项目”,也就是csproj,你可以用文本方式打开看。因此不管从逻辑上还是VS的默认配置上都是平行的。我还没看见过一个项目包含另一个的情况。至于文件夹,你建多少层都没有关系,在文件夹里新建类文件会自动添加命名空间,但也可以任意手工修改命名空间,所以C#根本不需要考虑这些文件夹和文件层次。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询