پیشنیازها:
- نحوه ارسال فایل به سرور توسط ASP.NET MVC
- نحوه اعتبار سنجی سمت سرور ارسال فایلها
در ASP.NET MVC برای آپلود فایلها عموما عنوان میشود که از تگ input به نحو زیر استفاده شود:
<input type="file" name="file" />
مشکلی که با این روش وجود دارد، عدم فعال شدن اعتبار سنجی سمت کاربر در حد مثلا «لطفا یک فایل را انتخاب کنید» است. برای فعال سازی آن میتوان از همان روش unobtrusive معرفی ...
یک ادیتور آنلاین را تصور کنید که کاربران در قسمت ارسال تصویر آن قرار است فقط فایلهای png، jpg و gif ارسال کنند و نه مثلا فایل test.aspx و موارد مشابه. در اینجا برای محدود کردن نوع فایلهای آپلود شده میتوان از فیلترهای سفارشی ASP.NET MVC کمک گرفت:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web.Mvc;
namespace SecurityModule
{
public class AllowUploadSpecialFilesOnl ...
در ASP.NET MVC امکان استفاده از چند View Engine به صورت همزمان وجود دارد و همچنین هربار که قرار است Viewایی رندر شود، از تمام اینها تا یافتن موتور مناسب نمایش View جاری کوئری میگیرد. بدیهی است هرچقدر تعداد موتورهای ثبت شده در اینجا بیشتر باشند، زمان بیشتری نیز برای یافتن موتور نمایشی مناسب صرف خواهد شد؛ خصوصا اگر موتور مناسب در آخر لیست ثبت شده باشد.
در ASP.NET MVC 3 دو موتور نمایشی به صورت پیش فرض نصب هستند (WebForms and Razor) ...
AutoMapper کتابخانه ای ساده و سبک برای نگاشت اطلاعات یک شی به شی دیگر به صورت خودکار هست و...
اگه این پست رو مطالعه کرده باشید یه مشکل امنیتی بنام «Mass Assignment» مطرح شد.برای رفع این مشکل یک روش استفاده از ViewModel بود.
فرض کنید Model ما
public class User
{
public int Id { get; set; }
public string FirstName { get; s ...
تعریف ActionLink زیر را درنظر بگیرید:
@Html.ActionLink("text", "Index", "Home")
پارامترهای دوم و سوم آن که به نامهای یک اکشن متد و کنترلر آن اشاره میکنند، توسط رشتهها تعریف شدهاند. مشکلاتی هم که با رشتهها در حالت کلی وجود دارند به شرح زیر است:
الف) میتوان نام کنترلر یا نام متد را در برنامه تغییر داد. به این ترتیب تمام ActionLink هایی که در برنامه به این کنترلر اشاره میکردند از کار ...
ابتدا در پروژهی mvc خود یک پوشه با نامی دلخواه (مثلا MyHelpers) بسازید و سپس کلاسی با محتویات زیر را به آن اضافه کنید(نام کلاس به دلخواه Helpers گذاشته شده است) :
public static class Helpers
{
//در اینجا متدها ی کمکی قرار میگیرند
}
1- تبدیل تاریخ میلادی به شمسی با استفاده از کتابخانه ی Persia :
...
قبلا شرح مختصری در زمینه OpenID در اینجا گفته شد.
حال میخواهیم این امکان را در پروژه خود بکار ببریم، جهت این کار باید ابتدا یک پروژه ایجاد کرده و از کتابخانههای سورس باز موجود استفاده کرد.
1- ابتدا در ویژوال استودیو یا هر نرم افزار دیگر یک پروژه MVC ایجاد نمایید.
2- نوع Internet Application و برای View Engine سایت Razor را انتخاب نمایید.
...
کار متد کمکی Url.Action ایجاد یک Url بر اساس تعاریف مسیریابی برنامه است. البته متد کمکی مشابهی نیز مانند Html.ActionLink در ASP.NET MVC وجود دارد که کار آن تولید یک لینک قابل کلیک است؛ اما ممکن است در حالتی خاص تنها نیاز به خود Url داشته باشیم و نه لینک قابل کلیک آن.
الف) اگر از jQuery Ajax استفاده میکنید، حتما باید استفاده از Url.Action را لحاظ کنید
برای نمونه اگر قسمتی از عملیات Ajaxایی برنامه شما به نحو زیر تعریف ...
یک سری نکته ریز را جهت بهبود ظاهر برنامههای وب میتوان درنظر داشت؛ برای مثال:
مجموعهی Twitter Bootstrap که به عنوان یکی از فریمورکهای خوب CSS مطرح است، دارای تعدادی دکمه تهیه شده با CSS است : (^)
برای نمایش یک چنین دکمههایی فقط کافی است یک span را به صفحه اضافه کرده و class آنرا مثلا مساوی btn btn-info قرار دهیم تا دکمهای آبی رنگ نمایش داده شود.
طراحی زیبایی دارد. با مرورگرهای جدید سازگار است و ... ...
تو سری پستهای قبلی که براتون گذاشتم به تغییرات و ویژگیهای بوجود آمده در MVC4 اشاره کردم یکی دیگه از این ویژگیها Single Page Application (SPA) هستش که به ما امکان ساخت برنامههای تعاملی سمت کلاینتو میده و مارو کمک میکنه. که از نسخه MVC 4 Beta در دسترس قرار گرفت.البته به گفته خود مایکروسافت نسخه اصلی اون برای عرضه به همراه نسخه کامل شده MVC4 آماده نخواهد شد.میشه گفت نسبت به خیلی از ویژگیهای جدید کمتر روش تبلیغ شده حالا یا بخاطر آماده ن ...