web-dev-qa-db-ja.com

アセンブリでのASP.NETエラー

こんにちは、ASP.NET/C#Webサイトを作成しています。AjaxToolkit Assemblyを使用したいと思います。 「参考文献」に追加しました。

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>

デザインタブでは、コンボボックスが表示され、すべてが正常です。しかし、アプリケーションをデバッグしようとすると、次のエラーが発生します。

指定されたカルチャまたはニュートラルカルチャに適したリソースが見つかりませんでした。 「AjaxControlToolkit.Properties.Resources.NET4.resources」がコンパイル時にアセンブリ「AjaxControlToolkit」に正しく埋め込まれているかリンクされているか、必要なすべてのサテライトアセンブリがロード可能で完全に署名されていることを確認してください。

27
Youssef

以前にも同じエラーメッセージが表示されましたが、 ScriptManager がないために発生しました。 ScriptManagerをaspxページに追加してみてください。

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

または、コードビハインドのPage_Loadイベントに動的に ScriptManager を追加できます。

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

ASP.NET AJAX ToolKitを使用しているときにScriptManagerが必要な理由を知りたい場合は、 ここ を確認してください。

64

Ajaxツールキットアセンブリはどこで入手しましたか?言語ファイルなどのリソースファイルはありませんでしたか?そのようなリソースが存在しない場所からアセンブリへの参照を追加するときに、以前にこの問題がありました。

削除し、元の場所(リソースファイルが存在する場所)から追加すると、必要なファイルも参照フォルダーに追加されます。追加されたこれらのリソースはすべて、実際には(オーバーオーバーで拡張することを主張しているため)少し面倒ですが、それらを使用していない場合でも、この動作を「オフにする」方法はまだ見つかりません。

補足として、web.configの<pages><controls>要素内に次の行を配置して、ページ全体で指定されたTagPrefixを介してツールキットコントロールにアクセスできるようにすることができます。

<add Assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagPrefix="Ajax"/>
2
Grant Thomas

ScriptManagerではなくToolkitScriptManagerを追加する必要がある場合があります

  • Ajax Control Toolkitでは、ScriptManagerではなくToolkitScriptManagerを使用する必要があります。

次のリンクのメモに記載されています。

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

1
Ronen Festinger

フォームに追加:

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

1
Ankit

UpdatePanelを使用してスクリプトマネージャーを追加します。問題は解決されます

0
Monzur