[c#] void 형식을 개체로 암시 적으로 변환 할 수 없습니다. .NET MVC PartialViewResult

다음과 같은 컨트롤러 작업이 있습니다.

[ChildActionOnly]
public virtual PartialViewResult ListActions(int id)
{
    var actions = meetingActionRepository.GetAllMeetingActions(id);

    return PartialView(actions);
}

그리고 다음 작업 링크 (t4MVC 및 razor 구문 사용)

<p>
   @Html.RenderAction(MVC.MeetingActions.ListActions(Model.MeetingId))
</p>

그러나 이것은 나에게 오류를 제공합니다.

void 유형을 객체로 암시 적으로 변환 할 수 없습니다.

컨트롤러 동작이 정상이라고 말할 수있는 한,이 오류가 발생하는 원인은 무엇입니까?



답변

이렇게 :

<p>
    @Html.Action(MVC.MeetingActions.ListActions(Model.MeetingId))
</p>

또는 다음 RenderAction과 같이 주장한다면 :

<p>
    @{Html.RenderAction(MVC.MeetingActions.ListActions(Model.MeetingId));}
</p>

개인적으로 나는 첫 번째를 선호하고 더 적은 키 입력을 만듭니다.


답변

Html.Partial도 작동합니다. 🙂

@Html.Partial("View", Model);


답변

나는 같은 문제가 있었다. 나를 위해 일한 것은 식을 중괄호 로 캡슐화하는 것입니다 .

@{Html.RenderPartial("viewName", Model);}


답변

Html.RenderAction과 Html.Action의 차이점

다른 목적을 위해 다른 것. 위의 링크를 확인하십시오.


답변