آموزش برنامه نویسی

Bundles چیست و چگونه در دات نت Bundles تعریف کنیم

Bundles چیست و چگونه در دات نت Bundles تعریف کنیمReviewed by مهدی نیکخو on May 17Rating: 5.0Bundles چیست و چگونه در دات نت Bundles تعریف کنیم اگه کمی کنجکاوی به خرج بدیم میبینیم که فایل های jquery یا بوت استرپ به پروژه اضافه کرده اما این مسیر در مسیر پروژه ما قرار نداره !!! اینجاست که با موضوع Virtual path ها آشنا میشیم بله دات نت کتابخانه ای برای مسیر های مجازی خودش داره صبر کنید براتون توضیح میدم اون کتابخونه کجاست :)

سلام دوستان عزیز امیدوارم حالتون مثل همیشه خوب باشه

موضوع امروز در رابطه با bundles ها هستش و میخواهیم ببینیم چی هستند این عجایب دات نت و چه استفاده هایی دارند پس با من همراه باشید تا بیشتر bundles ها را بشناسیم

اگه تا به حال به پروژه MVC که خود دات ایجاد میکند دقت کرده باشید در قسمت Layout از کد های به شکل زیر قرار دارند :

 @Scripts.Render("~/bundles/jquery")
    @Scripts.Render("~/bundles/bootstrap")

اگه کمی کنجکاوی به خرج بدیم میبینیم که فایل های jquery  یا بوت استرپ به پروژه اضافه کرده اما این مسیر در مسیر پروژه ما قرار نداره !!! اینجاست که با موضوع Virtual path ها آشنا میشیم بله دات نت کتابخانه ای برای مسیر های مجازی خودش داره صبر کنید براتون توضیح میدم اون کتابخونه کجاست 🙂

حالا که با Bundling آشنا شدیم باید از خودمون بپرسیم چی هست و به چه دردی میخوره ؟

bundling و minification تکنیکهایی هستند که در asp.net جهت کاهش زمان لود درخواست، استفاده می‌شوند به طور دیگه برای بهینه تر کردن درخواست از سمت کاربر با تعداد ریکوئست های کمتر و هستش که در نتیجه در زمان بارگزاری صفحه و سرعت سایت تاثیر دارد.

نکته : bundle به معنی بسته بندی کردن است و با این روش می توان چندین فایل js یا css را به صورت یک bundle در آورد و برای فایل های مورد نطر تنها با یک درخواست به سرور، آنها را لود نمود.

خب bundles ها کجا تعریف شده اند ؟

در مسیر پروژه در پوشه ی APP_start و فایل bundleConfig.cs قرار دارد و name space این کلاس System.Web.Optimization می باشد

در داخل فایل  bundlesConfig.cs ما یک کلاس به اسم BundleConfig میبینیم که داخل آن یک متد به نام RegisterBundles وجود دارد اگه دقت کنید تمام boundle هایی که تعریف شده به صورت زیر می باشند

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                        "~/Scripts/jquery-{version}.js"));

که با استفاده از متد add یک شی ای از نوع ScriptBundle  تعریف میکنیم که در داخل آن مسیر مجازی که باید تعریف بشه را مینویسم و بعد با استفاده از متد Include شیوه جست و جو در مسیر و نامی که قراره فایل اصلی باشه را مینویسیم.

 

مهدی نیکخو

در حال حاضر مشغول خدمت سربازی ام، یه گروهبان خوشحال که سعی میکنه در حین خدمت یادبگیره، یاد بده و از همه مهم تر تلاش کنه تا دنیایی بهتر داشته باشیم.

نظر شما چیست؟