1

重複の可能性:
ASPの他のプロジェクトのユーザーコントロールを使用する

次のような場合があります。ソリューションにはAとBの2つのプロジェクトがあります。そのうちの1つであるAには。がありUserControlます。

ここで、Aを作成し、BにAへの参照を追加します。Bにユーザーコントロールをロードして、そのユーザーコントロールのコントロールにアクセスするにはどうすればよいですか?

Bユーザーコントロールの1つを変更するたびにプロジェクトを再構築することを避けたいですか?

4

1 に答える 1

1

私はIIS、ASP.NET 4.0で作業して、このように進めるために使用します:

  1. SharedControlsという名前のアプリケーションAのサブフォルダーに共有したいコントロールmyControl.ascxを配置します
  2. IISで、仮想ディレクトリ(アプリはありませんが、スクリプトの実行権限があります)をBに追加します。クラッシュ)
  3. Bで、プロジェクト参照をAに追加します
  4. Bでは、マークアップでコントロールを宣言して使用できるようになりました <%@ Register TagPrefix="uc1" TagName="myControl" Src="~/ASharedControls/myControl.ascx" %>(VSはパスが見つからないとして警告しますが、IISでは機能するはずです)
  5. myControlは、Bのページとコントロールのコードビハインドでも使用できるようになります。

コードファイル/コードビハインドであるページとコントロールによっては、複数のコンパイルの競合を回避するために、web.configコンパイル要素でbatch="false"を設定する必要がある場合があります。

<compilation defaultLanguage="c#" debug="true" batch="false" targetFramework="4.0">

これがお役に立てば幸いです

于 2012-12-05T13:26:45.953 に答える