Ошибка ASP.NET с помощью сборки
Здравствуйте, я создаю сайт ASP.NET/C#, и я хочу использовать сборку Ajax Toolkit. Я добавил его в "Ссылки".
В Default.aspx У меня есть следующее:
<%@ Page Title="My_Website" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" ViewStateMode="Enabled" CodeBehind="Default.aspx.cs"
Inherits="My-Website._Default" %>
<%@ Register TagPrefix="ajaxToolkit" Namespace="AjaxControlToolkit" Assembly= "AjaxControlToolkit"%>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<ajaxToolkit:ComboBox ID="ComboBox1" runat="server" />
</asp:Content>
В вкладке "Дизайн" я вижу окно Combo, и все в порядке.
Но когда я пытаюсь отладить приложение, я получаю эту ошибку:
Не удалось найти ресурсы, подходящие для указанной культуры или нейтральной культуры. Убедитесь, что "AjaxControlToolkit.Properties.Resources.NET4.resources" был правильно встроен или связан в сборку "AjaxControlToolkit" во время компиляции или что все необходимые сборки спутников являются загружаемыми и полностью подписанными.
Ответы
Ответ 1
У меня было такое же сообщение об ошибке, и оно было вызвано из-за отсутствия ScriptManager. Попробуйте добавить ScriptManager на страницу aspx.
<asp:ScriptManager runat="server"></asp:ScriptManager>
Или вы можете динамически добавлять ScriptManager в случайном образе Page_Load кода.
if (ScriptManager.GetCurrent(Page) == null)
{
Page.Form.Controls.AddAt(0, new ScriptManager());
}
Если вы хотите узнать, почему нам нужен ScriptManager, когда используется ASP.NET AJAX ToolKit, вы можете проверить здесь.
Ответ 2
Где вы взяли сборку инструментов Ajax? Не было ли там файлов ресурсов (языковые ресурсы и т.д.)? У меня была эта проблема, прежде чем добавлять ссылку на сборку из местоположения, где таких ресурсов не было.
После удаления и добавления из исходного местоположения (где файлы ресурсов находятся рядом), необходимые файлы также добавляются в папку справки. Все эти ресурсы добавляются немного больно (на самом деле они настаивают на расширении!), Если вы их не используете, но я еще не нашел способ "отключить" это поведение.
В качестве дополнительной заметки вы можете поместить следующую строку в элементе <pages><controls>
вашего web.config, чтобы включить доступ к элементам инструментария с помощью указанного TagPrefix
на всех страницах:
<add assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagPrefix="Ajax"/>
Ответ 3
Вам может потребоваться добавить ToolkitScriptManager, а не ScriptManager
- Вы должны использовать ToolkitScriptManager вместо ScriptManager с помощью Ajax Control Toolkit.
Он написан в примечаниях по следующей ссылке:
https://ajaxcontroltoolkit.codeplex.com/releases/view/116091
Ответ 4
Добавить в форму:
<asp:ScriptManager ID="ScriptManager1" runat="server" />
or
<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server" />
Ответ 5
Добавьте менеджера Script с UpdatePanel. Проблема будет решена.