1. Home
  2. »
  3. آموزش ASP.NET
  4. »
  5. دانلود رایگان فیلم آموزش ASP.NET قسمت هفتم

خلاصه این مطلب :

دانلود رایگان فیلم آموزش ASP.NET قسمت هفتم

انواع روشهای انتقال مقادیر بین فرمهای وب در ASP.NET
فرم هاي وب Asp.Net مدل برنامه‌نویسی رویدادگرای شگرفی را برای توسعه‌گران فراهم می‌كنند. این موضوع طراحی سرتاسر برنامه كاربردی شما را ساده می‌كند ولی مسائل و مشكلات خاص خود را نشان می‌دهد. براي مثال در ASP كلاسيك شما به آساني مي توانيد مقادير را با استفاده از POST از يك صفحه ASP به صفحه اي ديگر ارسال نماييد. اما اگر مي خواهيد در مدل فرمهاي وب (يا همان مدل برنامه نويسي ASP.NET) برنامه نويسي كنيد، همان چيز در ASP.NET ممكن نمي باشد. اما راههايي براي غلبه بر اين وضعیت وجود دارند كه می‌توانند مورد استفاده قرار بگیرند. در این مقاله موضوعات زیر را مورد بررسی قرار خواهیم داد:

  • چگونگي ارسال مقادير با استفاده از QueryString

  • چگونگي استفاده از متغير هاي Session براي ارسال مقادير

  • چگونگي استفاده از متد Server.Transfer براي ارسال مقادير

استفاده از QueryString

QueryString یك مكانیسم قدیمی برای ارسال مقادیر در بین صفحات است. مزیت اصلی این متد سادگی آن است. اما عیب آن این است كه پس از ارسال، مقادیر در نوار آدرس مرورگر قابل مشاهده می‌باشند و نمی‌توان آبجكت‌ها را از این طریق ارسال كرد. این متد مناسب‌ترین راه برای ارسال تعداد كمی از مقادیری است كه نیازی به محافظت از دید دیگران ندارند. برای اعمال كردن این متد مراحل زیر را انجام دهید:

  1. يك فرم وب با كنترل هايش را درست كنيد.

  2. يك كنترل دكمه اي Button يا LinkButton براي ارسال فرم به سرور بر روي فرم قرار دهيد.

  3. در رويداد كليك دكمه يك متغير از نوع String تعريف كنيد كه URL را براي فرم ديگر كه مقادير قرار است به آنجا ارسال شوند، نگه مي دارد.

  4. مقادير كنترل را در قالب پارامترهاي QueryString در متغير از نوع String قرار دهيد.

  5. از متد Response.Redirect كه از متغير String تعريف شده استفاده مي كند براتي هدايت كاربر به صفحه ديگر استفاده كنيد.

دانلود رایگان فیلم آموزش ASP.NET قسمت هفتم
دانلود رایگان فیلم آموزش ASP.NET قسمت هفتم

قطعه كد زیر چگونگی انجام این مراحل را نشان می‌دهد: 

فرم وب منبع.

 

فرم وب مقصد.

استفاده از متغیرهای Session


در اين روش بايد مقادير كنترل ها را در متغير هاي Session ذخيره كنيم و در فرم وب ديگري به آنها دسترسي داشته باشيم . همانطور كه مي دانيد داده هاي زياد در Session ممكن است اختلالاتي را در سرور بجود آورد، بنابراين بايد از اين متد بدرستي استفاده شود. البته هر وقت كه خواستيد مي توانيد متغير هاي Session را از بين ببريد. مراحل اصلي براي استفاده از اين متد به ترتيب زير مي باشد.

  1. یك فرم وب با كنترل‌هایش را درست كنید.

  2. يك كنترل دكمه اي Button يا LinkButton براي ارسال فرم به سرور بر روي فرم قرار دهيد.

  3. در رویداد كلیك دكمه، متغیرهای Session را تعریف كرده و مقادیر كنترل‌ها را در آنها قرار دهید.

  4. كاربر را با استفاده از Server.Transfer به صفحه اي ديگر هدايت كنيد.

  5. در فرم وب دیگر متغیرهای Session را دریافت كرده و پس از دریافت اگر لازم باشد آنها را پاك كنید.

كد زیر این مراحل را در عمل نشان می‌دهد:

فرم وب منبع

 

فرم وب مقصد

استفاده از Server.Transfer
این روش متدی پیچیده ولی روش ماهرانه‌ای برای ارسال مقادیر بین صفحات است. در اینجا مقادیری را كه می‌خواهید در صفحات دیگر به آنها دسترسی داشته باشید به عنوان خصوصیات كلاس صفحه بیان می‌كنید. در كل این متد واضحتر و شیءگراتر از متدهای قبلی است. مراحل زیر را برای استفاده از این متد بترتیب دنبال كنید:

  1. يك فرم وب با كنترل هايش را ايجاد نماييد.

  2. رويدادهاي خصوصيت Get كه مقادبر كنترل ها را بر خواهند گرداند را تعريف كنيد.

  3. يك كنترل دكمه اي Button يا LinkButton براي ارسال فرم به سرور بر روي فرم قرار دهيد.

  4. در رويداد كليك دكمه متد Server.Transfer كه اجراي برنامه را به فرم تعيين شده انتقال مي دهد فراخواني كنيد.

  5. در فرم دوم شما مي توانيد از خصوصيت Context.Handler به يك نمونه از فرم اول دسترسي داشته باشيد. سپس مي توانيد از خصوصيت Get كه براي دسترسي به مقادير كنترل ها ايجاد كرده ايم استفاده كنيد.

كد زیر برای اجرای یك نمونه از مراحل بالا تدارك دیده شده است. خصوصیات زیر را به فرم وب اضافه كنید:

 

فرم وب منبع

حال Server.Transfer را فراخواني كنيد.

فرم وب منبع

فرم وب مقصد

منبع توضیحات

خب این تقریبا چیزی هایی بود که در این قسمت از آموزش و جود داشت.

مباحث این قسمت:

  1. انتقال مقادیر بین فرمهای وب در ASP.NET

 

[eyesonly level=”administrator, editor, author, contributor, subscriber, pending, activate_plugins” hide=”yes”] لینک دانلود فقط برای اعضا میباشد [/eyesonly]

[eyesonly level=”contributor”] دانلود با لینک مستقیم [/eyesonly]

امتیاز این post

دیدگاهتان را بنویسید

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

لطفا ابتدا به حساب کاربری خود وارد شوید