C# 如何从另一个项目加载用户控件?

C# 如何从另一个项目加载用户控件?,c#,asp.net,user-controls,C#,Asp.net,User Controls,可能重复: 我有以下案例:一个解决方案有两个项目,A和B。其中一个项目A有一个UserControl 现在我构建A并在B中添加对A的引用。如何才能在B中加载用户控件并访问该用户控件中的控件 我希望避免每次更改某个用户控件时都重新生成ProjectB?我使用IIS、ASP.NET 4.0进行以下操作: 将要共享的控件myControl.ascx放入名为SharedControls的应用程序A的子文件夹中 在IIS中,将虚拟目录(无应用程序,但具有执行脚本权限)添加到B“ASharedContro

可能重复:

我有以下案例:一个解决方案有两个项目,A和B。其中一个项目A有一个
UserControl

现在我构建A并在B中添加对A的引用。如何才能在B中加载用户控件并访问该用户控件中的控件


我希望避免每次更改某个用户控件时都重新生成Project
B

我使用IIS、ASP.NET 4.0进行以下操作:

  • 将要共享的控件myControl.ascx放入名为SharedControls的应用程序A的子文件夹中
  • 在IIS中,将虚拟目录(无应用程序,但具有执行脚本权限)添加到B“ASharedControls”,指向a的SharedControls(引用此子目录,可以避免B在其层次结构中包含a的web.config,这会使B崩溃)
  • 在B中,将项目引用添加到a
  • 在B中,现在可以在标记中声明和使用控件
    (VS将发出警告,因为找不到路径,但它应该在IIS中工作)
  • myControl也应该在codebehind中为B的页面和控件提供
  • 根据您的页面和控件是codefile/codebehind,您可能必须在web.config编译元素中设置batch=“false”,以避免多重编译冲突:

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

    希望这将有助于

    我使用IIS、ASP.NET 4.0进行以下操作:

  • 将要共享的控件myControl.ascx放入名为SharedControls的应用程序A的子文件夹中
  • 在IIS中,将虚拟目录(无应用程序,但具有执行脚本权限)添加到B“ASharedControls”,指向a的SharedControls(引用此子目录,可以避免B在其层次结构中包含a的web.config,这会使B崩溃)
  • 在B中,将项目引用添加到a
  • 在B中,现在可以在标记中声明和使用控件
    (VS将发出警告,因为找不到路径,但它应该在IIS中工作)
  • myControl也应该在codebehind中为B的页面和控件提供
  • 根据您的页面和控件是codefile/codebehind,您可能必须在web.config编译元素中设置batch=“false”,以避免多重编译冲突:

    <compilation defaultLanguage="c#" debug="true" batch="false" targetFramework="4.0">
    
    
    
    希望这将有助于

    看到这个:看到这个: