2013-04-22 2 views
2

Я загрузил и установил Ajax Toolkit, который Microsoft предоставляет в моей копии Visual Studio. Я пытаюсь следовать онлайн-примерам использования элементов управления, и я столкнулся с следующим несоответствием. Я установил набор инструментов, и он доступен через панель инструментов. Я добавил ссылку на этот конкретный проект enter image description hereСсылки на Microsoft Ajax Toolkit

но когда я перетаскиваю элемент управления AutoCompleteExtender из набора инструментов, я вижу некоторую разницу ASP. Я вижу, что-то вроде

<asp:AutoCompleteExtender> 

, но все примеры, которые я видел шоу синтаксис как <ajaxToolkit:AutoCompleteExtender> Однако, когда я пытаюсь использовать этот синтаксис я получаю предупреждение `непризнанным тег префикс или устройство фильтра«ajaxToolkit».
корректуре ToolKit установлен

enter image description here

Что здесь по-другому? Intellisense не получает тег ajaxToolkit и даже после добавления оператора using для всего пространства имен AjaxToolkit, я все еще получаю предупреждающее сообщение о нераспознанном теге.

ответ

2

Примеры, которые вы используете, вероятно, написаны в то время, когда Ajax Toolkit не был частью ASP.NET, поэтому вам пришлось вручную добавить ссылки в свой проект (в web.config), и обычно они были добавлены в способ, которым вы будете использовать теги, которые начинаются с <ajaxToolkit:. Вы можете изменить это на любой префикс.

Теперь, когда это часть ASP.NET, вам не нужно создавать отдельную ссылку (возможно, она автоматически добавляется), поэтому они использовали обычный префикс тега <asp:.

+0

Я думал об этом также изначально, но затем некоторые из примеров, которые я видел в прошлом году, использовали путь ''. Хорошо, чтобы получить подтверждение, спасибо. – wootscootinboogie

2

Эта часть имени тега является префиксом, и вы (или библиотека) устанавливаете его либо на странице, на которую вы удаляете свой элемент управления, либо на веб-сервере, как глобальная настройка.

На странице, на вершине, но при первой первой строке объявления:

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" 
    TagPrefix="ajaxToolkit" %> 

на web.config, чтобы сделать его глобальным и не нужно, чтобы добавить его на каждой странице:

<pages > 
    <controls> 
    <add namespace="AjaxControlToolkit" assembly="AjaxControlToolkit" tagPrefix="ajaxToolkit" /> 
    </controls> 
</pages> 

Если вы видите в этих двух примерах, то я поставил TagPrefix тот, который вы видите на примерах.

+1

Настройка этого использования с помощью web.config кажется лучшим решением для меня. благодаря! :) – wootscootinboogie

0

Возможно, вы используете неправильную версию набора инструментов с установкой ASP.net.

Я обнаружил, что я был уверен, что использую правильную версию ASP.net. Я пытался использовать 3.5 AjaxToolKit DLL с ASP.net 2 версии моего сайта.

Я просто разместил эту строку поверх моей страницы ASPX, и с тех пор все было хорошо.

<%@ Register Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" 
    Namespace="System.Web.UI" TagPrefix="asp" %>