生成一个web用户控件的DLL

时间:2010-12-08 19:03:29

标签: asp.net dll user-controls

如何创建我的Web应用程序用户控件的dll? 我有usercontrol222.ascx,但我想用这个用户控件制作一个dll。

3 个答案:

答案 0 :(得分:4)

创建一个仅包含用户控件(“usercontrol222.ascx”)的项目,并从新项目的部署中获取控件的dll。以下是此方法的来源以及更完整的解释:Turning an .ascx User Control into a Redistributable Custom Control(下面的值得注意的摘录,请参阅完整破败的链接)。

  

步骤3:使用“发布命令”预编译站点

     

下一步是使用新的   发布命令以预编译您的   站点并将您的用户控件转换为   潜在的定制控制。你会找到   Build / Publish Web下的命令   现场。在“发布”对话框中,执行   以下:

     
      
  • 选择目标位置。这是您硬盘上的位置   网站将被预编译。
  •   
  • 取消选择“允许此预编译站点可更新”。在可更新   模式,只有文件背后的代码(如果   任何)将编译,和ascx   将是未加工的。这是   在某些情况下有用,但不是   你想要的就是你想要的   结果DLL是自包含的。
  •   
  • 选择“使用固定命名和单页程序集”。这将保证   您的用户控件将是   编译成单个程序集   将有一个基于ascx的名称   文件。如果您不选中此选项,   您的用户控件可以编译   与其他页面和用户一起使用   控件(如果你有一些),和   程序集会收到一个随机名称   工作起来会更困难   用。
  •   
     

第4步:查找生成的自定义控件

     

现在,使用Windows   资源管理器或命令行窗口,   我们去你的目录吧   指定为目标,所以我们可以看到   生成了什么。你会看到一个   那里的文件数量,但让我们集中注意力   在与我们相关的那个   将用户控制权转化为目标   自定义控件。

     

在“bin”目录中,您会找到   一个名为的文件   App_Web_MyTestUC.ascx.cdcab7d2.dll。   基本上你已经完成了这个文件   是你的用户控件转换成   自定义控件!唯一的事情   剩下要做的就是实际使用   它

答案 1 :(得分:2)

你做不到。用户控件适用于您不想创建自定义控件的简化方案。它们的缺点是.ascx文件和任何其他工件(图像,样式等)必须包含在使用用户控件的每个网站中。

如果您需要在项目之间完全重用,则需要创建自定义控件。如果您直接将用户控件转换为自定义控件,那实际上并不难。

答案 2 :(得分:0)

您可能希望开发自己的服务器控件。请参阅以下类似讨论:ASP.NET Web User Control Library