2017-03-21 5 views
0

asp.net mvc 응용 프로그램에서 수정 보고서를 렌더링해야합니다. mvc는 reportviewer에 대한 지원을 제공하지 않기 때문에 강제로 aspx 페이지로 리디렉션됩니다. 그러나 리디렉션에서 layout.cshtml 메뉴가 손실됩니다.면도기 뷰에서 aspx 페이지 렌더링 (cshtml)

어쨌든 동일한 창에서 동일한 면도기 페이지에서 aspx 페이지의 부분보기를 표시 할 수 있습니까?

Iframe은 내가 알고 있지만 모범 사례에서 iframe을 사용하는 것은 좋지 않으므로 사용하지 않으려는 하나의 해결책입니다.

감사합니다.

답변

1

iframe이 실용적인 옵션이 아니라면 보고서 페이지 용 WebForms 마스터 페이지를 만드는 것이 좋습니다.

그런 다음 마스터 페이지에서, 당신은 보이지 않는에 기본 자리 표시 자에게 컨트롤을 설정하고 명시 적으로 서버 태그 내 면도기 레이아웃보기를 렌더링 할 수 있습니다.

<% var buildTitle = new StringBuilder(); 
    var buildMain = new StringBuilder(); 
    TitleContent.RenderControl(new HtmlTextWriter(new System.IO.StringWriter(buildTitle))); 
    ViewBag.Title = buildTitle.ToString().Trim(); 
    MainContent.RenderControl(new HtmlTextWriter(new System.IO.StringWriter(buildMain))); 
    ViewBag.MainContent = buildMain.ToString().Trim(); 
%> 
<%= Html.Partial("YourRazorLayoutView", viewData: ViewData)%> 

자세한 내용은 blog을 확인하십시오.

관련 문제