نحوه ساخت وب ستاپ در برنامه های ASP.NET
توسعه وب

نحوه ساخت وب ستاپ در برنامه های ASP.NET

۲ 244

برنامه های تحت وب عموماً در اینترنت میزبانی میشن ولی ممکن هست که شما بخواین یک وب اپلیکیشن تجاری رو در محیط مشتری نصب کنید. مسلماً اولین چیزی که بواسطه معماری برنامه های وب ِمایکروسافت به ذهن میرسه استفاده از IIS هست. از طریق ایجاد یک ویرچوال دایرکتوری و باقی قضایا … بدیهی است که در این حالت نصب دیتابیس SQL می بایست در سرور انجام شه و تنظیمات کانکشن استرینگ رو هم اعمال کنید. اما با توجه به شیوه متداول نصب برنامه های ویندوزی شاید این سوال به ذهن برسه آیا میشه برای وب اپلیکیشن هم ستاپ ساخت؟ جواب این سوال مثبت هست بطوریکه ابزارهای زیادی هم تولید شده که این کار رو با امکانات بیشتری فراهم می کنه. اما در این پست من روشی رو می گم که با استفاده از امکانات ویژوال استادیو این کار قابل انجام هست. اصطلاحاً به این روش MSI Installer هم گفته میشه. روش کار ساده هست به این ترتیب که یک وب سایت ایجاد می کنیم، از طریق Microsoft Web Deployment برنامه رو precompile می کنیم و در آخر با استفاده ازWeb Setup خروجی MSI رو که همون ستاپ برنامه هست می گیریم. مراحل باختصار:

  • در ابتدا نیاز هست تا add-in مربوط به Web Deployment رو برای VS2010 از اینجا دانلود و نصب کنید. بعد یک وب سایت یا وب اپلیکیشن ایجاد کنید. به دلیل مزایایی که در merge فایل های dll در وب اپلیکیشن هست شاید انتخاب مناسب تری باشه.
  • سپس در Solution Explorer روی نام وب سایت کلیک راست و گزینه Add Web Deployment Project رو انتخاب کنید.  نام و مسیر رو وارد کنید.
  • در این مرحله می بایست Web Setup رو اضافه کنیم. برای این کار روی سولوشن پروژه در Solution Exp کلیک راست و Add New Project کنید سپس از قسمت سمت چپ از طریق Other Project Type/Setup and Deployment و انتخاب VS Installer می تونید به Web Setup Project برسید. اون رو انتخاب و OK کنید.
  • در Solution Explorer سه پروژه خواهید داشت: Web Site+ Web Deploy + Web Setup. روی Web Stup کلیک راست کرده و از طریق گزینه Add یک Project Output ایجاد کنید. دقت کنید در پنجره ای که باز می شود باید پروژه Web Deployment را انتخاب کنید. در واقع با این انتخاب خروجی Deployment محتوای Web Setup خواهد بود.
  • در مرحله بعد از سولوشن پروژه Properties بگیرید و گزینه Project Dependency رو انتخاب کنید. برای پروژه Setup باید هر دو چک رو بزنید. برای Deploy فقط پروژه Website و برای Website هیچ کدوم از چک ها نیازی نیست. فکر کنیم دلیلش هم واضح باشه. در واقع ترتیب build با توجه به وابستگی پروژه ها بهم مشخص میشه.
  • در مرحله بعد می رسیم به Configuration Manager. مجدداً از سولوشن پروژه پراپرتی بگیرید و کانفیگویشن رو انتخاب کنید. در حالت Release تمام پروژه ها باید Build شود و در حالت Debug فقط Website.
  • حالا پروژه رو Build کنید. در خروجی Build فایل exe رو مشاهده می کنید.

هدفم صرفاً آشنایی خوانندگان با این روش بود. مطالعه جزئی تر بعهده خودتون. اما ممکن است قبل از نصب، نیاز باشه بررسی کنه که ببینه دات نت فریم ورک یا حتی SQL Express نصب هست یا نه. برای این کار میتونید از پروژه Setup در سولوشن بار Property بگیرید و در قسمت Prerequisite تنظیمات لازم رو انجام بدید. اگر از این آیتم استفاده کردید حتماً Windows Installer رو هم  انتخاب کنید.

در باره نویسنده / 

حمیدرضا متقیان

مدیر محصول Agile. علاقه مند به دنیای وب و ارزش آفرینی در کسب و کار دیجیتالی.

۲ دیدگاه

  1. skmr_ae ۱۳۹۱-۰۵-۲۳ در ۴:۵۶ ق.ظ - 

    سلام
    ممنون از لطفتون
    فقط برا مطالعه بیشتر نمیدونم باید در چه موردی سرچ کنم؟؟
    و اینکه این روشی که شما گفتید در سیستم مقصد ویرچوال دایرکتوری ایجاد میکنه؟؟(من سایتم بانک اس کیو ال داره)
    ممنونم

  2. حمیدرضا ۱۳۹۱-۰۵-۲۳ در ۵:۲۲ ق.ظ - 

    سلام
    بله IIS باید نصب باشه. اگر از نسخه SQL Express استفاده می کنید میتونید دیتابیس رو در پوشه App_Data قرار بدید و تنظیمات کانکشن استرینگ رو هم انجام بدید. فایل نصب اکسپرس رو هم در هنگامی که دارید وب ستاپ برنامه رو می سازید در قسمت پیش نیازهای نصب وارد کنید(در این قسمت بهتره دات نت فریم ورک و Windows Installer رو هم انتخاب کنید) تا بطور پیش فرض در صورت نصب نبودن SQL Express اول اونو نصب کنه و بعد برنامه رو. در این حالت نیاز به تنظیمات دیتابیس دیگه ندارید. فقط به پوشه ای که به نام برنامه در wwwroot می سازه باید مجوز Full Access برای اون یوزری که در ویندوز لاگین کرده بدید تا بتونه با دیتابیس کار کنه.
    اگر از نسخه غیر Express نیاز هست که استفاده کنید باید SQL رو مجزا نصب کنید و این روش برای نصب خود SQL کاربردی نداره. طبیعتاً در این حالت باید دیتابیس رو هم Attach کنید یا اسکریپت Run کنید و باقی قضایا.
    این لینک مقاله اصلی هست. و اینها + + + میتونه مفید باشه.

ارسال پاسخ

ایمیل شما نمایش داده نمی‌شود. موارد مورد نیاز علامتگذاری شده است *

*

code

عضویت در خبرنامه

نوشته های تصادفی

  • باور Agile

    باور Agile

    یه روز صبح از خواب بلند میشم و به خودم میگم من میخوام از امروز سلامت تر زندگی کنم و تصمیم میگیرم هر روز یه سیب بخورم. حتماً اون ضرب المثل بلاد بیگانه رو شنیدید که میگه: An Apple a Day Keep Doctor Away.  اما جالب اینجاست که من در کنار خوردن سیب همچنان بخوردن…

  • 5 افسانه Agile

    ۵ افسانه Agile

    بی شک برای استفاده از هر روش جدیدی دلایلی وجود دارد.  یکی از این دلایل می تواند برتری نقاط قوت روش جدید نسبت به روش فعلی باشد. اما آیا همیشه اینطور است؟ اگر شما به یکی از دلایل ذیل می خواهید به اجایل مهاجرت کنید باید بدانید که دچار افسانه زدگی Agile شده اید! این…

  • 24 تله ی رایج در اسکرام

    ۲۴ تله ی رایج در اسکرام (بخش دوم – آخر)

    با فرضیات پیش رفتن. اغلب اعضای تیم موفق به سوال از Product Owner در مورد جزئیاتی که در حال انجامش هستند نمی شوند و یکی از اعضای تیم مشکلات رو حل می کند در حالیکه که این فرد درباره محدودیت های محصول اطلاعات کاملی نداره و با فرضیات خودش تصمیم گیری می کنه. ارتباط و…