در اکثر شرکتهای بزرگ و متوسط نرم افزاری، بخش مشترکی از پروژهها تحت عنوان فریم ورک و یا پروژههای مشترک (Common) از پروژههای جاری فاکتور گرفته میشود و ارتباط با آنها با ارجاعی (Reference) به اسمبلی آنها انجام مشود.
اما مشکل همیشگی این است که برای حفظ استقلال، مستقیما از پروژههای جاری به اسمبلیهای پایه ارجاع داده نمیشود؛ چون ممکن است بنا بر پایسته بودن نسخه پروژه جاری، قصد نداشته باشیم همیشه آخرین ورژن اسمبلیهای خارجی را دریافت کنیم، بلکه ارجاعی به اسمبلیها در یک پوشه در خود پروژه انجام میشود و شما بعد از هر بار تغییر در فریم ورک، باید اسمبلیهای جدید را به داخل پوشه، در تک تک پروژههای جاری تان کپی کنید.
برای خلاصی از این کار مدام و تکراری میتوانید از یک Batch فایل شبیه کد زیر استفاده کنید:
xcopy /s /y D:\Project\Framework\Framework.Web\bin\Debug\Framework.dll D:\Project\Current\DependentDLL
xcopy /s /y D:\Project\Framework\Framework.Web\bin\Debug\Framework.Common.dll D:\Project\Current\DependentDLL
xcopy /s /y D:\Project\Framework\Framework.Web\bin\Debug\Framework.Business.dll D:\Project\Current\DependentDLL
xcopy /s /y D:\Project\Framework\Framework.Web\bin\Debug\Framework.Web.dll D:\Project\Current\DependentDLL
کافی است این دستورات را در Note Pad کپی کنید و سپس با پسوند bat و مثلا با نام Update ذخیره کنید.
این فایل را در پوشه اسمبلیهای وابسته در پروژههای جاری تان کپی کنید و از این به بعد هر وقت خواستید آخرین ورژن اسمبلیهای خارجی را دریافت کنید دوبار روی این فایل کلیک کنید.
برای شخصی سازی بیشتر دستورات انتقال فایل در Batch فایلها اینجا و اینجا را بخوانید.