对.refresh文件还有疑问的看过来

使用VS开发ASP.Net应用程序的朋友应该都碰到过以下两个小问题:一个就是跟在DLL下面的.refresh文件,另一个就是bin目录不能直接签入到VSS或TFS里。
对于.refresh文件一开始就是觉得可有可无,不知所谓。而bin目录中的dll不能签入的文件,很长时间都是通过VSS直接拖进去的。

.refresh文件究竟是做什么用的?

.refresh是VS发现引入了第三方(或自行开发)的库后自动加入的。这个文件可以直接在VS里打开,其内容非常简单,就是一个引入DLL的路径。在生成时如果通过这个路径发现.refresh记录的源文件是否发生变化,如果有更新就会自动更新,如果觉得该文件无用或者误删除就会导致第三方库文件不会自动更新的问题(见参考1)。所以.refresh是用于自动更新第三方库引入的一个记录文件。

bin目录签入VSS,伪命题?!

大家可以注意到,VS资源管理器中Bin目录的图标是单独的,而Bin目录主要存放引入到类库,由于开发过程中经常会涉及到调试、更新等,所以Bin目录本不该签入进去(见参考2/3)。

应该如何规划库文件?

以笔者的经验,一个项目至少分为两个解决方案(.Solution),其中一个是库解决方案比如Lib,另一个是应用项目比如App。Lib下的项目比如Model、BLL、DAL等,App下放各种应用比如MainWeb、WebService、ClientTools等,一个典型的项目目录组织如下图所示。
重点就是建立一个公共的DLL文件输出目录BinFactory,LIb下所有项目都是库项目,设置输出目录到BinFactory,App目录下的项目都引入BinFactory的dll文件。当Lib更新后就会把文件输出到BinFactory,而这个时候.refresh文件就比较有用了,因为同时可能有多个项目( MainWeb、WebService等)引入库文件,如果手动更新到每个项目的bin文件就比较麻烦了,有了.refresh就会自动完成这个动作,非常方便。而这时只需要将BinFactory文件签入就可以让团队共享了,每个项目的bin文件就不用签入了。事情到此就perfect了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值