برنامه های کاربردی ASP. NET به دو دسته اصلی تقسیم میشوند که هر یک برای منظوری خاص بکار میروند. برای برنامههای کابردی مبتنی بر وب که خودشان رابط کاربر یا UI مبتنی بر HTML دارند از برنامههای کاربردی APS. NET استفاده میشود. برای یک برنامه کاربردی که رابط کاربر نداشته باشد و فقط به صورت برنامهای مورد استفاده قرار گیرد، از سرویسهای وب مبتنی بر XML استفاده میشود. هر دو نوع برنامه کاربردی را میتوان با استفاده از Visual Studio . NET و یا بدون آن ساخت. البته محیط Visual Studio . NET توسعه هر دو نوع برنامه را به طور کاملاً محسوسی سریعتر و آسانتر میسازد. الگوهای Asp. MET Web Application و ASP. NET XML Web Services برای زبان Visual Basic . NET در شکل زیر نشان داده شدهاند.
ASP. NET Applications
برنامههای کابردی Asp. NET در سادهترین نوع خود مانند برنامه های کاربردی ASP کلاسیک میباشند. یک برنامه کاربردی ASP.NET ساده شامل چهار چیز است:
یک دایرکتوری مجازی در IIS که برای نگهداری فایلهای تشکیل دهنده برنامه کاربردی و کنترل دسترسی به فایلها پیکربندی میشود.
یک یا چند فایل aspx.
یک فایل Global. asax ( مشابه فایل Global. asa در ASP کلاسیک) که با راهاندازی و خاتمه جلسه کاری و برنامه کاربردی سروکار دارد (اختیاری).
یک فایل Web. config که برای ذخیره کردن اطلاعات و تنظیمات پیکربندی برنامه بکار میرود (از ویژگیهای جدید ASP. NET و اختیاری).
نکته جالبی که ممکن است ذکر آن برای کاربران Visual Sttudio . NET خوشحال کننده باشد این است که تمام فایلهای مزبور به هنگام ساختن یک پروژه Web Application برای شما ساخته میشوند.
وب فرم های ASP.NET
وب فرمها یکی از قسمتهای مهم هر برنامه کاربردی ASP.NET میباشند، به عبارت سادهتر، آنها صفحاتی هستند که از کنترلهای Server درونی ASP. NET استفاده میکنند. مدل برنامهنویسی با وبفرمها توسعه برنامههای کاربردی مبتنی بر وب را تا حد زیادی شبیه توسعه برنامههای کاربردی تحت ویندوز که به وسیله برنامه نویسان Visual Basic ساخته میشوند میسازد.
در محیط Visual Studio. NET وبفرمها به شما امکان میدهئد که با کشیدن و رها کردن کنترلها بر روی یک صفحه و نوشتن مقدار کمی کد برای پاسخگویی به عملیایت کاربر، رویدادها و غیره، برنامههای کاربردی قدرتمند و جذاب تولید کنید به علاوه، محیط Visual Studio . NET به شما اجازه میدهد که به دو صورت ویژوال (با استفاده از پنجره طراح فرم ) یا متنی (با استفاده از پنجره ویراستار کد ) با صفحات برنامه خودکار کنید.
کدی که در وب فرمهای خود می نویسید می تواند به دو روش نوشته شود: یکی درون خود فایل aspx و یا با استفاده از یک ماژول در بر گیرنده کد که در پس پرده ساخته میشود و آن را Code - Behind Module می نامند. اگر چه می توانید برای ساختن یک برنامه کاربردی از هر دو روش به طور همزمان استفاده کنید، ولی توصیه می شود که برای نوشتن کد برنامه از ماژول ها بهره ببرید.
Code - Behind
Code - Behind یکی از ویژگی های جدید ASP. NET است که به برنامه نویسان و توسعه دهندگان وب امکان می دهند تا کد مربوط به UI که معمولاً با HTML نوشته می شود را از کدی که با Visual Basic NET ، # C یا هر زیان دیگری برای پاسخگویی به عملیایت کاربر، ارزیابی دادهها و ... طراحی و نوشته میشود به طور کامل حدا سازند. این تکنیک مزایای متعددی دارد که رد ذیل به بعضی از آنها اشاره شده است:
جدایی کامل HTML و کد: ویژگی Code - Behind امکان میدهد که طراحان HTML و برنامه نویسان کارهای خود را به طور مستقل و بدون تداخل انجام دهند. (چیزی که در هنگام توسعه برنامههای کاربردی ASP کلاسیک به ندرت اتفاق میافتد)
سهولت استفاده مجدد از کد: با توجه به این که کد برنامه به طور مستقل از HTML نوشته می شود، به راحتی در پروژههای دیگر از آن استفاده نمود.
نگهداری سادهتر: جدایی کد از HTML علاوه بر افزایش خوانایی، نگهداری برنامه را نیز بسیار راحتتر میسازد.
بسته بندی و انتشار برنامه بدون کد اصلی: شما می توانید پروژه هایی را که از تکنیک Code - Behind استفاده می کنند کامپایل نموده و به این ترتیب از کد برنامه خود محافظت کنیدو. این ویژگی در شرایطی که بخواهید برای مشتریان خود برنامههای کاربردی تولید کنید و در عین حال کد اصلی و تکنیک های برنامه نویسی خود را محفوظ نگهدارید بسیار مفید می باشد.
به هر حال، بهتر است که همواره از تکنیک Code - Behind استفاده کنید.
انواع فایل های ASP. NET
در برنامه های کاربردی ASP.NET با انواع جدیدی از فایلها روبرو می شوید. برای پرهیز از هر نوع سردرگمی، اجازه دهید آنهایی را که بیشتر مورد استفاده قرار می گیرند معرفی کرده و چگونگی استفاده از آنها را نیز توضیح دهیم.
aspx. پسوندی که در بیشتر مواقع می بینید aspx. می باشد. این نوع فایل برای صفحات وب فرم بکار می رود و مشابه پسوند asp . در ASP کلاسیک می باشد.
ascx: پسوندی که برای ساختن کنترل های User بکار می رود ascx می باشد. کنترل های User یکی از نوآوری های جدید ASP. NET هستند که امکان استفاده مجدد از کدهای نوشته شده را فراهم میکنند آنها به نوعی مانند فایل Include در ASP کلاسیک هستند و می توانند فقط شامل چند برچسب HTML باشند و یا می توانند دستورات پیچیده ای را در برگیرند که نویسنده قصد دارد درصفحات مختلف از آنها استفاده کند . کنترل های سفارشی با استفاده از دستور @ Register به وب فرم های اضافه می شوند بحث بیشتر را به بخش 4 این کتاب موکول می کنیم.
asmx: پسوند فایل هایی که برای پیاده سازی سرویس های وب مبتنی بر XML بکار میروند asmx میباشد سرویسهای وب مبتنی بر XML می توانند به طور مستقیم و از طریق فایل asmx در دسترس قرار گیرند و یا این فایل asmx . می تواند در خواست رابه یک اسمبلی کامپایل شده که سرویس وب مورد نظر را پیاده سازی کرده است هدایت نماید.
vb: پسوند ماژول های کد Visual Basic، vb می باشد تمام صفحات وب فرم ( فایل های aspx) که به یک برنامه کاربردی NET,Srudio, Visual ( که با زبان Visual Basic)اضافه می شوند یک ماژول در بر گیرنده که با همان نام صفحه وب فرم به همراه خواهند داشت.
es: این پسوند برای ماژول که C# بکار میر ود تمام صفحات وب فرم ( فایل های asmp) که به یک برنامه کاربردی Visual , stjudio, NET ( که با زبان Visual C# نوشته می شود) اضافه می شوند یک ماژول در برگیرنده کد با همان نام صفحه وب فرم به همر اه خواهند داشت.
Global . asax : این فایل همانند فایل Global .asa در ASP کلاسیک برای تعریف متغیرهای سطح برنامه کاربردی و جلسه کاری و رویه های شروع بکار می رود توجه داشته باشید که اگر چه ساختار فایل Global .asaxمیتواند مانند فایل Global .asaxباشد میتوان رویه های شروع مثل Session - Onstart ( که در ASP.NET به صورت Session - start نوشته می شود ) را به طور مستقیم در فایل Global .asaxو درون بلوک < script runat = server > قرار داد Visual Studio. NET این رویه را در یک ماژول vb یا cs پیاده سازی می کند .علاوه بر کارهایی که می توان دریک فایل Global .asa در ASP کلاسیک انجام داد ASP.NET به شما اجازه می دهد که فایل Global .asax فضاهای نامی دلخواه خود را وارد کنید با اسملبی های دیگر پیوند یا لینک برقرار کنید و یا کارهای مفید دیگری انجام دهید و در فصل 5 در این مورد بیشتر توضیح خواهیم داد.
Web.config: این یکی از فایل های جدید ASP. NET می باشد این فایل مشکلات مربوط به پیگر بندی که یکی از بزرگترین گرفتاریهای برنامه های کاربردی ASP کلاسیک می باشد را حل می کند Web.config یک فایل مبتنی بر XML است که توسط انسان و ماشین قابل خواندن می باشد و تمام تنظیمات یک برنامه کاربردی (یا بخشی از آن ) را ذخیره می کند فایل های Web.config به صورت سلسله مراتبی تفسیر می شوند مزیت این ویژگی در آن است که هر جا لازم باشد می توان تنظیمات پیکربندی را به صورت موروثی مورد استفاده قرارداد همچنین یک فایل Web.config که دریکی از زیر شاخه های برنامه کاربردی شما قرار دارد می تواند تنظیمات موجود در فایل Web.config شاخه بالاتر را باز نویسی کند.