DotNet 项目中链接文件的用处

DotNet 项目中链接文件的用处

首先,什么是链接文件?

在VS.Net中打开一个WinForm项目或者DLL项目(在Web项目中不能使用链接文件,感谢dudu指出),在随便一个项目中右击鼠标,选择“添加”→“添加现有文件”(抱歉,手头的机器太差,没有装VS.Net,所有的操作说明全凭记忆,如果有出入敬请原谅),随便选中一个文件,不要选“打开”,点击“打开”按钮右侧的下拉菜单,选择“链接文件”;

选中的文件已经添加到了你的项目中,但是这个文件和你平常添加到项目中的文件是不一样,这仅仅是一个指向你所选择文件的链接,相当于一个快捷方式;文件在你指定添加的位置上是不存在的,但是你可以照样地对这个文件进行编辑、编译等操作,和普通文件地使用并没有什么不同;

链接文件有什么用处?我能想到的大概有这么几个:

1.给可执行文件项目进行单元测试;
由于被测试的项目必须是DLL,才能够被NUnit单元测试项目引用而进行测试,因此如果你把逻辑代码放到了可执行文件项目中,NUnit就无用武之地了;

这种情况下要进行单元测试,可以新建一个DLL项目,通过链接文件把可执行文件下的所有文件都进行链接,然后把NUnit单元测试项目的引用指向这个项目,这样就可以用NUnit进行测试了;当你的可执行文件进行了修改的时候,“链接项目”的编译结果也会是最新的。

2.引用其他可执行文件项目
如果你要在自己的项目中引用其他可执行文件项目中的代码,除了将被引用项目的属性临时修改为DLL,编译后再改回来,似乎没有其他办法了。

类似上面对可执行文件项目执行单元测试的情况,我们同样可以使用链接文件解决这个问题:新建一个引用被引用的可执行文件项目的DLL项目,将你自己的项目引用指向这个新建的DLL项目即可;

上面两种情况,究其根本都是系统设计不当造成的,重构或者修改设计可以避免这种问题,但是实际中总是很难做到,用链接文件作为补救措施总还算是一种比较好的亡羊补牢方式。

3.给一个解决方案中的项目统一版本信息和签名信息
一个项目的版本信息和签名信息是在该项目的Assembly.cs文件中指定的,将所有的项目中的Assembly.cs文件都链接至同一个文件,以后只要修改这个Assembly.cs文件中的内容,就可以保证所有项目的版本信息和签名信息都是一致的。 NAnt 项目的 Build 过程就是这样的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值