پایان نامه پياده سازي وب سايت آزمون آنلاین
مقدمه
امروزه بسیاری از موسسات آموزشی که به صورت مجازی اقدام به برگزاری دوره های آموزشی می کنند علاوه بر ارائه مطالب در هنگام استفاده کاربران ، برای آن ها آزمون های میان دوره ای و آزمایشاتی را نیز قرار می دهند. تهیه و ساخت آزمون ها و امتحانات تحت وب به کمک زبان های برنامه نویسی وب و توسط برنامه نویسان حرفه ای صورت می گیرد. ایجاد سوالات چند گزینه ای ، پاسخگویی تشریحی ، تست های چند جوابی و … از مواردی می باشند که در این گونه امتحانات مجازی مورد استفاده قرار می گیرند. بسیاری از افرادی که قصد برگزاری این گونه دوره ها را به هر دلیلی ، دارند و نمی خواهند هزینه های زیادی را صرف کنند.
مدیریت سیستم با استفاده از سوالات موجود در بانک سوالات و یا با درج سوالات جدید تعدادی سوال را برای پاسخگویی گروه خاصی از شرکت کنندگان انتخاب می کند.
فصل يكم- معرفي كنترلهاي وب و نحوه استفاده از آنها در صفحات ASP.NET
1-1-انتخاب Layout
هنگامي كه شما كنترلي را بر روي فرم قرار ميدهيد دو گزينه پيش رو خواهيد داشت:
Gird Layout -1-1-1
در اين حالت مكان كنترلها مطلق ميباشند و بيشتر شبيه به طراحي ظاهر برنامههاي ويندوز ميباشد كه با مقدار زيادي متن مخلوط نيستند.
Flow Layout -2-1-1
در اين حالت كنترلها نسبت به يكديگر روي صفحه قرار ميگيرند. براي مثال اگر شما كنترلي را در زمان اجرا به برنامه اضافه كنيد كنترلهاي بعد از آن به سمت پايين حركت خواهند كرد. از اين حالت بيشتر براي مواردي كه مخلوطي از متنها و كنترلها نياز است استفاده ميگردد.
براي تنظيم اين موارد در پنجرهي خواص كه در سمت راست صفحه قرار دارد شي Document را انتخاب كنيد و سپس خاصيت Page Layout آن را تغيير دهيد (شكل 1-1).
شكل 1 -1- انتخاب Layout نهايي فرم وب و تعيين نحوه قرارگيري كنترلها نسبت به هم
1-2-انتخاب كنترل صحيح
ميتوان كنترلهاي سرور وب و يا كنترلهاي HTML را روي فرمهاي وب قرار داد. چه تفاوتي در اين زمينه وجود دارد؟ كنترلهاي سرور وب مزاياي قابل توجهي را نسبت به كنترلهاي HTML ارائه ميدهند كه در جدول زير مرور شدهاند:
جدول 1-1 مقايسه كنترلهاي سرور وب و كنترلهاي HTML
ويژگي | Server Controls | HTML Controls |
رخدادهاي سرور | ميتوانند به رخدادهاي مربوط به كنترل پاسخ دهند | تنها ميتوانند به رخدادهايي در سطح صفحه عكسالعمل نشان دهند. |
حفظ حالت | دادهي وارد شده در كنترل بين درخواستها ثابت باقي ميماند. | دادههانگهداري نميشوند و بايد به صورت دستي و با برنامهنويسي اين كار صورت ميگيرد. |
سازگاري | به صورت خودكار نوع مرورگر را تشخيص ميدهد و خود را هماهنگ ميكند. | هيچگونه سازگاري اتوماتيكي وجود ندارد و بايد با برنامهنويسي اين كار انجام شود. |
خواص | از .NetFrameWork به ارث رسيده شده است. | تنهاويژگيهاي مربوط به HTML در آنها وجود دارد. |
سوال: با اين مقايسه چرا مايكروسافت كنترلهاي HTML را ارائه داده است؟ دلايل آن به شرح زير هستند:
– مهاجرت از ASP قديمي به ASP.NET به سادگي صورت گيرد. زيرا ASP قبلي تنها از عناصر HTML و يا همان كنترلهاي HTML جديد ميتوانست استفاده كند.
– تمام كنترلها نيازي به رخدادهاي سمت سرور و يا حفظ حالت ندارند.
– كنترل كاملي در مورد شكل نهايي صفحه با كنترلهاي HTML وجود دارد زيرا به صورت خودكار نميتواند نوع مرورگر را حدس بزند و خود راهماهنگ با آن نمايد.
در حالت كلي استفاده از كنترلهاي سرور وب سادهتر و كارآتر ميباشد. در جدول زير كنترلهايي را كه در Toolbox ويژوال استوديو داتنت ميبينيد با هم مقايسه شدهاند و عملي را كه هر كدام انجام ميدهند مرور گرديده است.
جدول 1-2- مقايسه عملكرد كنترلهاي وب و كنترلهاي HTML
عملكرد | Server Control | HTMLControl |
نمايش متن | Label, TextBox, Literal | Label, TextField, TextArea, PasswordFiled |
نمايش جدول | DataGrid, Table | Table |
انتخاب از ليست | ListBox, DropDownList, Repeater, DataList | DropDown, ListBox |
انجام دستورات | Button, LinkButton, ImageButton | Button, ResetButton, SubmiButton |
تنظيم مقادير | CheckBoxList, CheckBox, RadioButtonList, RadioButton | Button, ResetButton, SubmitButton |
نمايش تصاوير | ImageButton, Image | Image |
حركت بين صفحات | HyperLink | (فقط تگ <a>) |
كنترلهاي گروهي | Placeholder, Panel | FlowLayout, GirlLayout |
كار با تاريخ | Calender | – |
نمايش تبليغات | AdRotator | – |
نمايش خط افقي | Literal | Horizontal rule |
دريافت نام فايل از كلاينت | – | FileField |
ذخيرهسازي دادهها روي صفحه | به وسيله مديريت حالت و به صورت خودكار انجام ميشود | Input Hidden |
ارزيابي دادهها | RequierdFieldValidator, Comare Validator, RangeValidator, RegularExperssionValidator, CustomValidator, ValidationSummury | – |
در قسمتهاي آتي نحوهي استفاده از كنترلهاي وب مرور خواهند شد.
1-3- كار با متن
روشهاي زيادي براي نمايش متن روي يك صفحه وجود دارد. براي يك متن فقط خواندني ميتوان از روشهاي زير استفاده كرد:
– استفاده از دستور Response.Write(“Some Text”);
– استفاده از كنترل Lable
– استفاده از كنترل TextBox با خاصيت RealOnly مساوي True
– استفاده از كنترل Literal
براي نمايش يك متن قابل ويرايش ميتوان از كنترل سرور TextBox استفاده كرد. خواص كليدي آن در جدول زير مرور شدهاند:
جدول 1-3- خواص مهم كنترل TextBox
خاصيت | نحوه استفاده |
Text | براي دريافت متن از آن و يا نوشتن متن در آن به كار برده ميشود. |
TextMode | حالت SingleLine و يا MultiLine كه مانند TextArea ميشودو يا حالت Password |
ReadOnly | در صورت True بودن، كاربر نميتواند آن راتغيير دهد. |
AutoPostBack | تا زماني كه True نشود نميتوان از رخداد TextChanged آن كنترل استفاده كرد و به صورت پيشفرض False است. |
چون نحوه استفاده از اين كنترل در طي فصول قبلي در عمل مطالعه گرديد، لزومي به تكرارآن در اينجا نميباشد.
1-4- كار با جداول و ليستها
براي آراستن متن در رديفها و ستونها بايد از يكي از كنترلهاي ليست كه در جدول 1-2 نامبرده شدند استفاده شود. از ListBox، DropDownList و جدول براي جداول و ليستهاي ديناميك استفاده ميگردد. از DataGrid، DataList و Repeater براي نمليش جدول و ليستهاي پيچيده مانند آنهايي كه حاوي كنترلها هستند و يا متصل به پايگاه دادهاند استفاده ميگردد. در جدول زير مرور شدهاند.
جدول 1-4- كنترلهاي ليست و جدول ASP.NET
كنترل | موارد كاربرد |
ListBox | نمايش متني فقط خواندني در يك ليست با قابليت Scoroll |
DropDownList | نمايش متن فقط خواندني در يك DropDownList ساده |
Table | نمايش متن و يا كنترلها در ستونها و رديفها |
DataGrid | نمايش دادهها و كنترلهاي پيچيده در جداول |
1-5- اضافه كردن آيتمها به يك ليست يا جدول در زمان طراحي
كنترلهاي ListBox، DropDownList و Table اجازه اضافه كردن آيتمهاي استاتيك را در زمان طراحي ميدهند.
با استفاده از Collection Editor ميتوان آيتمهاي استاتيك را به يك ListBox، DropDownList و يا جدول اضافه كرد. (شكل 1-2).
براي اضافه كردن آيتمهاي استاتيك به يك ListBox يا DropDownList، خاصيت Items را در پنجره خواص آنها انتخاب كنيد تا پنجره مربوطه باز شود. (شكل 1-3).
براي اضافه كردن آيتمهاي استاتيك به يك جدول، خاصيت Rows آن را در پنجره خواص كنترل انتخاب نماييد.
نقد و بررسیها
هنوز بررسیای ثبت نشده است.