ASP.NET MVC #24
اندازه‌ی قلم متن
تخمین مدت زمان مطالعه‌ی مطلب: سه دقیقه


مروری بر نمونه سؤالات ASP.NET MVC امتحانات مایکروسافت در چند سال اخیر

در قسمت آخر سری ASP.NET MVC بد نیست مروری داشته باشیم بر نمونه سؤالات امتحانات مایکروسافت؛ امتحانات 70-515 و 70-519 که در آن‌ها تعدادی از سؤالات به ASP.NET MVC اختصاص دارند. در این سؤالات امکان انتخاب بیش از یک گزینه نیز وجود دارد.


1) شما در حال توسعه یک برنامه‌ی ASP.NET MVC ‌هستید. باید درخواست Ajax ایی از صفحه‌ای صادر شده و خروجی زیر را از اکشن متدی دریافت کند:
["Adventure Works","Contoso"] 

کدام نوع خروجی اکشن متد زیر را برای اینکار مناسب می‌دانید؟
a) AjaxHelper 
b) XDocument
c) JsonResult
d) DataContractJsonSerializer



2) شما در حال طراحی یک برنامه ASP.NET MVC ‌هستید. محتوای یک View باید بر اساس نیازمندی‌های زیر تشکیل شود:
الف) ارائه محتوای رندر شده user controls/partial views به مرورگر
ب) کار انتخاب user controls/partial views مناسب در اکشن متد کنترلر باید انجام شود
استفاده از کدام روش زیر را توصیه می‌کنید؟
a) Use the Html.RenderPartial extension method
b) Use the Html.RenderAction extension method
c) Use the PartialViewResult class
d) Use the ContentResult class


3) در حین طراحی یک برنامه ASP.NET MVC، نیاز است منطق مدیریت استثناهای رخ داده و همچنین ثبت وقایع مرتبط را در یک مکان یا کلاس مرکزی مدیریت کنید. کدام روش زیر را پیشنهاد می‌دهید؟
a) استفاده از try/catch در تمام متدها
b) تحریف متد OnException در کنترلرها
c) مزین سازی تمام کنترلرها به ویژگی HandleError سفارشی شده
d) مزین سازی تمام کنترلرها به ویژگی HandleError پیش فرض


4) شما در حال توزیع برنامه‌ی ASP.NET MVC خود جهت اجرا بر روی IIS 6.x هستید. چه ملاحظاتی را باید مدنظر داشته باشید تا برنامه به درستی کار کند؟
a) تنظیم IIS به نحوی‌که تمام درخواست‌ها را بر اساس wildcard‌ خاصی به aspnet_isapi.dll هدایت کند.
b) تنظیم IIS به نحوی‌که تمام درخواست‌ها را بر اساس wildcard‌ خاصی به aspnet_wp.exe هدایت کند.
c) تغییر برنامه به نحوی‌که تمام درخواست‌ها را به یک HttpHandler خاص هدایت کند.
d) تغییر برنامه به نحوی‌که تمام درخواست‌ها را به یک HttpModule خاص هدایت کند.


5) شما در حال توسعه برنامه‌ی ASP.NET MVC هستید که در پوشه Views/Shared/DisplayTemplates آن، فایلی به نام score.cshtml به عنوان یک templated helper نمایش سفارشی اعداد صحیح تعریف شده است. مدل برنامه هم مطابق تعاریف زیر است:
public class Player
{
public String Name { get; set; }
public int LastScore { get; set; }
public int HighScore { get; set; }
}

در اینجا اگر نیاز باشد تا فایل score.cshtml یاد شده به صورت خودکار به خاصیت LastScore در حین فراخوانی متد HtmlHelper.DisplayForModel اعمال شود، چه روشی را پیشنهاد می‌دهید؟
a) فایل score.cshtml باید به LastScore.cshtml تغییر نام یابد.
b) فایل یاد شده باید از پوشه Views/Shared/DisplayTemplates به پوشه Views/Player/DisplayTemplates منتقل شود.
c) باید از ویژگی UIHint به همراه مقدار score جهت مزین سازی خاصیت LastScore استفاده کرد.
[UIHint("Score")]
d) باید از ویژگی زیر برای مزین سازی خاصیت مورد نظر استفاده کرد:
[Display(Name="LastScore", ShortName="Score")]


6) شما در حال طراحی برنامه‌ی ASP.NET MVC هستید که در آن متد Edit کنترلری باید تنها توسط کاربران اعتبارسنجی شده قابل دسترسی باشد. استفاده از کدام دو گزینه زیر را برای این منظور توصیه می‌کنید؟
a) [Authorize(Users = "")]
b) [Authorize(Roles = "")]
c) [Authorize(Users = "*")]
d) [Authorize(Roles = "*")]

7) قطعه کد HTML زیر را درنظر بگیرید:
<span id="ref">
<a name=Reference>Check out</a>
the FAQ on
<a href="http://www.contoso.com">
Contoso</a>'s web site for more information:
<a href="http://www.contoso.com/faq">FAQ</a>.
</span>
<a href="http://www.contoso.com/home">Home</a>

قصد داریم به کمک jQuery در span ایی با id مساوی ref، متن تمام لینک‌ها را ضخیم کنیم. کدام گزینه زیر را پیشنهاد می‌دهید؟

a) $("#ref").filter("a[href]").bold();
b) $("ref").filter("a").css("bold");
c) $("a").css({fontWeight:"bold"});
d) $("#ref a[href]").css({fontWeight:"bold"});


  • #
    ‫۱۲ سال و ۵ ماه قبل، جمعه ۸ اردیبهشت ۱۳۹۱، ساعت ۰۵:۳۳
    با سلام از تمامی زحماتی که طی این سری آموزش ها کشیدید متشکرم  خسته نباشید خدا قوت
  • #
    ‫۱۲ سال و ۵ ماه قبل، جمعه ۸ اردیبهشت ۱۳۹۱، ساعت ۲۰:۲۱
    با سلام و تشکر. بسیاری از مطالب به شدت حرفه ای بود و بنده در هیچکدام از کتب نمونه آنرا ندیده بودم و مشخص می کرد که به شخصه در درون سورس های منتشر شده پلتفرم، Dive کرده بودید.
    امیدوارم مطالب راجع به ASP.NET MVC و البته WebAPI همچنان ادامه داشته باشد. هرچند بصورت پراکنده
  • #
    ‫۱۲ سال و ۵ ماه قبل، جمعه ۸ اردیبهشت ۱۳۹۱، ساعت ۲۰:۴۲
    با سلام و عرض خسته نباشید خدمت جناب نصیری
    نکتۀ ناراحت کننده ای در ابتدای این پست به چشم میخورد! «در قسمت آخر سری ASP.NET MVC»
    آیا دیگر قصد ادامه این مبحث را ندارید؟
  • #
    ‫۱۲ سال و ۵ ماه قبل، جمعه ۸ اردیبهشت ۱۳۹۱، ساعت ۲۰:۵۱
    سری «پایه» همین مباحث است. شما با این اطلاعات راحت می‌تونید یک پروژه رو جمع کنید.
    ASP.NET MVC 4 نسبت به نگارش 3 آن، آنچنان تغییرات اساسی را به همراه ندارد. یک سری افزونه جدید دارد جهت فشرده سازی اسکریپت‌ها و cssها،‌ اندکی بهبود Razor و یک سری مسایل امنیتی که من لابلای همین سری به آن‌ها اشاره داشتم و ... از این نوع مباحث + مبحث Web API رو اضافه کردن که به نوعی ترکیب WCF با ASP.NET MVC است به نحوی شکیل!
    البته مجوز نگارش 4 بتای آن که در دسترس هست، Go live است یعنی می‌تونید همین الان در محیط کار ازش استفاده کنید. هر زمان که نگارش نهایی آن آمد من یک سری ارتقاء به MVC4 رو اضافه خواهم کرد.
    مابقی مسایل هم بیشتر تکنیک است تا مباحث پایه. مثلا تکنیک‌های استفاده از jQuery UI در ASP.NET MVC یا استفاده از Kendo UI در ASP.NET MVC و موارد مشابه.
  • #
    ‫۱۲ سال و ۵ ماه قبل، جمعه ۸ اردیبهشت ۱۳۹۱، ساعت ۲۳:۱۵
    درود بر شما نصیری عزیز
    خواهشمندم آموزش فوق را بصورت Pdf تهیه نمایید و جهت دانلود در اختیار خوانندگان بگذارید
    با سپاس
  • #
    ‫۱۲ سال و ۵ ماه قبل، جمعه ۸ اردیبهشت ۱۳۹۱، ساعت ۲۳:۴۴
    فایل «خلاصه‌ی وبلاگ» رو به روز کردم. شامل تمام قسمت‌ها برای مطالعه آفلاین هست.
  • #
    ‫۱۲ سال و ۵ ماه قبل، یکشنبه ۱۰ اردیبهشت ۱۳۹۱، ساعت ۰۴:۴۳
    فقط میتونم بگم متشکرم. من فعلا قسمت دوازدهم. اما دلم نیومد اینجا ازتون تشکر نکنم. بدون اغراق بهترین مطلب آموزشی بود که در وب فارسی تا الان خونده بدوم. آقای نصیری ازتون ممنونم که بدون هیچ منتی دانش خودتون رو در اختیار من و سایرین گذاشتید.
  • #
    ‫۱۲ سال و ۵ ماه قبل، یکشنبه ۱۰ اردیبهشت ۱۳۹۱، ساعت ۱۳:۳۱
    جددا راه نداشت که لااقل تو این پست آخریتون یه تشکر کوچک نکرده باشم.

    مرسی آقای نصیری عزیز مرسی :)
  • #
    ‫۱۲ سال و ۵ ماه قبل، یکشنبه ۱۰ اردیبهشت ۱۳۹۱، ساعت ۱۸:۵۳
    با سلام خدمت آقای نصیری
    باز هم تشکر بخاطر مطالب و تجارب گرانبهایتان.
    وقعاً به پست های پشت سرهم  و بی وقفۀ شما عادت کرده بودیم.
    لطفاً اگر امکان دارد بحث MVC را با رویکرد بکارگیری ORM ها ادامه دهید.
    پیشاپیش متشکرم.
    • #
      ‫۱۱ سال و ۱۲ ماه قبل، چهارشنبه ۱۹ مهر ۱۳۹۱، ساعت ۱۴:۱۳
      اقای نصیری بسیار از شما سپاس گذارم.
      بسیار عالی بود و من واقعا با خواندن مطالب این سایت خودم را از فسیل شدن نجات دادم. خیلی خیلی متشکرم.
  • #
    ‫۱۱ سال و ۹ ماه قبل، جمعه ۸ دی ۱۳۹۱، ساعت ۱۹:۰۴
    بابت تمام زحماتی که بابت تهیه این مقالات کشیدید خیلی ممنونم.امیدوارم این مقالات ادامه پیدا کند.
    پیروز و موفق باشید
  • #
    ‫۱۰ سال و ۵ ماه قبل، پنجشنبه ۲۸ فروردین ۱۳۹۳، ساعت ۲۲:۳۱
    باسلام؛ آقای نصیری سپاس , بنده چون هیچی از MVC نمی‌دونستم (نمی دونم) آموزش شما را از ابتدا شروع کردم و اکنون به این قسمت رسیدم . خدا خیرتان دهد. شما فرمودید این قسمت اخرین سری است و در کامنتی اشاره کردی که با مطالعه این مباحث پایه می‌توان پروژه رو جمع کرد ولی در همه آموزش تا به اینجا,  برای ساده‌تر شدن از بیان دیتابیس خوداری کردید.
    لطفا برای بنده و یا هر کسی که به این قسمت آموزش می‌رسد بفرمایید که برای اینکه در MVC از دیتابیس استفاده و مقادیر را دریافت , نمایش , ثبت, ویرایش و حذف و... کنیم. از کدام قسمت آموزش (سایت) یادگیری رو آغاز کنیم؟
    • #
      ‫۱۰ سال و ۵ ماه قبل، پنجشنبه ۲۸ فروردین ۱۳۹۳، ساعت ۲۲:۳۹
      گروه EF را در سایت پیگیری کنید.
      ضمنا مباحث MVC در اینجا تمام نشده. مباحث تکمیلی آن‌را در گروه MVC پیگیری کنید.