как убрать ошибку - PullRequest
       13

как убрать ошибку

0 голосов
/ 04 июня 2011

Как убрать следующую ошибку:

Только один экземпляр ScriptManager можно добавить на страницу. Описание: необработанное исключение произошло во время исполнения текущий веб-запрос. Пожалуйста, просмотрите трассировка стека для получения дополнительной информации о ошибка и откуда она возникла код.

Сведения об исключении: System.InvalidOperationException: только один экземпляр ScriptManager может быть добавлено на страницу.

Ошибка источника: необработанное исключение был создан во время выполнения текущий веб-запрос.
Информация о происхождении и местонахождение исключения может быть идентифицируется с помощью стека исключений след ниже.

Вот моя HTML-разметка:

<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/MasterPage.master"   
    CodeFile="ManualReport.aspx.cs" Inherits="ManualReport" %>
<%@ Register assembly="Telerik.Web.UI" namespace="Telerik.Web.UI" 
    tagprefix="telerik" %>

<asp:Content  ContentPlaceHolderID="ContentPlaceHolder1" runat="server" 
    ID="ContentPlaceHolder1">

<%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=9.0.0.0, 
    Culture=neutral,   PublicKeyToken=b03f5f7f11d50a3a"
    Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %>

<form id="mainform" runat="server"><table width="100%" >
    <asp:ScriptManager ID="ScriptManager2" runat="server">
    </asp:ScriptManager>

    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>

</form>

    <div>
         <tr><td>Customer Name</td><td>
        <asp:RadioButton ID="rdbcustomerAll" runat="server"  Visible ="false"   
 GroupName="CustomerValidation" 
                 Text="All" Checked="false" /></td><td>
             <asp:RadioButton ID="rdbcustomerSpecific" runat="server"  
  GroupName="CustomerValidation" Visible="false" Text="Spec" Checked="true" /></td></
  td><td>
                     <asp:DropDownList ID="cmbName" runat="server">
                     </asp:DropDownList></td></tr>
                     <tr><td>Date</td><td><asp:RadioButton ID="rdbDateAll" runat="server" 
  Visible ="false" GroupName="DateValidation" 
                 Text="All"  /></td><td>
             <asp:RadioButton ID="rdbDateSpec" runat="server" Visible ="false" Checked="true" GroupName="DateValidation" Text="Spec" /></td><td>
        <telerik:RadDatePicker ID="rdpDate" runat="server" xmlns:telerik="telerik.web.ui">
                              </telerik:RadDatePicker>
                     </td></tr>

Ответы [ 4 ]

1 голос
/ 04 июня 2011

ScriptManager является компонентом на стороне сервера, и его необходимо поместить в тег form.Только один ScriptManager компонент должен быть добавлен на страницу.В вашем случае вы предоставили два ScriptManager компонента.Для этого вы должны удалить один из них, ScriptManager, который находится за пределами form.

0 голосов
/ 04 июня 2011

Помимо ответов, которые уже дали другие, которые на 100% верны, вы также слишком рано закрываете свою "форму" ...

<form id="mainform" runat="server"></form>

Переместите закрывающий тег «form» в ПОСЛЕ всех ваших серверных элементов управления ASP.NET, чтобы убедиться, что ваш HTML остается действительным ... (трудно точно определить, где находится, не видя полной разметки, но я бы предположил, что ближе к закрытию Тег содержимого: / asp: Контент)

РЕДАКТИРОВАТЬ: На самом деле также стоит отметить, что, поскольку вы используете главную страницу здесь, у вас, вероятно, уже есть форма на стороне сервера внутри вашей главной страницы ... Вы не можете тогда иметь вторую дочернюю форму внутри дочерней страницы aspx. Я бы посоветовал, возможно, поместить ваш диспетчер отдельных сценариев на главную страницу внутри тега формы, как указали другие, и удалить все ссылки на диспетчер сценариев и «форму» со дочерней (aspx) страницы)?

НТН.

Dave

0 голосов
/ 04 июня 2011

Почему вы добавили ScriptManager два раза на своей странице? Вы можете добавить только один, и это то, что говорит об ошибке. Только один экземпляр ScriptManager разрешен для каждой страницы.

Пожалуйста, удалите ScriptManager2, и он будет работать для вас.

Во-вторых, ScriptManger должен находиться под тегом формы. как ..

<form id="mainform" runat="server"><table width="100%" >

  <asp:ScriptManager ID="ScriptManager1" runat="server">
  </asp:ScriptManager>

</form>
0 голосов
/ 04 июня 2011

У вас есть два менеджера скриптов на странице:

<asp:ScriptManager ID="ScriptManager2" runat="server">
  </asp:ScriptManager>

и

 <asp:ScriptManager ID="ScriptManager1" runat="server">
  </asp:ScriptManager>

В описании ошибки вы должны удалить один.У вас может быть только один.

...