ورود

View Full Version : سوال: توضیح در رابطه با ارسال پارامتر با فرمت json



kamran_14
یک شنبه 25 بهمن 1394, 15:43 عصر
سلام
من تازه آموزش asp.net mvc رو شروع کردم
تا حالا این فرمت رو ندیدم میشه توضیح بدین؟

Json(new{Fullname=fullname.Age=42})



File(rootAbsolutePathName,contentType:"harchi/harchi",fileDownloadName:"my.css");


1- چرا در دستورات بالا بعضی وقتها : میذاریم و بعضی وقتها مساوی؟

2- یا بالای اکشن مثلا مینویسیم [nonAction]؟ میدونم که کارش چیه. باعث میشه که متد، اکشن حساب نشه. آیا به این دستور گفته میشه Attribute؟ آیا Attribute با Property فرق میکنه؟

hakim22
دوشنبه 26 بهمن 1394, 03:58 صبح
در مورد اول شما یک شی به صورت داینامیک ایجاد میکنید.
یعنی نیازی نیست که شی رو قبلا به صورت کلاس تعریف کرده باشید .میتوانید در لحظه و در محل یک شی جدید ایجاد کنید. برای مقدار دهی به کلاسهای #C باید از علامت مساوی (نسبت دهی) استفاده کنید.


Json(new{Fullname=fullname,Age=42})


در مورد دوم برای مقدار دهی به پارامترهای انتخابی از علامت دو نقطه استفاده میشود. در #C می توانید متدهایی تعریف کنید که بعضی از پارامترهای آن با مقادیر پیش فرض پر شده اند و نیازی به مقدار دهی ندارند. اما چنانچه می خواهید تغییر دهید باید با علامت : ابتدا نام متغیر انتخابی را به #C اعلام کنید. این مسئله وقتی الزامی است که یک متد دو یا چند پارامتر انتخابی دارد. (در مورد Optional Arguments تحقیق کنید)

به عباراتی مثل [NonAction] یک Attribute گفته میشود. اتریبیوت ها کلاس هستند که از اینترفیس IActionAttribute ارث بری کرده اند. این کلاس دارای رویدادهایی است که میتوانید درون آن برنامه نویسی کنید. مثلا شما میخواهید قبل از ورود به متد یا بعد از انجام آن یک لوگ در سیستم ثبت کنید . یا میخواهید دسترسی کاربر را چک کنید (Authorize) که در این موارد از اتریبیوتها استفاده می شود. یا جلوی اجرای آن را توسط کاربر بگیرید (NonAction)

برای درک بهتر فواید استفاده از اتریبیوت ها به مباحث Aspect Oriented Programming رجوع کنید.