PDA

View Full Version : ایجاد خطا هنگام صدا زدن اکشن در layout



lz20cracker
پنج شنبه 04 تیر 1394, 12:33 عصر
با سلام ، من یه Layout دارم که می خوام درونش چند از بخش ها رو با استفاده از PartialView و اکشن ایجاد کنم یعنی این قسمت ها به صورت پویا هستند.
این کد اکشن من هست:
public virtual async Task<ActionResult> CompanyAboutUs()
{
SettingRepository bl = new SettingRepository();
var temp = await bl.FindAsync(1);
return PartialView(MVC.Home.Views.CompanyAboutUsPartial,t emp.AboutUsText);
}

اینم کد Partial خروجی این اکشن :
@model string Str

@Html.Raw(Model)



اینجوری هم در Layout ازش استفاده کردم

@{Html.RenderAction(MVC.Home.CompanyAboutUs());}


ولی در هنگام اجرا خطای زیر ظاهر میشه :

System.Web.Mvc.HttpHandler Util+ServerExecuteHttpHandlerAsync Wrapper

ممنون میشم راهنمایی کنید.

r4hgozar
پنج شنبه 04 تیر 1394, 13:15 عصر
سلام.
پارشیال رو که اینجوری صدا نمی زنن دوست عزیز.
جای این MVC.Home.Views.CompanyAboutUsPartial

فقط تو دابل کوتیشن اسم پارشیال رو بنویس

hakim22
پنج شنبه 04 تیر 1394, 15:08 عصر
مقدار برگشتی اکشن رو اصلاح کنید (PartialViewResult) :


public virtualasync Task<PartialViewResult> CompanyAboutUs()

lz20cracker
پنج شنبه 04 تیر 1394, 19:17 عصر
سلام.
پارشیال رو که اینجوری صدا نمی زنن دوست عزیز.
جای این MVC.Home.Views.CompanyAboutUsPartial

فقط تو دابل کوتیشن اسم پارشیال رو بنویس
دوست عزیز این کار معادل همون کاریه که شما میگید فقط از nuget T4MVC استفاده شده

lz20cracker
پنج شنبه 04 تیر 1394, 19:20 عصر
مقدار برگشتی اکشن رو اصلاح کنید (PartialViewResult) :


public virtualasync Task<PartialViewResult> CompanyAboutUs()


مرسی دوست عزیز تابع باید از نوع Async نباشه .
در ضمن ActionResult کلاس پدری هست که PartialViewResult از اون ارث بری میکنه پس در دادن خروجی مشکلی نداره
اینم لینک (https://msdn.microsoft.com/en-us/library/system.web.mvc.partialviewresult%28v=vs.118%29.asp x)