ورود / ثبت نام
0
0

نحوه استفاده از ActionResult در MVC چگونه است

321 بازدید
ActionResult در MVC

ActionResult در MVC

در خیلی از ارسال های انجمن ها من یک نظر رایج دیده ام. ActionResult در MVC چیست؟ بنابراین در این مقاله ActionResult در MVC را با هم تشریح می کنیم و خروجی آن را نیز نشان می دهیم. پس به جای اینکه به عمق مطلب برویم بهتر است که موضوع را با یک دید کلی آغاز کنیم. با من همراه باشید …

 ActionResult در MVC

ActionResult یک کلاس فشرده شده برای نمایش دادن خروجی به client در فرمت های مختلف می باشد که در نتیجه نظریه آن توسط controller ارائه می شود. ActionResult در controller تعریف می شود.

در لیست زیر انواعی از ActionResult را میبینیم که در MVC موجود هستند و استفاده از هرکدام آنها به نیاز های خروجی client بستگی دارد :

ViewResult

PartialViewResult

EmptyResult

RedirectResult

RedirectToRouteResult

JsonResult

JavaScriptResult

ContentResult

FileContentResult

FileStreamResult

FilePathResult

در مقاله زیر هر ActionResult به صورت کوتاه و مختصر توضیح داده شده است.

View : ViewResult را به عنوان HTML به client باز می گرداند.

کد زیر یک Syntax برای تعریف کردن ViewResult در MVC controller می باشد.

public class EmpController : Controller    
{           
public ActionResult Index()      
{          
return View();      
}    
}  

Partial View : PartialViewResult را به response stream باز می گرداند، معمولا partial view از main view فرا خوانده میشود. مثل user control در ASP.Net می باشد.

public class EmpController : Controller   
{   
public ActionResult Index()   
{   
return PartialView("_Empdetails");   
}   
}

EmptyResult : این عمل یک پاسخ خالی (empty response) به client می دهد.

public class EmpController : Controller  
{  
    public ActionResult Index()  
    {  
      return new EmptyResult();  
    }  
}

RedirectResult : به URL مشخص شده redirects می دهد، مانند Response.Redirect در ASP.Net.

public class EmpController : Controller  
{    
    public ActionResult Index()  
    {  
     return Redirect("http://www.compilemode.com");  
    }  
}

RedirectToRouteResult : بر اساس اطلاعات داده شده به مسیریاب، یک redirection HTTPبهURL مشخص شده توسط موتور مسیریاب می دهد.

public class EmpController : Controller   
{   
public ActionResult Index()   
{   
filterContext.Result = new RedirectToRouteResult(new RouteValueDictionary(new {    
action = "View",    
controller = "EmpController",}));   
}   

JsonResult : یک ViewData داده شده را با فرمت JavaScript نشان گذاری شده (JSON) مرتب می کند.

public class EmpController : Controller   
{   
public JsonResult EmpDet()     
{         
return Json("HI", JsonRequestBehavior.AllowGet);     
}      

JavaScriptResult : یک قطعه کد JavaScript که می تواند در طرف client اجرا شود را ارائه می دهد.

public class EmpController : Controller   
{   
public virtual JavaScriptResult EmpDet()   
{   
var script = string.Format(@"   
MaxNotificaitonsToShow = {0};   
ItemsPerPage = 5;",   
GlobalSettings.MaxNotificaitonsToShow);   
return JavaScript(script);   
}   
} 

ContentResult : محتوا را در response stream بدون نیاز به view می نویسد.

public class EmpController : Controller   
{   
public ContentResult PersonInfo()   
{   
return Content("Hi Vithal Wadje");   
}   

FileContentResult : این action یک فایل را به client باز می گرداند.

public class EmpController : Controller   
{   
public FileResult DailyReport()   
{   
string fileName = @"c:\Vithal Wadje\DailyReport.pdf";   
string contentType = "application/pdf";   
return new FilePathResult(fileName, contentType);   
}   
} 

FileStreamResult : فایلی را که توسط Stream ارائه شده به client باز می گرداند.

public class EmpController : Controller   
{     
public ActionResult DownloadFile()   
{   
string Fileinfo =@"c:\Vithal Wadje\DailyReport.txt";   
byte[] data = Encoding.UTF8.GetBytes(Fileinfo );   
return File(data, "text/plain","DailyReport.txt");   
}   

FilePathResult : یک fileresult را به client باز می گرداند.

public class EmpController : Controller   
{   
public FilePathResult DownloadFile(string file, Guid GuID)   
{    
return File(FileStream, "application/octet-stream", fileName);   
}   
}  

این مقاله فقط یک توضیح مختصر از ActionResult می دهد تا تازه کارها با آن بیشتر آشنا شوند. برای اطلاعات بیشتر مقالات آینده را نیز بخوانید.

  • پسورد: www.mspsoft.com
آیا این مطلب را می پسندید؟
https://www.mspsoft.com/?p=16025
اشتراک گذاری:
واتساپتوییترفیسبوکپینترستلینکدین
داریوش فرخی
داریوش فرخی هستم از سال 92 شروع به یادگیری برنامه نویسی و از سال 93 در بخش برنامه نویسی و تولید محتوای سایت mspsoft.com مشغول هستم. فعالیتم نیز بیشتر در زمینه های برنامه نویسی با سی شارپ و asp.net بوده است. اوقات فراغتم را هم غالبا با تماشای فیلم یا بازی های کامپیوتری پر میکنم .
مطالب بیشتر
برچسب ها:

نظرات

2 نظر در مورد نحوه استفاده از ActionResult در MVC چگونه است

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *