حرکت بین فرم های وب اطلاعات لینک شده به یکدیگر، یکی از خصایص ذاتی و مهم وب محسوب می گردد. فرم های وب دارای نقشی حیاتی در ایجاد برنامه وب دات نت می باشند. با استفاده از ابرلینک ها و روش های حرکت بین صفحات ، امکان ارتباط ( لینک ) بین فرم های وب متعدد موجود در یک برنامه وب ، فراهم می گردد. ASP.NET ( پلات فرم دات نت برای طراحی و پیاده سازی برنامه وب) ، روش های متفاوتی را بمنظور حرکت بین صفحات در یک برنامه ،ارائه نموده که هر یک دارای تاثیرات خاص خود در ارتباط با نحوه نمایش و مبادله داده بین صفحات، می باشند . در این مقاله قصد داریم به بررسی هر یک از روش های فوق پرداخته و با جایگاه واقعی استفاده از آنان ، بیشتر آشنا شویم .
بقیه در ادامه مطلب.................
ادامه مطلب ...
خطاء و یا Error از جمله واژه های معروف در ادبیات برنامه نویسی است که هر برنامه نویس صرفنظر از میزان مهارت خود با آن مواجه خواهد شد . پیاده کنندگان برنامه های وب نیز از این قاعده مستثنی نبوده و ممکن است در زمان پیاده سازی این نوع برنامه ها با مجموعه ای از خطاها برخورد نمایند . علاقه مندانی که پلت فرم مایکروسافت را برای طراحی و پیاده سازی برنامه های وب انتخاب نموده اند ( ASP.NET ) ، می توانند با استفاده از امکانات موجود با خطاها برخورد و آنان را مدیریت نمایند .
پس از بروز خطاء در یک صفحه ، ASP.NET اطلاعات مربوط به خطاء را برای سرویس گیرنده ارسال می نماید . یک صفحه وب ASP.NET ممکن است در زمان اجراء به یکی از خطاهای زیر برخورد نماید :
خطاهای پیکربندی : زمانی که گرامر و یا ساختار فایل web.config نادرست باشد ، ایجاد می گردند .
خطاهای پارسر : زمانی که گرامر ASP.NET بر روی یک صفحه نادرست باشد ، ایجاد می گردند .
خطاهای ترجمه : زمانی که عبارات و دستورات نوشته شده در صفحات متناسب با گرامر زبان استفاده شده نباشند ، ایجاد می گردند .
خطاهای زمان اجراء : در زمان اجرای یک صفحه ایجاد می گردند .
بقیه در ادامه مطلب.......................
آشنائی اولیه با ASP. NET 3.5 و VS 2008
شرکت مایکروسافت در نوزدهم نوامبر 2007 ( بیست و هشتم آبان ماه هشتاد و شش ) ، رسما" نسخه ASP. NET 3.5 و ویژوال استودیو 2008 را عرضه کرد .
همانند نسخه شماره 3 که نسبت به نسخه شماره 2 دارای امکانات بیشتری بود ، در این نسخه نیز نسبت به نسخه قبلی امکانات جدیدی اضافه شده است . اسمبلی های اساسی نصب شده توسط نسخه شماره 2 فریمورک ، همچنان در نسخه های 2 و 5 / 3 قابل استفاده می باشند . به عبارت دیگر ، در نسخه شماره 5 / 3 ، مفاهیم و نحوه نوشتن کد و مواردی از این قبیل نسبت به نسخه شماره 2 تغییر نکرده است . در این نسخه ، نوع ها ، ویژگی ها و قابلیت های جدیدی به فریمورک اضافه شده است .
ویژوال استودیو 2008 ، ابزاری قدرتمند برای پیاده سازی برنامه های ASP. NET است . برخلاف نسخه قبل که صرفا" مختص یک نسخه خاص فریمورک بود ( به عنوان نمونه در ویژوال استودیو 2003 ، نسخه ASP.NET 1.1 و در ویژوال استودیو 2005 نسخه ASP. NET 2.0 ) ، از ویژوال استودیو 2008 می توان به همراه چندین نسخه فریمورک استفاده کرد . شما می توانید از طریق یک لیست drop down ، نوع فریمورک خود جهت پیاده سازی برنامه ها ( به عنوان نمونه ASP. NET 2.0 ، ASP. NET 3.0 و یا ASP. NET 3.5 ) را انتخاب نمائید .
برنامه نویسی مبتنی بر رویداد در وب ( بخش اول )
ASP.NET ، با ارائه یک مدل برنامه نویسی مبتنی بر رویداد ، تحولات مهمی را در خصوص طراحی و پیاده سازی برنامه های وب ، ایجاد نموده است . برنامه نویسی مبتنی بر رویداد ایده جدیدی نبوده و تاکنون شاهد استفاده از آن در سیستم های متعددی بوده ایم. مثلا" بخش رابط کاربر( اینترفیس ) سیستم عامل ویندوز ، یک محیط مبتنی بر رویداد است که صرفا" پس از تحقق یک رویداد،عملیاتی انجام خواهد شد .پس از بروز یک رویداد و تشخیص آن، برنامه مربوطه فعال و مسئولیت پاسخگوئی به رویداد را برعهده خواهد گرفت . مثلا" زمانی که بر روی یک آیکون موجود بر روی Desktop کلیک نموده و یا منوی Start ، فعال می گردد ، یک رویداد ایجاد و برنامه مرتبط با آن فعال می گردد.ASP.NET با وضعیتی مشابه آنچه گفته شد با رویدادها برخورد می نماید .
در فرم های وب ASP.NET که مسئولیت ارائه بخش رابط کاربر برنامه های وب را برعهده دارند ، رویدادها دارای جایگاهی خاص بوده و به محض ایجاد یک رویداد ، کد مرتبط با آن اجراء می گردد.با استفاده از امکانات ارائه شده در HTML ، امکان اجرای حجم اندکی از کدهای نوشته شده سمت سرویس گیرنده نیز وجود خواهد داشت . ASP.NET با ارائه مفهوم جدیدی با نام Postback ، اطلاعاتی اضافه را به منظور انجام پردازش های لازم برای سرویس دهنده ارسال می نماید . بدین ترتیب، پس از ایجاد یک رویداد ، اطلاعات مورد نیاز به منظور پردازش رویداد مربوطه، برای سرویس دهنده ارسال می گردد. ویژگی فوق ،پتانسیل های متعددی را در اختیار برنامه نویسان وب ، قرار می دهد . مثلا" در مواردیکه کاربران اقدام به درج داده در یک TextBox نموده و یا یکی از اقلام اطلاعاتی موجود در یک لیست را انتخاب می نمایند ، امکان نگهداری و بخاطر سپردن اطلاعات موجود در یک فرم وب در زمان حرکت بین صفحات متعدد ، وجود خواهد داشت.مدل برنامه نویسی مبتنی بر رویداد ارائه شده در ASP.NET ، صرفا" محدود به این امکانات نبوده و می توان کدهای مورد نیاز را در توابع و یا برنامه های جانبی مستقر و در زمان بروز یک رویداد، آنان را اجراء نمود.
در ادمه مطلب...................
ادامه مطلب ...اعمال محدودیت مشاهده فایل های XML و XSL در ASP.NET
XML یک فرمت استاندارد برای ذخیره سازی داده است که امروزه از آن در اکثر سایت ها به منظور مدیریت محتوا استفاده می گردد . اغلب سایت ها از XML برای ذخیره سازی داده و از XSL و سایر StyleSheets برای نمایش داده استفاده می نمایند. فایل های XML را می توان نظیر صفحات وب ایستا از سرویس دهنده وب درخواست و پس از ارسال، محتویات آنان توسط مرورگر نمایش داده می شود .
با استفاده از HTTP handlers می توان امکان مشاهده مستقیم اینگونه فایل ها از طریق مرورگر را غیرممکن نمود . HTTP handlers ، دارای انعطاف لازم به منظور برخورد با فایل های متفاوت با توجه به نوع انشعاب آنان می باشد . با استفاده از پتانسیل فوق می توان امکان دستیابی و یا عدم دستیابی به فایل هائی با انشعاب خاص را فراهم نمود .
برای اعمال محدودیت مشاهده یک فایل XML و سایر فایل های استاتیک ، می توان مراحل زیر را دنبال نمود :
نسبت دهی داده در فرم های وب
بممنظور نمایش داده در فرم های وب ، می توان کنترل ها را به منابع داده نسبت داد. نسبت دهی داده در فرم های وب با سا یر فرم ها ، نظیر فرم های تحت ویندوز کاملا" متفا وت است . در این مقاله به بررسی فرآیند فوق در فرم های وب و نحوه مشخص نمودن آنا ن برای کنترل ها ی متفاوت خواهیم پرداخت .
ما هیت فقط خواندنی داده ها . نسبت دهی داده در فرم های وب بر این واقعیت استوار است که : دستیابی به داده ها در برنامه های تحت وب، عمدتا" بصورت فقط خواندنی است . در چنین حا لتی ، صفحات متنا وبا" اطلاعاتی را از یک منبع داده ئی ، نمایش خواهند داد.در این نوع برنامه ها به موارد کمتری برخورد می شود که نیاز به نوشتن داده ( در مقایسه با خواندن اطلاعات از یک منبع داده ) در یک بانک اطلاعاتی باشد . موارد زیر نمونه هائی در این زمینه می باشند ( اطلاعات از منابع داده ئی خوانده شده و در اختیار کاربران قرار می گیرند )
یک صفحه جستجو که حا وی اطلاعات مربوط به سا یر صفحات و یا محصولات است.اطلاعات نمایش داده شده در صفحه نتا یج ،اغلب بصورت لینک به سا یر صفحات بوده که در چنین حالتی نیاز به ورود اطلاعات از طرف کاربر جهت ذخیره در بانک اطلاعاتی نخواهد بود.
یک صفحه که شامل نتایج مسابقات ورزشی و یا گزارش آب و هوا است .
یک صفحه که اطلاعات مربوط به بورس و سهام را نشا ن می دهد
و سایر موارد مشابه
معماری نسبت دهی داده در فرم های وب ، امکان ویرایش را فراهم نمی کند ، بدین ترتیب می با یست در صورت لزوم ، منطق مورد نطر جهت انجام این کار توسط برنامه نویس نوشته گردد. منطق مربوط به ویرایش فرم های وب ، به عوامل متفا وتی بستگی خواهد داشت :
منبع داده چیست ؟
آیا داده ها توسط یک Dataset می توانند Cache شوند ؟
از چه نوع کنترل ها ئی استفاده می شود؟ ( مثلا" آیا کنترل چندین رکورد را در یک Grid نمایش داده و یا یک رکورد ( مقدار) را در یک TextBox نمایش می دهد؟)
قصد استفاده از چه نوع کنترل هائی را بصورت همزمان دارید ؟
نحوه ارتباط IIS و ASP.NET پس از دریافت یک درخواست توسط سرویس دهنده وب IIS ، نوع انشعاب آن بررسی می گردد . با توجه به نوع انشعاب فایل درخواستی ، ممکن است IIS مستقیما" مسئولیت رسیدگی به درخواست را بر عهده گرفته و یا آن را در اختیار یک ISAPI extension قرار دهد. ISAPI extension ، یک کلاس کمپایل شده است که بر روی سرویس دهنده وب نصب و مسئولیـت آن برگرداندن Markup برای نوع فایل درخواستی ، می باشد. به صورت پیش فرض ، IIS درخواست را بررسی و بسادگی محتوی فایل درخواست شده را به عنوان پاسخ برمی گرداند. این موضوع در رابطه با فایل های ایستا نظیر فایل های HTML و CSS ، صدق می نماید . مثلا" زمانی که درخواستی برای فایلی با انشعاب html. شده باشد ، IIS محتوی فایل HTML درخواستی را برای متقاضی ، ارسال می نماید. برای فایل هائی که محتوی آنان بصورت پویا تولید می گردد ، یک ISAPI extension پیکربندی و مسئولیت پاسخگوئی به اینچنین درخواست هائی را برعهده می گیرد . مثلا" یک وب سایت که از صفحات کلاسیک ASP استفاده می نماید ( فایل هائی با انشعاب asp. ) ، این مسئولیت به یک ISAPI extension با نام asp.dll واگذار شده است . asp.dll ، صفحه asp درخواست شده را اجراء و HTML تولید شده را برمی گرداند . در صورتی که یک وب سایت از صفحات ASP.NET استفاده می نماید ، IIS ، مسئولیت رسیگی به فایل هائی با انشعاب aspx . را به aspnet_isapi.dll واگذار نموده است (یک ISAPI extension که فرآیند تولید HTML برای صفحه درخواستی ASP.NET را انجام خواهد داد) . aspnet_isapi.dll در فریمورک دات نت اجراء نمی گردد( Unmanaged code ) .زمانی که IIS ، درخواست صفحات aspx . را در اختیار aspnet_isapi.dll قرار می دهد ، ISAPI extension ، درخواست مربوطه را در اختیار ASP.NET engine قرار داده که کد آن در فریمورک دات نت ، اجراء می گردد.(Managed code ).ASP.NET engine در بسیاری از موارد مشابه IIS عمل نموده و دارای یک دایرکتوری خاص به منظور mapping انشعابات فایل به ISAPI extension مورد نظر می باشد . در چنین مواردی ASP.NET Engine ، انشعابات فایل را به HTTP handler ، مپ می نماید. کد نوشته شده HTTP handler ، به صورت managed code بوده و مسئولیت تولید markup برای یک نوع فایل خاص را برعهده دارد. مثلا" صفحات وب ASP.NET توسط PageHandlerFactory ، بررسی می گردند. PageHandlerFactory ، دارای آگاهی لازم در خصوص نحوه تولید HTML markup یک صفحه ASP.NET می باشد .
دستیابی به داده ها در فرم های وب در اغلب فرم های وب نیاز به دستیابی داده ها و نمایش آنها و در برخی موارد ویرایش و بهنگام سازی آنها وجود خواهد داشت . آگاهی از تکنولوژی های دستیابی به داد ه ها در صفحات فرم های وب، باعث طراحی و پیاده سازی نرم افزار های موثر و با کارائی بیشتر تحت وب خواهد شد. در این مقاله به بررسی مفاهیم مربوط به دسیتابی داده ها در صفحات فرم های وب پرداخته و نحوه استفاده از کنترل های مربوطه جهت نسبت دهی داده ها در صفحات را بررسی خواهیم کرد.
فرم های وب ، اغلب ملزم به نمایش اطلاعاتی هستند که ماحصل بازیابی آنان از یک منبع داده ئی نظیر یک بانک اطلاعاتی و یا یک سند XML خواهد بود. ساختار و معماری صفحات فرم های وب این امکان را فراهم می نماید که با اتکاء به برخی روش ها از منابع متفاوت داده ئی در صفحات استفاده و با نسبت دهی کنترل ها به داده ها و پردازش داده های مورد نظر، امکان انجام عملیات دلخواه و مرتبط با داده ها را بسرعت و با کیفیت بالا انجام داد. دستیابی به داده ها در فرم های وب با دستیابی به داده ها از طریق فرم های ویندوز و سایر برنامه های تحت ویندوز متفاوت بوده و همین امر یکی از وجوه تمایز اساسی بین برنامه های تحت وب با سایر برنامه ها است.
اصول اولیه دستیابی به داده ها در صفحات فرم های وب
دستیابی به داده ها در صفحات فرم های وب با تاکید بر اصول اساسی زیر انجام می گیرد:
▪ استفاده از یک مدل Disconnect
▪ خواندن بیشتر داده ها نسبت به ویرایش آنها
▪ به حداقل رساندن استفاده از منابع موجود بر روی سرویس دهنده
▪ دستیابی به داده ها با استفاده از پردازش های راه دور( دستیابی به داده های توزیع شده )
در ادامه مطلب به تشریح هر یک از اصول فوق خواهیم پرداخت .
شتشطبرنامه های وب مبتنی بر سرویس گیرنده : AJAX و Atlas یکی از ویژگی های مهم برنامه های وب ، تبعیت آنان از معماری "سرویس گیرنده - سرویس دهنده" است . این بدان معنی است که پیاده کنندگان برنامه های وب می توانند به منظور تحقق پردازش های سمت سرویس دهنده و سرویس گیرنده از فن آوری های متعددی استفاده نمایند. یکی از نکات مهم در خصوص انجام پردازش های سمت سرویس گیرنده ، میزان وابستگی آنان به اطلاعات موجود در سمت سرویس دهنده است . به عبارت دیگر ، اجرای یک event handler در سرویس گیرنده تا چه میزان وابسته به کد سمت سرویس دهنده است و به منظور انجام آن چه میزان داده می بایست بین سرویس گیرنده و سرویس دهنده مبادله گردد ؟
صرفنظر از این که به سوال فوق چه پاسخی داده می شود ، واقعیت این است که به منظور مدیریت رویدادهای محقق شده در سمت سرویس گیرنده ، می بایست ملزومات مورد نیاز ایجاد تا پیاده کنندگان بتوانند با استفاده از آنان پردازش های سمت سرویس گیرنده را مدیریت نمایند .
بقیه در ادامه مطلب...............