27 votes

Erreur ASP.NET avec l'assembly

Bonjour je suis à la création d'un ASP.NET/C# site web et je veux utiliser l'Ajax Toolkit de l'assemblée. Je l'ai ajouté à la "Références".

En Défaut.aspx j'ai ceci:

<%@ 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>

Dans l' Onglet Conception , je peux voir la boîte Combo et tout va bien. Mais quand j'ai essayer de déboguer l'application, j'obtiens cette erreur:

Impossible de trouver les ressources appropriées pour la culture ou la culture neutre. Assurez-vous que "AjaxControlToolkit.Les propriétés.Les ressources.NET4.ressources" a été correctement lié ou incorporé dans l'assemblée "AjaxControlToolkit" au moment de la compilation, ou que tous les assemblys satellites nécessaires sont chargeables et dûment signée.

64voto

emre nevayeshirazi Points 6245

J'ai eu le même message d'erreur alors qu'il y a et il a été causé en raison du manque de ScriptManager. Vous devrez peut-être ajouter ScriptManager à votre page aspx.

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

Ou vous pouvez ajouter ScriptManager dynamiquement lors de l'événement Page_Load de code derrière.

if (ScriptManager.GetCurrent(Page) == null)
{
     Page.Form.Controls.AddAt(0, new ScriptManager());
}

Si vous voulez savoir pourquoi nous avons besoin de ScriptManager quand ASP.NET AJAX ToolKit est utilisé, vous pouvez vérifier ici.

2voto

Grant Thomas Points 28280

Où avez-vous l'Ajax toolkit de l'assemblée? N'était-il pas une fichiers de ressources (les ressources de la langue, etc.)? J'ai eu ce problème avant lors de l'ajout d'une référence à l'assembly à partir d'un emplacement où ces ressources n'étaient pas présents.

Lors de la suppression et l'ajout du lieu d'origine (d'où la ressource se trouvent les fichiers d'à côté), puis les fichiers requis sont également ajoutés au dossier de références. L'ensemble de ces ressources étant ajoutés sont un peu d'une douleur, en fait (puisqu'ils insistent sur l'expansion de plus de un plus!), si vous ne les utilisez pas, mais je n'ai pas trouvé un moyen 'pour désactiver ce comportement encore.

Comme une note de côté, vous pouvez placer la ligne suivante dans l' <pages><controls> élément de votre site web.config pour permettre l'accès à la boîte à outils contrôles par l'spécifiée TagPrefix tout au long de vos pages:

<add assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagPrefix="Ajax"/>

1voto

Ronen Festinger Points 164

Vous devrez peut-être ajouter le ToolkitScriptManager et non le ScriptManager

  • Vous devez utiliser ToolkitScriptManager au lieu de ScriptManager avec Ajax Control Toolkit.

C'est écrit dans les notes dans le lien suivant:

https://ajaxcontroltoolkit.codeplex.com/releases/view/116091

1voto

Ankit Points 140

Ajouter au formulaire:

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

0voto

Monzur Points 178

Ajoutez un gestionnaire de scripts avec UpdatePanel. Le problème sera résolu

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X