ASP.NET의 스크립트 관리자를 렌더링한 다음 Ubuntu 16.04의 웹 페이지에서 UpdatePanel을 렌더링하는 방법을 이해하고 싶습니다.
다음 aspx 스크립트 코드는 Xamarin Studio와 결합된 Windows 7 Microsoft Visual Studio 2013에서 제대로 실행됩니다.
그러나 apache2 및 xsp4를 실행하는 Firefox 웹 브라우저에서 URL 127.0.0.1:9000/Tutorial.aspx를 요청하면 다음 예외가 발생합니다.
System.InvalidOperationException ID가 "UpdatePanel1"인 컨트롤에는 페이지에 ScriptManager가 필요합니다. ScriptManager는 이를 필요로 하는 컨트롤 앞에 나타나야 합니다.
Description: HTTP 500.Error processing request.
Details: Non-web exception. Exception origin (name of application or object): System.Web.Extensions.
Exception stack trace:
at System.Web.UI.UpdatePanel.get_ScriptManager () <0x41cfa1b0 + 0x0015f> in <filename unknown>:0
at System.Web.UI.UpdatePanel.RegisterPanel () <0x41cfa0b0 + 0x000a7> in <filename unknown>:0
at System.Web.UI.UpdatePanel.OnInit (System.EventArgs e) <0x41cfa050 + 0x0001f> in <filename unknown>:0
at System.Web.UI.Control.InitRecursive (System.Web.UI.Control namingContainer) <0x41cf9820 + 0x0013c> in <filename unknown>:0
at System.Web.UI.Control.InitRecursive (System.Web.UI.Control namingContainer) <0x41cf9820 + 0x000a4> in <filename unknown>:0
at System.Web.UI.Control.InitRecursive (System.Web.UI.Control namingContainer) <0x41cf9820 + 0x000a4> in <filename unknown>:0
at System.Web.UI.Page.InternalProcessRequest () <0x41cf82d0 + 0x003e1> in <filename unknown>:0
at System.Web.UI.Page.ProcessRequest (System.Web.HttpContext context) <0x41cea5e0 + 0x001f3> in <filename unknown>:0
<body>
<form id="form2" runat="server">
<div>
<div class="container">
<div>
<div class="imageFormHead">
<asp:Label runat="server" Text="<%$ Resources:Resource, FT_formTitle %>"></asp:Label>
<cc1:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server"></cc1:ToolkitScriptManager>
</div>
<div>
<asp:ScriptManager ID="ScriptManagerBC" runat="server" />
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<cc1:TabContainer id="TabControl" runat="server" activetabindex="0" AutoPostBack="True" OnActiveTabChanged="TabControl_ActiveTabChanged">
</cc1:TabContainer>
</ContentTemplate>
</asp:UpdatePanel>
위의 예외를 피할 수 있는 솔루션을 제안해 주십시오.
나는 다음 URL을 사용했습니다:https://stackoverflow.com/questions/7525525/how-to-add-an-updatepanel-controls-to-a-page-programmatically테스트 웹 페이지에 업데이트 패널 컨트롤을 프로그래밍 방식으로 추가할 수 없습니다.
System.NullReferenceException
Object reference not set to an instance of an object
Description: HTTP 500.Error processing request.
Details: Non-web exception. Exception origin (name of application or object): System.Web.Extensions.
Exception stack trace:
at System.Web.Handlers.ScriptResourceHandler.EncryptString (System.String s) <0x418eada0 + 0x00150> in <filename unknown>:0
at System.Web.Handlers.ScriptResourceHandler+RuntimeScriptResourceHandler.System.Web.Handlers.IScriptResourceHandler.GetScriptResourceUrl (System.Reflection.Assembly assembly, System.String resourceName, System.Globalization.CultureInfo culture, Boolean zip, Boolean notifyScriptLoaded) <0x418e70a0 + 0x00617> in <filename unknown>:0
at System.Web.Handlers.ScriptResourceHandler.GetScriptResourceUrl (System.Reflection.Assembly assembly, System.String resourceName, System.Globalization.CultureInfo culture, Boolean zip, Boolean notifyScriptLoaded) <0x418e6f40 + 0x00055> in <filename unknown>:0
at System.Web.UI.ScriptReference.GetUrlFromName (System.Web.UI.ScriptManager scriptManager, IControl scriptManagerControl, Boolean zip) <0x418e58e0 + 0x000ff> in <filename unknown>:0
at System.Web.UI.ScriptReference.GetUrl (System.Web.UI.ScriptManager scriptManager, IControl scriptManagerControl, Boolean zip) <0x418e5680 + 0x0012b> in <filename unknown>:0
at System.Web.UI.ScriptManager.RegisterScripts () <0x418e30f0 + 0x0031b> in <filename unknown>:0
at System.Web.UI.ScriptManager.OnPagePreRenderComplete (System.Object sender, System.EventArgs e) <0x418e2f00 + 0x000ef> in <filename unknown>:0
at System.Web.UI.Page.OnPreRenderComplete (System.EventArgs e) <0x418e2a80 + 0x00090> in <filename unknown>:0
at System.Web.UI.Page.ProcessLoadComplete () <0x418c3ce0 + 0x001e0> in <filename unknown>:0
at System.Web.UI.Page.InternalProcessRequest () <0x41876930 + 0x0049f> in <filename unknown>:0
[2016년 6월 29일 오후 7시 6분 편집] 오늘 저녁 나는 내 문제의 주요 원인 중 하나가 사과와 오렌지를 섞는다는 사실을 발견했습니다. "Apple"은 Microsoft의 asp:ScriptManager이고 "orange"는 Mono의 asp:ScriptManager입니다. 이 오류가 발생하는 이유와 해결 방법을 아는 사람이 있습니까?
어떤 도움이라도 대단히 감사하겠습니다.