CodePlex에서 MVCScriptManager을 시도했는데 ViewUserControl과 함께 사용하기 전에는 제대로 작동하는 것 같습니다.CodePlex의 MVCScriptManager가 ViewUserControls와 함께 작동합니까?
이 시나리오에서이 시나리오를 사용하면 다음 오류가 발생합니다.
RenderMode가 설정된 ScriptManager는 으로 설정되어 있습니다. 그런 ScriptManager는 RenderMode가 Slave로 설정되어야합니다.
Site.Master 페이지의 헤더에 렌더링 모드가 "마스터"로 설정된 ScriptManager가 있지만 부분 뷰가 먼저 렌더링 된 것처럼 보입니다.
이 문제를 해결할 수있는 방법이 있습니까?
=== 마스터 페이지 ====
<%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %>
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title><asp:ContentPlaceHolder ID="TitleContent" runat="server" /></title>
<link href="../../Content/Site.css" rel="stylesheet" type="text/css" />
<mvc:ScriptManager ID="ScriptManager1" RenderMode="Master"
runat="server" EnableHttpCompression="true" EnableHttpExpiration="true"
HttpExpirationInDays="30">
<Scripts>
<mvc:ScriptReference EnableCrunching="true"
Path="~/Scripts/jquery-1.3.2.js" />
</Scripts>
</mvc:ScriptManager>
</head>
<body>
<div class="page">
<div id="header">
<div id="title">
<h1>My MVC Application</h1>
</div>
<div id="logindisplay">
<% Html.RenderPartial("LogOnUserControl"); %>
</div>
==== LogOnUserControl.ascx ====
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<%
if (Request.IsAuthenticated) {
%>
Welcome <b><%= Html.Encode(Page.User.Identity.Name) %></b>!
[ <%= Html.ActionLink("Log Off", "LogOff", "Account") %> ]
<%
}
else {
%>
[ <%= Html.ActionLink("Log On", "LogOn", "Account") %> ]
<%
}
%>
<mvc:ScriptManager ID="ScriptManager1" RenderMode="Slave"
runat="server" EnableHttpCompression="true"
EnableHttpExpiration="true" HttpExpirationInDays="30">
<Scripts>
<mvc:ScriptReference EnableCrunching="true"
Path="~/Scripts/SampleScript_LoginViewUserControl.js" />
</Scripts>
</mvc:ScriptManager>