0

コントロールを web.config ファイルに登録し、コントロールの .dll をアプリケーションの Bin フォルダーに配置しました。

    <compilation debug="true">
        <assemblies>
            <add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
            <add assembly="RichTextEditor"/>
        </assemblies>

    </compilation>
    <pages>
        <controls>
            <add assembly="RichTextEditor" namespace="RichTextEditor" tagPrefix="cc1" />
        </controls>
    </pages>

アプリケーション ルート フォルダーの .aspx ページでこのコントロールを問題なく使用できるようになりました。ただし、このコントロールを使用したい .aspx ページの一部は、アプリケーションのサブフォルダー (この場合は "Admin" というサブフォルダー) に格納されています。これらのページでこれらのコントロールを使用してデバッグで実行しようとすると、次のエラーが発生します。

Error   1   Unknown server tag 'cc1:RichTextEditor'.    N:\IntranetV2\admin\EditMenuItem.aspx   27  

ここで単純なものが欠けていると確信していますが、これを機能させる方法がわからないようで、グーグルはあまり役に立たないようです。

アップデート:

さて、アーロンのソリューションを試してみましたが、うまくいきませんでした。彼のコードの提案を次のように修正しました。

<add tagPrefix="cc1" tagName="RichTextEditor" src="~/Bin/RichTextEditor.dll" />

必要なのはこれだけだと思っていましたが、エラーが発生しました:

Error   1   There is no build provider registered for the extension '.dll'. You can register one in the <compilation><buildProviders> section in machine.config or web.config. Make sure is has a BuildProviderAppliesToAttribute attribute which includes the value 'Web' or 'All'.

誰か助けてください!これに対する答えはばかばかしいほど単純であることはわかっていますが、自分で修正しようとして気が狂ってしまい、グーグルは役に立たないことを証明しました。

4

2 に答える 2

2

私はしばらく前にいくつかの同様の問題を抱えていました。コントロールを機能させることができた唯一の方法は、次のようなものでした:

<add tagPrefix="cc1" tagName="RichTextEditor" src="~/controls/richtexteditor.ascx">

これではなく:

<add assembly="RichTextEditor" namespace="RichTextEditor" tagPrefix="cc1" />

編集:

バイナリを使用しているため、ソリューションに .dll を追加し、それを使用しているプロジェクトに参照を追加します。このように、.NET は .dll を bin フォルダーに追加します。次に、これに戻ります (名前空間とアセンブリが正しいことを確認します)。

<add assembly="RichTextEditor" namespace="RichTextEditor" tagPrefix="cc1" />

また、参照としてこれを確認してください:ヒント/トリック: Web.config でユーザー コントロールとカスタム コントロールを登録する方法

于 2009-01-28T15:07:03.300 に答える
1

フォルダーは IIS でアプリケーションとして定義されていますか? その場合、IIS はそのサブフォルダー内で web.config (および bin/ およびその他の特別なファイルとフォルダー) を検索するため、このような問題が発生します。

于 2009-01-28T14:46:49.410 に答える