دوره کامل آموزش پیاده سازی وبسایت خبری با ASP.NET MVC5.2

ASP.NET نسل جدید Active Server Pages یا ASP است. نکته مهم این است که ASP.Net یک زبان برنامه نویسی نیست بلکه یک تکنولوژی جدید می‌باشد که توسط شرکت مایکروسافت ارائه شده است. این تکنولوژی بعنوان شاخص اصلی فناوری در ساخت وب سایت‌های بزرگ در نظر گرفته شده است. مهم‌ترین نکاتی که در طراحی این محصول در نظر گرفته شده است راحتی استفاده و بالا بودن کارائی و قابلیت آن می‌باشد. صفحات ASP.Net به علت اینکه کامپایل می‌شوند، از صفحات ASP کلاسیک سریع‌تر هستند.

تکنولوژی ASP.NET MVC در دسامبر ۲۰۰۷ معرفی و نسخه قابل اتکای آن در جولای ۲۰۱۴ با کد ASP.NET MVC 5.2.0 در دسترس توسعه دهندگان نرم افزارهای کاربردی وب، قرار گرفت. MVC یک تکنولوژی جدید و قدرتمند برای ایجاد صفحات وب به صورت داینامیک و ساده است. در ضمن MVC یک تکنولوژی جدید است که دست ما را در برنامه نویسی بسیار باز می‌کند و در برخی موارد هم کد نویسی ها را آسان‌تر می‌کند. مثلاً ایجاد فرم‌های ورود اطلاعات را ساده‌تر یاحتی گاهی فرم‌ها را خودش ایجاد و برای هرکدام از فیلدها اعتبار سنجی قرار می‌دهد.

MVC مخفف سه کلمه Model View Controller هست. در واقع MVC بر روی معماری‌های چند لایه‌ای جهت جداسازی قسمت‌های مختلف برنامه و به طور دقیق‌تر جدا کردن بخش‌ها منطقی برنامه اعم از دیتا، permission ها، چـــــک کردن صحت داده‌ها و …. از لایه Presentation layer یا در واقع همان لایه‌ای که مستقیماً با کاربر نهایی (End user) در ارتباط است، قرار می‌گیرد.

model-view-controller
آموزش ASP.NET MVC5.2

دوره کامل آموزش پیاده سازی وبسایت خبری با ASP.NET MVC5.2 یکی از دوره‌های کاربردی و پروژه محور سایت دانشجویار بعد از حدود ۲ ماه تلاش به پایان رسید و با یک خروجی مناسب، اهداف از پیش تعیین شده دوره محقق شد.

در دوره کامل آموزش پیاده سازی وبسایت خبری با ASP.NET MVC5.2 شما از ابتدایی‌ترین موارد مربوط به MVC کار را آغاز می‌کنید و در قالب یک پروژه‌ کاربردی و توضیحات مطرح شده توسط مدرس دوره در MVC تا جایی پیشرفت می‌کنید که می‌توانید یک وبسایت خبری با تمام امکانات را پیاده سازی کنید.

سرفصل این دوره با نظم و دقت خاص به صورت کاربردی و با حذف موارد غیر ضروری تدوین شده و دارای ارزش محتوایی بالایی می‌باشد.

پیشنیاز ها:

  • آشنایی با Html
  • آشنایی با C# در حد متوسط

تکنولوژی‌های مورد استفاده:

  • LINQ To EntityFramework 6 DataBase First

نرم افزارهای مورد استفاده:

  • Visual Studio 2013
  • Microsoft SQL Server 2014

در این پروژه ازچه مواردی استفاده می‌کنیم:

  • Asp.net MVC 5 Razor ViewEngin
  • زبان برنامه‌نویسی C#
  • SQL

سرفصل های دوره دوره کامل آموزش پیاده سازی سایت خبری با ASP.NET MVC5.2

  • قسمت یک :
    • معرفی مدرس و مقدمه‌ای بر پروژه اصلی(بررسی سرفصل‌ها و مقدمه‌ای بر MVC)
    • بررسی پیش‌نیازها
  • قسمت دو :
    • چگونه یک پروژهmvc داخل VisualStudio 2013 ایجاد کنیم؟
    • حل یک مثال ساده در حد نمایش یک متن ساده (برای درک بهتر اجزای MVC)
    • مقدمه‌ای بر مسیریابی (پیدا کردن ذهنیت)
  • قسمت سه :
    • بررسی شئ گرایی و ایجاد ساختار داده(در حد ذهنیت پیداکردن)
    • آموزش مقدماتی Linq To EntityFramework (در حد ذهنیت پیداکردن)
    • مثالی برای درک بهتر دو مورد بالا
  • قسمت چهار :
    • آموزش Sql Server به‌صورت کاربردی (در حد پروژه)
    • انواع رابطه (یک‌به‌یک و یک به چند و ….) و محدودیت آن‌ها
    • نحوه ایجاد ارتباط بین جداول
  • قسمت پنج :
    • توضیحات مربوط به فیلدهای دیتابیس و جداول
    • ایجاد دیتابیس مربوط به پروژه
  • قسمت شش :
    • ایجاد رابطه بین جداول اصلی پروژه + توضیحات کامل
    • مقداردهی اولیه جداول و بررسی محدودیت‌ها
  • قسمت هفت :
    • معرفی قالب مورداستفاده در پروژه
    • تغییر بخش‌های لازم از آن و ویرایش
    • درنهایت ایجاد قالب اصلی
  • قسمت هشت :
    • دانلود و نصب پک‌های لازم از Nuget
    • ایجاد پوشه‌های لازم و دسته‌بندی‌ها
  • قسمت نه :
    • ایجاد قالب اصلی و کلی سایت (جدا از صفحه مدیریت)
    • آشنایی با Layout و نحوه کار با آن
    • آشنایی با Partial View و نحوه کار با آن
    • مثالی کامل و ایجاد لایوت اصلی سایت و پارشیال ویو های مربوطه (مثال کامل)
  • قسمت ده :
    • مروری بر دیتابیس و ایجاد Model اصلی برای آن (ارتباط با بانک اطلاعاتی به‌صورت DataBase First)
    • ایجاد Repository مربوط به اخبار اصلی سایت + متدهای لازم برای خواندن اخبار
    • نمایش خبرهای اصلی در صفحه اصلی
  • قسمت یازده :
    • جداسازی انواع خبرها (یادداشت‌ها, خبرهای ویژه، خبرهای اصلی) و نمایش هرکدام در مکانی مشخص
    • نحوه مرتب‌سازی خبرها برحسب جدیدترین‌ها
    • نحوه نمایش تعداد محدود از اخبار(مثلاً ۱۰ تا از جدیدترین خبرها)
  • قسمت دوازده :
    • خواندن تنظیمات از دیتابیس و اعمال برخی از آن‌ها (تعداد نمایش در صفحه اصلی، …)
    • ایجاد قسمت پربازدیدی‌ترین خبرها
    • ایجاد بخش پربحث ترین ها
    • ایجاد بخش جدیدترین اخبار
  • قسمت سیزده :
    • تغییرات در کدهای جاوا اسکریپت برای نمایش ۵ خبر در قسمت اسلایدر
    • نمایش ۵ تا از جدیدترین خبرها در بخش اسلایدر
    • ایجاد بخش تبلیغات زمان‌بندی‌شده (تاریخ انقضا و تاریخ تولید و ….)
  • قسمت چهارده :
    • کامل کردن قسمت تبلیغات
    • نحوه نمایش دسته‌بندی‌ها
    • نمایش دسته‌های اصلی بالای سایت + تصویر هر دسته
    • ایجاد بخش دسته‌بندی به‌صورت آبشاری با بی‌نهایت زیر دسته و سطح (هر زیردسته خودش می‌تواند زیر دسته دیگری داشته باشد)
  • قسمت پانزده :
    • ایجاد صفحه اختصاصی هر خبر (ادامه خبر)
    • آشنایی با فرم ساز خودکار mvc
    • آموزش کار با MetaData ها و کاربرد آن‌ها
    • آموزش ایجاد Attribute روی Property ها
  • قسمت شانزده :
    • مرتب‌سازی اجزای صفحه اختصاصی اخبار
    • کار با کدهای css
  • قسمت هفده :
    • ایجاد بخش نظرات
    • نحوه شناسایی نظر اصلی و پاسخ
    • نحوه نمایش نظرات به شکلی که نظر و پاسخ آن معلوم باشد.
  • قسمت هجده :
    • نحوه تبدیل تاریخ خبر به شمسی
    • ایجاد بخش لایک برای خبر به دو صورت Ajax و معمولی
  • قسمت نوزده :
    • ایجاد بخش دیسلایک به‌صورت Ajax برای خبر
    • ایجاد بخش لایک و دیس لایک برای نظرات اختصاصی برای نظر و پاسخ نظر
  • قسمت بیست :
    • ایجاد بخش ثبت نظرات به‌صورت کامل (نظرات اصلی خبر)
    • نحوه کار با ViewBag و نمایش پیغام مناسب هنگام ثبت شدن یا نشدن نظر توسط آن
  • قسمت بیست و یک :
    • ایجاد بخش پاسخ نظرات
    • نحوه نمایش فرم ثبت پاسخ به‌صورت Ajax
    • آشنایی بیشتر با Partial View و ایجاد فرم از طریق آن
    • ایجاد Loading هنگام ایجاد درخواست Ajax
  • قسمت بیست و دو :
    • بخش بازدید هر خبر(ثبت بازدید)
  • قسمت بیست و سه :
    • نمایش خبرهای مرتبط با هر دسته با کلیک روی آن
    • ایجاد join با دستورات Linq بین سه جدول برای نمایش خبرهای مرتبط با یک دسته
  • قسمت بیست و چهار :
    • ایجاد منوی بالای سایت (دسته‌بندی‌ها)
    • نمایش خبرهای مربوط به یک دسته خاص با کلیک بر روی دسته
    • ایجاد بخش جستجو در سایت (ساده)
    • بررسی یک مبحث امنیتی برای ناقص کردن کدهای مخرب کاربر که ممکن است داخل یک تگ input وارد بکند
    • ایجاد صفحه‌بندی برای صفحه اصلی با استفاده از پکیج PagedListMVC
  • قسمت بیست و پنج :
    • ایجاد بخش تماس با ما یا ContactUS
    • ایجاد جدول مربوطه
    • ایجاد متا دیتاها
    • بررسی Attribute های لازم برای نام‌گذاری و Validation ها
    • استفاده از Validation های سمت کاربر
    • بررسی صحت قالب ایمیل با Regular Expressionها (Regex)
  • قسمت بیست و شش :
    • بررسی اتریبیوت های HttpGet و HttpPost برای Action های همنام
    • بررسی Validation های سمت سرور به‌صورت تکی و دسته‌جمعی
    • ذخیره‌سازی داده‌ها در دیتابیس
    • نمایش پیغام مناسب یا ViewBag ها
  • قسمت بیست و هفت :
    • ایجاد بخش جستجوی پیشرفته
    • بررسی Sql Command ها در Sql Server
  • قسمت بیست و هشت :
    • ایجاد یک متد جاوا اسکریپتی برای JQuery Ajax
    • ایجاد اکشن برای دریافت داده‌هایی که با JQuery گرفته می‌شوند
    • ایجاد یک Sql Command مناسب برای جستجوی پیشرفته و تست آن در Sql Server
    • نحوه استفاده از Sql Command ها در Linq
  • قسمت بیست و نه :
    • نمایش نتایج جستجوی پیشرفته با Partial View ها
    • استفاده از Loading تا زمان ارسال و دریافت داده‌ها به‌صورت Ajax
  • قسمت سی :
    • ایجاد بخش عضویت در سایت
    • استفاده از Attribute به نام Remote برای جلوگیری از تکراری بودن ایمیل یا نام کاربری
    • استفاده از Attribute به نام DataType
  • قسمت سی و یک :
    • ایجاد اکشن برای ثبت کاربر
    • چگونه یک تصویر را آپلود بکنیم و سایز و قالب آن را کنترل بکنیم.
    • ثبت اطلاعات در دیتابیس
  • قسمت سی و دو :
    • ایجاد صفحه Login
    • ایجاد کد تصویری یا کد Captcha
  • قسمت سی و سه :
    • ایجاد بخش Recovery پسورد یا بازیابی کلمه عبور
    • چگونگی ارسال ایمیل با Asp.net MVC
    • خواندن مشخصات و ارسال پسورد به ایمیل کاربر
  • قسمت سی و چهار :
    • آشنایی و کار با Session ها
    • نوشتن کدهای مربوط به لاگین
    • ایجاد صفحه‌ای که فقط کاربران لاگین کرده بتوانند باز کنند
    • ایجاد صفحه که فقط کاربران لاگین کرده و با سطح دسترسی Admin بتوانند وارد شوند
    • ایجاد صفحه که فقط کاربران لاگین کرده و با سطح دسترسی Writerبتوانند وارد شوند
    • تغییر صفحه ورد به شکلی که فقط مهمان بتواند آن را ببیند
    • نمایش پیغام مناسب برای هر یک از موارد بالا
  • قسمت سی و پنج :
    • ایجاد لایوت مربوط به صفحه مدیریت
    • ایجاد دکمه خروج از سایت
    • عملیات بیشتر با سشن ها
  • قسمت سی و شش :
    • ایجاد صفحه ویرایش پسورد
    • جلوگیری از دزدیدن حساب با تغییر پسورد
  • قسمت سی و هفت :
    • ایجاد صفحه ویرایش پروفایل به همراه ویرایش تصویر پروفایل (کامل)
  • قسمت سی و هشت :
    • ایجاد بخش ویرایش ایمیل به‌صورت کامل (جلوگیری از تکراری بودن ایمیل به روشی دیگر)
  • قسمت سی و نه :
    • ایجاد و نمایش پنل های مربوط به مدیر یا نویسنده به‌صورت مجزا
    • ایجاد بخش مدیریت اخبار و نمایش لیست اخبار با در نظر گرفتن دسترسی
    • تبدیل تاریخ شمسی
  • قسمت چهل :
    • نحوه حذف یک خبر با تمامی قواعد برای جلوگیری از افزونگی داخل دیتابیس
    • بررسی اینکه یک نویسنده نتواند خبر نویسنده دیگر را حذف کند.
  • قسمت چهل و یک :
    • ایجاد بخش ویرایش خبر
    • چگونه ckeditor را روی یک فیلد ست کنیم…
    • ایجاد ckeditor سفارشی
  • قسمت چهل و دو :
    • ایجاد بخش ایجاد خبر جدید
  • قسمت چهل و سه :
    • ایجاد بخش مدیریت نظرات با امکانات لازم (احراز هویت …)
    • تفکیک نظرات خوانده‌شده و نخوانده شده و تائید نشده
  • قسمت چهل و چهار :
    • مدیریت دسته‌بندی‌ها (لیست، حذف و …)
    • معرفی یک روش جدیدتر برای حذف دسته و اعمال تغییرات روی دیگر جداول
  • قسمت چهل و پنج :
    • مدیریت دسته‌بندی‌ها (افزودن دسته و ویرایش)
    • چگونه دسته و زیر دسته را به‌صورت بی‌نهایت ایجاد بکنیم…
  • قسمت چهل و شش :
    • مدیریت کاربران
    • تفکیک کاربران فعال‌شده یا نشده
    • حذف یک کاربر و متعلقات آن
  • قسمت چهل و هفت :
    • ایجاد بخش مدیریت تماس با ما
    • ایجاد بخش مربوط به مدیریت تبلیغات
  • قسمت چهل و هشت :
    • ایجاد بخش تنظیمات
    • انتقال داده بین ویو و لایوت با ویوبگ
    • نمایش عنوان سایت و متاتگ ها و خواندن از دیتابیس
  • قسمت چهل و نه :
    • توضیحاتی در مورد دامین
    • مروری بر نحوه تهیه دامین .ir
    • نحوه تهیه هاست موردنیاز
    • چه اطلاعاتی زمان تحویل هاست به ما ایمیل می‌شوند…
    • چگونه با کنترل پنل website panel کار بکنیم…(domai و ftp و file manager و …)
  • قسمت پنجاه :
    • نحوه ساخت یوزر و دیتابیس
    • چگونه با sql server به بانک راه دور متصل شویم
    • مقابله با همخوانی نداشتن نسخه‌های sql server
    • توضیح و نحوه پابلیش سایت
    • نحوه انتقال به هاست و اجرا
    • چگونه سیستم نمایش خطا را فعال کنیم