نمایش نتایج 1 تا 1 از 1

نام تاپیک: کتاب به زبان پارسی: مرجع کامل ASP.NET MVC 5.2

  1. #1

    Thumbs up کتاب به زبان پارسی: مرجع کامل ASP.NET MVC 5.2

    با تشکر فراوان از استقبال بی نظیر و محبت فراوان دوستان نسبت به بنده و این کتاب در نسخه ی قبلی (ASP.NET MVC 4.0)، در ویرایش جدید سعی شده است که تمامی انتقادات و پیشنهادات دوستان لحاظ شود.

    در این نسخه، تمامی مطالب و تصاویر با توجه به Visual Studio 2013 بازنویسی و بسیاری مطالب جدید تا کوچکترین امکانات اضافه شده به ASP.NET MVC تا نسخه ی 5.2 که در حال حاضر آخرین نسخه از ASP.NET MVC است پوشش داده شده است.
    امید که مورد رضایت دوستان قرار بگیرد.

    =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=


    نام کتاب:
    مرجع کامل ASP.NET MVC 5.2

    ترجمه و تالیف: بهروز راد
    ناشر: پندار پارس
    نوبت چاپ: اول، شهریور 1393
    تعداد صفحات: 720
    قیمت:
    37800 تومان


    مطالعه ی قسمتی از کتاب...
    برای دیدن تصویر بزرگتر کلیک کنید:

نام:  Front_Cover.jpg
تعداد دیدن: 6205
سایز:  86.0 کیلوبایت


    در این کتاب می خوانید:
    بخش نخست: معرفی ASP.NET MVC

    فصل 1: ایده ی اصلی
    تاریخچه‌ی مختصری از توسعه‌ی برنامه‌های مبتنی بر وب
    • ASP.NET Web Forms
    • مشکلات ASP.NET Web Forms چیست؟

    جایگاه توسعه‌ی وب در زمان حال

    • استانداردهای وب و REST
    • Agile و توسعه‌ی تست محور
    • Ruby on Rails
    • Sinatra
    • Node.js

    مزایای اصلی ASP.NET MVC

    • معماری MVC
    • توسعه پذیری
    • کنترل کامل بر HTML و HTTP
    • تست پذیری
    • سیستم مسیریابی قدرمند
    • ساخته شده بر مبنای بهترین قسمت‌های ASP.NET
    • API پیشرفته
    • ASP.NET MVC، متن باز است
    • عدم وابستگی الزامی به فایل‌های فیزیکی موجود در سیستم
    • امکان مدیریت بهتر قسمت‌های مختلف سایت در پوشه‌های جداگانه
    • کنترل بهتر بر روی اعتبارسنجی اطلاعات دریافتی
    • امکان استفاده از فرم‌های و Viewهای Razor بجای موتور وب فرم‌ها
    • امکان تعریف بیش از یک فرم در صفحه
    • امکان Refactoring بهتر کدهای تکراری در ASP.NET MVC به کمک مفهوم فیلترها

    چه کسی باید از ASP.NET MVC استفاده کند؟

    • مقایسه با ASP.NET Web Forms
    • مهاجرت از ASP.NET Web Forms به ASP.NET MVC
    • مقایسه با Ruby on Rails
    • مقایسه با MonoRail

    نتیجه گیری

    فصل 2: آمادگی برای شروع
    آماده سازی سیستم توسعه
    • نصب Visual Studio 2013
    • نصب ASP.NET MVC 5
    • نصب ابزارهای اختیاری
    • کدهای ASP.NET MVC
    • IIS Express
    • SQL Server Management Studio Express

    آماده سازی سرور
    • نصب IIS
    • نصب ابزارهای اضافه

    منابع بیشتر برای یادگیری
    نتیجه گیری

    فصل 3: نخستین پروژه‌ی ASP.NET MVC
    ایجاد یک پروژه‌ی جدید ASP.NET MVC
    • قالب Empty
    • قالب Web Forms
    • قالب MVC
    • قالب Web API
    • قالب Single Page Application
    • قالب Facebook
    • قالب Visual Studio 2012
    • Bootstrap در پروژه های VS 2013
    • پشتیبانی از چند فریمورک در پروژه
    • روش های تصدیق هویت در قالب های پیش فرض
      • گزینه ی No Authentication
      • گزینه ی Individual User Accounts
      • گزینه ی Organizational Accounts
      • گزینه ی Windows Authentication

    • اضافه کردن نخستین کنترلر
    • آشنایی با Routeها
    • پردازش در صفحات وب
      • ایجاد یک View
      • اضافه کردن خروجی پویا

    • ایجاد یک پروژه‌ی ساده برای کار با داده‌ها
      • آماده سازی
      • طراحی مدل داده‌ها
      • افزودن یک کلاس برای مدل
      • ارتباط بین متدهای اکشن
      • ایجاد یک متد اکشن
      • ایجاد یک View نوع دار
      • ایجاد ساختار View
      • مدیریت فرم‌ها
      • استفاده از Model Binding
      • نمایش Viewهای دیگر
      • افزودن تعیین اعتبار
      • مشخص کردن کنترل‌های نامعتبر
      • ایجاد ظاهر زیبا
      • استفاده از NuGet برای نصب Bootstrap
      • ایجاد ظاهر زیبا برای Index View
      • ایجاد ظاهر زیبا برای RsvpForm View
      • ایجاد ظاهر زیبا برای Thanks View
      • تکمیل پروژه


    نتیجه گیری

    فصل 4: معماری MVC
    تاریخچه‌ی MVC
    مفهوم الگوی MVC
    • آشنایی با Domain Model
    • پیاده سازی معماری MVC در ASP.NET
    • مقایسه‌ی MVC با الگوهای دیگر
    • آشنایی با الگوی Smart UI
    • آشنایی با معماری Model-View
    • آشنایی با معماری سه لایه‌ی کلاسیک
    • آشنایی با اَشکال مختلف الگوی MVC
    • آشنایی با الگوی Model-View-Presenter
    • آشنایی با الگوی Model-View-View Model

    متدولوژی Domain Driven Design
    • مدل‌کردن یک Domain
    • زبان یکپارچه
    • Aggregate و Simplification
    • ایجاد Repositoryها

    ایجاد بخش‌های تفکیک شده
    • استفاده از تزریق وابستگی (Dependency Injection)
    • مثالی از تزریق وابستگی در ASP.NET MVC
    • استفاده از Dependency Injection Container

    شروعی برای آزمایش واحد خودکار
    • آشنایی با Unit Testing
    • استفاده از TDD و منطق Red-Green-Refactor
    • به سوی آیین TDD بشتابید!
    • آشنایی با Integration Testing

    نتیجه گیری

    فصل 5: قابلیت های کلیدی زبان
    قابلیت‌های کلیدی C#‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ ‎
    • استفاده از Automatic Properties
    • استفاده از Object Initializer و Collection Initializer
    • استفاده از Extension Methods
    • اِعمال Extension Method به یک Interface
    • ایجاد Extension Methodها برای فیلترکردن
    • استفاده از عبارت‌های لامبدا
    • شکل‌های دیگر عبارت‌های لامبدا
    • استفاده از Type Inference
    • استفاده از Anonymous Type
    • استفاده از LINQ
    • آشنایی با مفهوم کوئری های با تأخیر در LINQ
    • استفاده‌ی دوباره از یک کوئری با تأخیر
    • LINQ و اینترفیس IQueryable<T>
    • استفاده از متدهای Async
    • استفاده از کلمات کلیدی async و await

    آشنایی با سینتکس موتور Razor
    • ایجاد پروژه
    • ایجاد Model
    • ایجاد کنترلر
    • ایجاد View
    • تنظیم مسیر پیش فرض
    • بررسی یک View ساده در Razor
    • کار با شی‌ء Model
    • استفاده از کد در Razor
    • تعریف یک بلاک کد در Razor
    • انتقال مقادیر به View با استفاده از شی‌ء ViewBag
    • کار با قالب‌ها
    • کار بدون قالب‌ها
    • تفسیر خودکار عبارت "~/" توسط موتور Razor
    • صفت های شرطی HTML در موتور Razor

    نتیجه گیری

    فصل 6: ابزارهای مهم برای ASP.NET MVC
    استفاده از Ninject
    • ایجاد پروژه
    • اضافه کردن Ninject
    • شروع کار با Ninject
    • ایجاد زنجیره‌ای از وابستگی‌ها
    • تعیین مقادیر خصیصه ها و پارامترها
    • استفاده از Self-Binding
    • برگشت نوع مشتق شده
    • استفاده از شرط در معرفی کلاس‌ها

    استفاده از Ninject در ASP.NET MVC
    آزمایش واحد با Visual Studio
    • ایجاد پروژه
    • ایجاد آزمایش‌های واحد
    • اجرای آزمایش‌های واحد و مواجه شدن با خطا
    • پیاده سازی قابلیت

    استفاده از Moq
    • افزودن Moq به پروژه
    • ایجاد یک Mock با Moq!
    • استفاده از قابلیت انتخاب متد توسط Moq
    • تعیین مقدار برای پارامتر متدها توسط Moq
    • برگشت یک نتیجه
    • آزمایش واحد با Moq
    • تایید با Moq

    نتیجه گیری

    بخش دوم: بررسی کامل ASP.NET MVC

    فصل 7: نمای کلی پروژه های ASP.NET MVC
    کار با پروژه‌های ASP.NET MVC
    • آشنایی با مفهوم قراردادها در ASP.NET MVC
    • قوانین نام‌گذاری کلاس‌های کنترلر
    • قوانین نام‌گذاری Viewها
    • قوانین نام‌گذاری برای قالب‌ها

    دیباگ پروژه‌های ASP.NET MVC
    • ایجاد پروژه
    • اجرای دیباگر Visual Studio
    • توقف دیباگر در Breakpoint
    • استفاده از Breakpointها
    • توقف دیباگر در زمان رخ دادن خطا
    • استفاده از قابلیت Edit and Continue
    • فعال‌سازی قابلیت Edit and Continue
    • اصلاح پروژه
    • Edit and Continue
    • استفاده از قابلیت اتصال مرورگر
    • دیباگ آزمایش‌های واحد

    استفاده از تزریق وابستگی در کل پروژه
    نتیجه گیری

    فصل 8: آدرس ها، مسیریابی و Areaها
    معرفی سیستم مسیریابی
    اسمبلی سیستم مسیریابی
    ایجاد پروژه‌ی مسیریابی
    آشنایی با URL Patterns
    ایجاد و معرفی یک Route ساده
    تعریف مقادیر پیش فرض
    ایجاد URL Patternهای ثابت
    حق تقدم Routeها
    تعریف متغیرهای Segment سفارشی
    استفاده از متغیرهای Segment سفارشی به عنوان پارامترهای یک متد اکشن
    تعریف متغیرهای Segment اختیاری
    تعریف مسیرهای با طول متغیر
    اولویت بندی کنترلرها به وسیله‌ی فضاهای نام
    ایجاد قید برای Routeها
    ایجاد قید با استفاده از عبارت‌های باقاعده
    ایجاد قید برای یک Route بر مبنای چند مقدار
    ایجاد قید برای یک Route با استفاده از متدهای HTTP
    استفاده از قیدهای نوع و مقدار
    تعریف یک قید سفارشی
    مسیریابی بر مبنای صفت
    • مسیریابی قرارداد محور در مقایسه با مسیریابی بر مبنای صفت
    • فعال سازی و استفاده از قابلیت مسیریابی بر مبنای صفت

    ایجاد Routeها با متغیرهای Segment
    ادغام قیدها
    استفاده از پیشوند برای مسیر
    رفتار Routeها با فایل‌های موجود بر روی فایل سیستم
    دور زدن سیستم مسیریابی
    ایجاد آدرس‌های خروجی
    چه کاری نباید انجام دهیم؟ تعریف دستی آدرس‌ها!
    آماده سازی پروژه
    ایجاد آدرس‌های خروجی در Viewها
    آشنایی با نحوه‌ی تطبیق Route برای ایجاد آدرس خروجی
    تعیین کنترلر دلخواه در ایجاد آدرس خروجی
    پاس دادن مقادیر اضافه
    آشنایی با مفهوم «استفاده‌ی دوباره از متغیرهای Segment»
    کار با صفت‌های HTML
    ایجاد آدرس‌های کامل برای لینک‌ها
    ایجاد آدرس‌ها (و نه لینک‌ها)
    ایجاد لینک‌ها و آدرس‌ها با استفاده از اطلاعات Route
    ایجاد آدرس‌های خروجی در متدهای اکشن
    ایجاد آدرس از یک Route مشخص
    نقطه ضعف استفاده از نام Routeها
    سفارشی‌سازی سیستم مسیریابی
    • ایجاد رفتار تطبیقی سفارشی برای Routeها
    • سفارشی سازی سیستم مسیریابی برای آدرس‌های ورودی
    • سفارشی سازی سیستم مسیریابی برای ایجاد آدرس‌های خروجی
    • ایجاد یک مدیر Route سفارشی

    کار با Areaها
    • ایجاد یک Area
    • کار با یک Area
    • حل مشکل تداخل نام کنترلرها
    • ایجاد لینک برای متدهای اکشن در Areaها

    طراحی مناسب آدرس‌ها
    • آدرس‌های خود را ساده و کاربرپسند طراحی کنید
    • GET و POST: انتخاب صحیح

    نتیجه گیری

    فصل 9: کنترلرها و اکشن ها
    معرفی کنترلر
    • آماده سازی پروژه
    • ایجاد یک کنترلر با استفاده از اینترفیس IController
    • ایجاد یک کنترلر با ارث بَری از کلاس Controller

    دریافت ورودی
    • استخراج داده‌ها از اشیاء Context
    • استفاده از پارامترها در متد اکشن
    • آشنایی با نحوه‌ی پُرشدن پارامترهای متد اکشن
    • آشنایی با پارامترهای اختیاری و اجباری
    • تعیین مقدار پیش فرض برای پارامتر

    تولید خروجی
    • آشنایی با نتایج اکشن
    • بر گشت نتیجه در قالب HTML با ارسال یک View
    • آزمایش واحد: پردازش یک View
    • تعیین یک View با استفاده از مسیر آن
    • انتقال داده‌ها از یک متد اکشن به یک View
    • آماده سازی یک مدل برای یک View
    • آزمایش واحد: مدل برای View
    • انتقال داده‌ها با ViewBag
    • آزمایش واحد: ViewBag
    • انتقال داده‌ها با ViewData
    • آزمایش واحد: ViewData

    هدایت کاربر به آدرسی دیگر
    • الگوی POST/REDIRECT/GET
    • هدایت کاربر به یک آدرس واقعی
    • آزمایش واحد: هدایت کاربر به یک آدرس واقعی
    • هدایت کاربر به مسیری ثبت شده در سیستم مسیریابی
    • آزمایش واحد: مسیرهای ثبت شده در سیستم مسیریابی
    • هدایت کاربر به یک متد اکشن
    • نگهداری داده‌ها در هنگام هدایت کاربر
    • برگشت داده‌های متنی
    • آزمایش واحد: نتایج حاصل از فراخوانی متد Content
    • برگشت داده‌ها با فرمت XML
    • برگشت داده‌ها با فرمت JSON
    • ارسال فایل‌ها و داده‌های باینری
    • ارسال یک فایل
    • ارسال آرایه‌ای از بایت‌ها
    • ارسال داده‌ها در قالب Stream
    • آزمایش واحد: نتایج حاصل از فراخوانی متد File
    • برگشت خطاها و کدهای HTTP
    • ارسال یک کد HTTP مشخص
    • برگشت نتیجه‌ی 404
    • برگشت نتیجه‌ی 401
    • آزمایش واحد: کدهای HTTP
    • ایجاد یک نتیجه‌ی اکشن سفارشی

    نتیجه گیری

    فصل 10: فیلترها
    استفاده از فیلترها
    • Attributeها در .NET : یادآوری
    • معرفی چهار نوع فیلتر
    • اِعمال فیلترها به کنترلرها و متدهای اکشن
    • فیلترهای مرتبط با اِعطای مجوز دسترسی به منبع
    • ایجاد یک فیلتر مرتبط با اِعطای مجوز دسترسی به منبع
    • استفاده از فیلتر موجود مجوز دسترسی به منبع
    • ایجاد منطق سفارشی برای دسترسی به منابع
    • ایجاد منطق سفارشی، هنگام نداشتن مجوز دسترسی به منبع
    • فیلتر AllowAnonymous
    • استفاده از فیلترهای مدیریت خطا
    • ایجاد یک فیلتر مدیریت خطا
    • استفاده از فیلتر موجود مدیریت خطا
    • استفاده از فیلترهای Action و Result
    • پیاده سازی متد OnActionExecuting
    • پیاده سازی متد OnActionExecuted
    • پیاده سازی یک فیلتر Result
    • استفاده از فیلتر موجود Action و Result
    • استفاده از قابلیت‌های دیگر فیلترها
    • استفاده از فیلترها بدون Attributeها
    • استفاده از فیلترهای Global
    • ترتیب اجرای فیلترها
    • استفاده از فیلترهای موجود
    • استفاده از فیلتر RequireHttps
    • استفاده از فیلتر OutputCache

    نتیجه گیری

    فصل 11: سفارشی سازی کنترلرها
    اجزای دخیل در روند اجرای درخواست
    ایجاد یک Controller Factory
    • ایجاد یک Controller Factory سفارشی
    • ثبت یک Controller Factory سفارشی

    کار با Controller Factory موجود
    • ایجاد حق تقدم برای فضاهای نام
    • سفارشی سازی فرایند ایجاد کنترلر در DefaultControllerFactory
    • استفاده از Dependency Resolver
    • استفاده از یک Controller Activator
    • Override کردن متدهای کلاس DefaultControllerFactory

    ایجاد یک Action Invoker سفارشی
    استفاده از Action Invoker موجود
    • استفاده از یک نام متد اکشن سفارشی
    • استفاده از Action Method Selection
    • ایجاد یک Action Method Selector سفارشی
    • مکانیزم کارکرد Action Method Selector
    • مدیریت متدهای اکشنی که وجود ندارند
    • استفاده از Action Method Selectorها برای پشتیبانی از سرویس‌های REST
    • معرفی افعال HTTP به روشی دیگر
    • معرفی افعال HTTP به روشی دیگر در یک فرم ASP.NET MVC

    افزایش کارایی با کنترلرهای خاص
    • استفاده از کنترلرهای Sessionless
    • مدیریت Sessionها از طریق IControllerFactory سفارشی
    • مدیریت Sessionها با استفاده از DefaultControllerFactory
    • استفاده از کنترلرهای نامتقارن
    • ایجاد یک کنترلر نامتقارن
    • عملیات‌ پشت صحنه و Threadهای بلاک شده
    • ایجاد متدهای Async و Completed
    • شروع عملیات نامتقارن
    • پایان عملیات نامتقارن
    • پاس دادن مقادیر از متد Async به متد Completed
    • مدیریت حداکثر زمان مجاز برای اجرای عملیات نامتقارن
    • توقف عملیات نامتقارن
    • استفاده از الگوی برنامه نویسی نامتقارن .NET
    • چه هنگام باید از کنترلرهای نامتقارن استفاده نمود؟

    نتیجه‌گیری

    فصل 12: Viewها
    ایجاد یک View Engine سفارشی
    • ایجاد یک IView سفارشی
    • ایجاد یک پیاده سازی از اینترفیس IViewEngine
    • معرفی یک View Engine سفارشی
    • بهبود سرعت نمایش صفحات با حذف View Engineهای اضافی
    • استفاده از View Engineهای دیگر

    کار با موتور Razor
    • آشنایی با نحوه‌ی پردازش View توسط موتور Razor
    • استفاده از الگوی DI برای Viewهای Razor
    • پیکربندی مکان های جست‌وجوی Viewها

    افزودن محتویات پویا به Viewهای موتور Razor
    • استفاده از Inline Code
    • Inline Code و اصل جداسازی لایه‌ها
    • معرفی فضای نام به یک View
    • استفاده از دستور @using در یک View
    • معرفی فضای نام در فایل Web.config
    • آشنایی با مفهوم کدگذاری HTML در موتور Razor
    • استفاده از Viewهایی با نوع dynamic به عنوان Model

    استفاده از HTML Helperها
    • ایجاد یک HTML helper Inline
    • ایجاد یک HTML helper External
    • استفاده از HTML Helperهای موجود
    • ایجاد تگ form
    • ایجاد فرم‌هایی که به خودشان ارسال می‌شوند
    • استفاده از Input Helperها
    • استفاده از متدهای HTML helper با نوع Strongly Typed
    • اضافه‌کردن صفت‌ها به تگ HTML
    • ایجاد تگ select
    • ایجاد لینک‌ها و آدرس‌ها
    • استفاده از WebGrid Helper
    • استفاده از Chart Helper
    • استفاده از Helperهای دیگر موجود

    استفاده از Sectionها
    • بررسی وجود Sectionها (روش نخست)
    • بررسی وجود Sectionها (روش دوم)

    استفاده از Partial Viewها
    • ایجاد یک Partial View
    • استفاده از Partial Viewهای Strongly Typed

    استفاده از Child Actionها
    • ایجاد یک متد Child Action
    • فراخوانی متد Child Action

    نمایش Viewها بر اساس نوع دستگاه درخواست کننده
    • انتخاب View در زمان اجرا با قابلیت DisplayModes
    • استفاده از حالت Mobile قابلیت DisplayModes
    • تست دستی قابلیت DisplayModes برای دستگاه های مختلف
    • ایجاد DisplayModeهای سفارشی
    • خلاقیت با قابلیت DisplayModes
    • دادن اختیار به کاربر برای تغییر DisplayModeها

    نتیجه گیری

    فصل 13: قالب های مدل
    استفاده از Templated View Helpers
    • استفاده از CSS در HTML تولیدی
    • استفاده از Model Metadata
    • استفاده از Metadata برای کنترل ویرایش و رؤیت
    • مستثنا کردن یک خصیصه از تولید کد HTML برای آن
    • استفاده از Metadata برای تگ <label>
    • استفاده از Metadata برای مقادیر
    • استفاده از Metadata برای انتخاب قالب نمایش
    • اِعمال Metadata به یک کلاس Buddy
    • کار با خصیصه هایی از نوع Complex

    سفارشی سازی سیستم تولید کدهای HTML
    • ایجاد یک قالب سفارشی برای حالت ویرایش
    • آشنایی با ترتیب جست‌وجوی قالب
    • ایجاد یک قالب سفارشی برای حالت نمایش
    • ایجاد یک قالب عمومی
    • جایگزینی قالب‌های موجود
    • استفاده از خصیصه‌ی ViewData.TemplateInfo
    • توضیحی در ارتباط با فرمت داده‌ها
    • کار با پیشوندهای تولیدی برای تگ های HTML
    • فراهم کردن اطلاعات اضافی برای یک قالب

    آشنایی با سیستم Metadata Provider
    • ایجاد یک Model Metadata Provider سفارشی
    • سفارشی سازی Data Annotations Model Metadata Provider

    نتیجه گیری

    فصل 14: Model Binding
    آشنایی با Model Binding
    استفاده از Model Binder پیش فرض
    • Model Binding برای انواع داده‌های ساده
    • حساسیت Model Binding به قوانین زبان
    • Model Binding برای نوع‌های Complex
    • ایجاد کدهای HTML برای Model Binding آسان
    • تعیین پیشوندهای سفارشی
    • انتخاب خصیصه های مورد نظر برای Binding
    • Binding برای آرایه‌ها و مجموعه‌ها
    • Binding برای مجموعه‌ای از انواع داده‌های سفارشی
    • Binding برای مجموعه‌ها با اندیس های غیر ترتیبی
    • Binding برای نوع داده‌ی Dictionary

    فراخوانی Model Binding با کدنویسی
    • محدود کردن فرایند Model Binding به منبعی مشخص
    • مدیریت خطاها در فرایند Model Binding

    استفاده از Model Binding برای دریافت فایل‌های آپلودی
    سفارشی سازی سیستم Model Binding
    • ایجاد یک Value Provider سفارشی
    • ایجاد یک Model Binder با الگوی DI
    • ایجاد یک Model Binder سفارشی
    • ایجاد Model Binder Providerها
    • استفاده از صفت ModelBinder

    نتیجه گیری

    فصل 15: Model Validation
    ایجاد پروژه
    تعیین اعتبار یک مدل به شکل صریح
    • ایجاد ظاهر مناسب برای Check Boxها

    نمایش پیغام‌های خطای مرتبط با تعیین اعتبار مقادیر
    • نمایش پیغام‌های خطای در سطح خصیصه

    تکنیک‌های دیگر تعیین اعتبار مقادیر
    • تعیین اعتبار مقادیر از طریق Model Binder
    • تعیین قوانین تعیین اعتبار داده‌ها از طریق Metadataها
    • ایجاد یک Attribute سفارشی برای تعیین اعتبار در سطح خصیصه
    • ایجاد یک Attribute سفارشی برای تعیین اعتبار در سطح مدل
    • ایجاد مدل‌هایی که خود را تعیین اعتبار می‌کنند
    • ایجاد یک Validation Provider سفارشی
    • معرفی یک Validation Provider سفارشی

    تعیین اعتبار در سمت کلاینت
    • فعال سازی/غیر فعال سازی تعیین اعتبار در سمت کلاینت
    • آشنایی با CDN
    • استفاده از یک CDN برای کتابخانه‌های JavaScript
    • استفاده از قابلیت تعیین اعتبار داده‌ها در سمت کلاینت
    • آشنایی با نحوه‌ی کارکرد فرایند تعیین اعتبار در سمت کلاینت‌
    • قابلیت درونی ASP.NET MVC برای تعیین اعتبار در سمت کلاینت‌ در مقایسه با کتابخانه‌ی jQuery Validation
    • سفارشی سازی فرایند تعیین اعتبار در سمت کلاینت‌
    • ایجاد مستقیم صفت‌های مرتبط با تعیین اعتبار در کدهای HTML
    • ایجاد صفت‌هایی که از تعیین اعتبار سمت کلاینت‌ پشتیبانی می‌کنند
    • ایجاد قوانین تعیین اعتبار سفارشی در سمت کلاینت

    آشنایی با Remote Validation
    نتیجه گیری

    فصل 16: AJAX
    استفاده از قابلیت Unobtrusive AJAX در ASP.NET MVC
    • ایجاد پروژه
    • فعال سازی/غیرفعال سازی Unobtrusive AJAX
    • استفاده از فرم‌های Unobtrusive AJAX
    • آشنایی با نحوه‌ی کارکرد قابلیت Unobtrusive AJAX

    تنظیمات AJAX
    • اصل «تنزل مطبوع» (Graceful Degradation)
    • آگاه سازی کاربر در هنگام ایجاد یک درخواست AJAX
    • تأیید کاربر، پیش از ارسال درخواست AJAX

    ایجاد لینک‌های AJAXیی
    • اصل «تنزل مطبوع» برای لینک‌های AJAXیی

    کار با Callbackها در AJAX
    کار با JSON
    • افزودن پشتیبانی از فرمت JSON به کنترلر
    • پردازش داده‌های JSON در مرورگر
    • تشخیص درخواست‌های AJAX در متد اکشن
    • ارسال داده‌ها با فرمت JSON به سرور

    نتیجه گیری

    فصل 17: jQuery
    ایجاد پروژه
    ارجاع به jQuery
    • مدیریت نسخه‌های مختلف jQuery

    نوشتن کدهای jQuery
    • اجرای jQuery در یک محیط ایزوله
    • استفاده از Firefox
    • استفاده از Chrome

    مبانی jQuery
    • آشنایی با Selectorهای jQuery
    • نکته‌ای در ارتباط با Id هر تگ
    • استفاده از چند Selector به طور هم‌زمان
    • استفاده از Attribute Selectorها
    • استفاده از فیلترها در jQuery
    • استفاده از فیلترهای محتوا
    • استفاده از فیلترهای فرم
    • آشنایی با متدهای jQuery
    • انتظار برای بارگذاری صفحه
    • متدهای مرتبط با کار با CSS در jQuery
    • کار با DOM

    استفاده از رویدادها در jQuery
    استفاده از جلوه‌های بصری در jQuery
    استفاده از jQuery UI
    • ارجاع به کتابخانه‌ی jQuery UI
    • استفاده از ابزار ThemeRoller
    • ایجاد دکمه‌هایی با ظاهری زیباتر
    • استفاده از کامپوننت Slider

    نتیجه گیری
    بخش سوم: ادامه ی توانایی های پروژه های ASP.NET MVC

    فصل 18: امنیت و آسیب پذیری
    تمامی ورودی‌های برنامه می‌توانند جعل شوند!
    • HTTP چگونه کار می‌کند؟
    • یک درخواست GET ساده
    • یک درخواست POST همراه با کوکی ها
    • جعل درخواست‌های HTTP

    Cross-Site Scripting و HTML Injection
    • آشنایی با حملات XSS
    • کدگذاری HTML از طریق موتور Razor
    • تعیین اعتبار درخواست
    • غیر فعال سازی قابلیت تعیین اعتبار درخواست
    • کدگذاری مقادیر رشته‌ای برای JavaScript

    Session Hijacking
    • محافظت از طریق بررسی آدرس IP درخواست دهنده
    • محافظت با تنظیم خصیصه‌ی HttpOnly کوکی ها

    حملات Cross Site Request Forgery
    • حمله
    • دفاع
    • جلوگیری از حملات CSRF در ASP.NET MVC

    SQL Injection
    • حمله
    • دفاع با استفاده از کوئری های پارامتردار
    • دفاع با استفاده از ORMها

    استفاده‌ی امن از ASP.NET MVC
    • متدهای اکشن را سهوا در معرض دسترسی قرار ندهید
    • اجازه ندهید Model Binding، مقادیر خصیصه های حساس را تغییر دهد

    نتیجه گیری

    فصل 19: تصدیق هویت و مجوز دسترسی به منابع
    استفاده از تصدیق هویت Windows
    استفاده از روش تصدیق هویت بر اساس فرم‌ها
    • تنظیمات Forms Authenticarion
    • مدیریت لاگین
    • استفاده از Forms Authentication، بدون کوکی

    استفاده از سیستم عضویت، نقش‌ها و پروفایل‌ها
    • پیکربندی و استفاده از سیستم عضویت
    • استفاده از SqlMembershipProvider با SQL Server نسخه‌ی Express
    • آماده سازی دستی SQL Server
    • مدیریت سیستم عضویت
    • ایجاد یک Provider سفارشی برای سیستم عضویت
    • پیکربندی و استفاده از نقش‌ها
    • پیکربندی SqlRoleProvider
    • مدیریت نقش‌ها
    • ایجاد یک Provider سفارشی برای سیستم نقش‌ها
    • پیکربندی و استفاده از پروفایل‌ها
    • پیکربندی SqlProfileProvider
    • پیکربندی، خواندن و نوشتن داده‌های پروفایل
    • ایجاد پروفایل‌های Anonymous
    • ایجاد یک Provider سفارشی برای سیستم پروفایل

    چرا نباید مجوزهای دسترسی به منبع را بر اساس آدرس آن تعیین کنیم؟
    محدودکردن دسترسی با استفاده از آدرس‌های IP و دامنه‌ها
    • خطرهای محدودکردن دسترسی با استفاده از آدرس‌های IP و دامنه‌ها

    نتیجه گیری

    فصل 20: قرار دادن پروژه بر روی سرور
    آماده سازی پروژه برای انتشار
    • تشخیص خطا در Viewها، پیش از انتشار پروژه
    • پیکربندی کامپایل پویا
    • انتشار پروژه بر روی سرور با استراتژی Bin Deployment
    • تغییر Web.config، با توجه به حالت کامپایل
    • آشنایی با ساختار تبدیل
    • قرار دادن تگ های مربوط به پیکربندی
    • حذف تگ های مربوط به پیکربندی
    • مقداردهی و حذف صفت‌ها
    • جایگزینی تگ ها
    • استفاده از صفت Locator
    • قراردادن پایگاه داده‌ی پروژه بر روی سرور

    آشنایی با مبانی IIS
    • آشنایی با مفهوم «وب سایت‌ها»
    • آشنایی با مفهوم Virtual Directory
    • آشنایی با مفهوم Application Pool
    • تنظیمات Binding مختلف برای سایت‌ها

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

    انتشار یک پروژه
    • انتشار پروژه با کپی‌کردن فایل‌های آن
    • انتشار پروژه با قابلیت Deployment Package
    • ایجاد Deployment Package
    • استفاده از Deployment Package
    • انتشار پروژه با قابلیت One-Click Publishing

    نتیجه گیری

    بخش چهارم: قابلیت های پیشرفته

    فصل 21: Bundleها
    آماده سازی مثال نمونه
    • اضافه کردن بسته های NuGet
    • ایجاد مدل و کنترلر
    • ایجاد Master Page و View
    • رهگیری بارگذاری فایل های جاوا اسکریپت و CSS
    • استفاده از Bundleهای Script و Style
      • تعریف Bundleها
      • اِعمال Bundleها

    • بهینه سازی فایل های جاوا اسکریپت و CSS

    نتیجه گیری

    فصل 22: ASP.NET Web API
    Web API چیست؟
    • چرا Web Api؟
    • تفاوت Web API و WCF

    ایجاد یک پروژه ی Web API
    • اضافه کردن مدل
    • اضافه کردن کنترلر
    • فراخوانی Web API از طریق مرورگر
    • فراخوانی Web API با استفاده از کتابخانه ی jQuery
    • بازیابی فهرستی از محصولات
    • بازیابی یک محصول با استفاده از مشخصه ی آن
    • اجرای پروژه

    آشنایی با مفهوم مسیریابی در Web API
    مشاهده ی درخواست ارسالی و پاسخ دریافتی
    مدیریت کدهای وضعیت در Web API
    • بازیابی رکورد
    • ایجاد رکورد
    • آپدیت رکورد
    • حذف یک رکورد

    نتیجه گیری

    فصل 23: Web API و برنامه های تک صفحه ای
    مفهوم برنامه‌های تک صفحه‌ای (Single-page Application)
    • آماده‌سازی پروژه ی نمونه
    • ایجاد مدل
    • افزودن کتابخانه ها از طریق NuGet
    • افزودن کنترلر
    • افزودن Master Page و Viewها
    • تعیین نقطه ی آغاز پروژه و تست برنامه
    • استفاده از Web API
    • ایجاد کنترلر Web API
    • آزمایش صحت عملکرد کنترلر API
    • آشنایی با نحوه‌ی عملکرد کنترلر API
    • آشنایی با روش انتخاب متد اکشن مناسب توسط کنترلر API
    • تناظر متدهای HTTP به متدهای اکشن
    • استفاده از Knockout برای برنامه های تک صفحه ای
    • افزودن کتابخانه های جاوا اسکریپت مورد نیاز به Master Page
    • پیاده‌سازی بخش نمایش نوبت‌های رزرو شده
    • تعریف توابع AJAX
    • تعریف مدل
    • تعریف انقیادها
    • پردازش انقیادها
    • تست انقیادها
    • بهبود قابلیت حذف
    • عادت به استفاده از سینتکس Knockout
    • اصلاح مدل
    • ایجاد المان های تعاملی
    • مدیریت رویدادها
    • تست قابلیت ثبت نوبت جدید
    • تکمیل پروژه
    • ساده سازی کنترلر Home
    • مدیریت رویت محتوا

    نتیجه گیری

    فصل 24: ASP.NET MVC 5.1 & 5.2
    نصب ASP.NET MVC 5.1 & 5.2
    پشتیبانی از مقادیر شمارشی (Enums) در Viewها
    بهبود قابلیت مسیریابی بر مبنای صفت
    • یادآوری تعریف قید برای مسیر
    • قیدها در مسیریابی بر مبنای صفت
    • ایجاد یک قید سفارشی برای مسیریابی

    پشتیبانی از کلاس های فریمورک Bootstrap در قالب های ویرایشی (Editor Templates)
    پشتیبانی از تعیین اعتبار نامحسوس (Unobtrusive) در سمت کلاینت برای صفت های MinLength و MaxLength
    پشتیبانی از کلمه ی کلیدی this در Unobtrusive AJAX
    اینترفیس IDirectRouteProvider
    گروه بندی گزینه های کنترل های DropDownList و ListBox
    بهبود متدهای نمایش خطا
    امکان پاس دادن صفت های HTML به متد EditorFor با استفاده از شی Dictionary
    نتیجه گیری

    =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

    نحوه ی خرید:
    این کتاب را می توانید فقط به صورت آنلاین از طریق سایت انتشارات پندار پارس به آدرس http://www.pendarepars.com/book/ASP-DOT-NET-MVC تهیه بفرمایید.

    موفق باشید.
    آخرین ویرایش به وسیله Behrouz_Rad : سه شنبه 11 شهریور 1393 در 12:00 عصر


تاپیک های مشابه

  1. پاسخ: 2
    آخرین پست: سه شنبه 22 اردیبهشت 1394, 04:59 صبح
  2. کتاب به زبان پارسی: مرجع کامل Entity Framework 4.1
    نوشته شده توسط Behrouz_Rad در بخش آگهی‌ها
    پاسخ: 5
    آخرین پست: سه شنبه 17 اردیبهشت 1392, 11:27 صبح
  3. کتاب به زبان پارسی: مرجع کامل CSS
    نوشته شده توسط Behrouz_Rad در بخش آگهی‌ها
    پاسخ: 4
    آخرین پست: چهارشنبه 05 آبان 1389, 23:59 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •