Ошибка парсера при использовании ScriptManager

У меня есть страница ASP.NET, на которой есть диспетчер сценариев.

<form id="form1" runat="server">
    <div>
        <asp:ScriptManager EnablePageMethods="true" ID="scriptManager2" runat="server">
        </asp:ScriptManager>
    </div>
</form>

Страница переопределяет абстрактное свойство, чтобы вернуть ScriptManager, чтобы базовая страница могла его использовать:

public partial class ReportWebForm : ReportPageBase
{
    protected override ScriptManager ScriptManager
    {
        get { return scriptManager2; }
    }

    ...
}

И базовая страница:

public abstract class ReportPageBase : Page
{
    protected abstract ScriptManager ScriptManager { get; }

    ...
}

Когда я запускаю проект, я получаю следующую ошибку парсера:

Сообщение об ошибке парсера: базовый класс включает поле 'scriptManager2', но его тип (System.Web.UI.ScriptManager) несовместим с типом элемента управления (System.Web.UI.ScriptManager) .

Как я могу это решить?

Обновление: часть диспетчера сценариев файла дизайнера:

protected global::System.Web.UI.ScriptManager scriptManager;

person Serhat Ozgel    schedule 18.09.2008    source источник
comment
Как выглядит ваш файл дизайнера для страницы? Похоже, ему не нравится дизайнерское определение элемента управления.   -  person Nick Craver    schedule 18.09.2008


Ответы (2)


Я могу скомпилировать ваш образец кода нормально, вы должны проверить свой файл дизайнера, чтобы убедиться, что все в порядке.

РЕДАКТИРОВАТЬ: единственное, о чем я могу думать, это то, что это своего рода справочная проблема. Используется ли в справочнике System.Web.Extensions правильная версия для вашей целевой платформы? (должно быть 3.5.0.0 для .net 3.5 и 1.0.6xxx для 2.0)

person Jared    schedule 18.09.2008

Я обнаружил, что моя указанная библиотека System.Web.Extensions (v3.5.sth) не имеет той же версии, что и ссылка в web.config (v.1.0.6sth). Замена dll (3.5) на старую версию System.Web.Extensions решила проблему.

person Serhat Ozgel    schedule 18.09.2008
comment
ха! мы, должно быть, набирали это в одно и то же время! Поздравляю с решением вашей проблемы! - person Jared; 18.09.2008