Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用VS2008创建可重用的UserControl程序集_C#_.net_Asp.net_User Controls - Fatal编程技术网

C# 使用VS2008创建可重用的UserControl程序集

C# 使用VS2008创建可重用的UserControl程序集,c#,.net,asp.net,user-controls,C#,.net,Asp.net,User Controls,是否有建议的过程来创建可重用的ASP.NET程序集,这些程序集包含可以在不同解决方案中的项目之间共享的用户控件 我们目前有一组编译后步骤,在项目上运行aspnet\u compiler.exe,使用给定名称生成预编译程序集,然后使用aspnet\u merge.exe将每个单独的控件程序集合并为一个程序集,然后将其复制到项目的bin目录中 不幸的是,以这种方式编译的用户控件不能很好地与VS designer配合使用,并且在设计时抛出异常,这使得处理托管它们的页面变得很麻烦 有没有更好的方法来实现

是否有建议的过程来创建可重用的ASP.NET程序集,这些程序集包含可以在不同解决方案中的项目之间共享的用户控件

我们目前有一组编译后步骤,在项目上运行
aspnet\u compiler.exe
,使用给定名称生成预编译程序集,然后使用
aspnet\u merge.exe
将每个单独的控件程序集合并为一个程序集,然后将其复制到项目的bin目录中

不幸的是,以这种方式编译的用户控件不能很好地与VS designer配合使用,并且在设计时抛出异常,这使得处理托管它们的页面变得很麻烦


有没有更好的方法来实现这一点?

这是唯一一种将它们放入便携式独立组件中的方法。听起来您已经知道这里引用的所有内容,但这是我所知道的讨论该技术的最好的文章:


我一直在做的就是要求ascx也存在。隐藏的代码可以在可移植的dll中,但仍然需要ascx。您可以通过将所有副本保存在一个位置并将虚拟目录映射到该位置来帮助管理副本。尽管这种方法技术含量较低,但它的优势在于,如果需要,每个应用程序都可以定制ascx的外观。它可以移动东西或改变样式等,只要这些更改不影响存在的服务器控件,后面的代码就不会更明智。

这是将它们放入这样一个可移植的独立程序集中的唯一方法。听起来您已经知道这里引用的所有内容,但这是我所知道的讨论该技术的最好的文章:

我一直在做的就是要求ascx也存在。隐藏的代码可以在可移植的dll中,但仍然需要ascx。您可以通过将所有副本保存在一个位置并将虚拟目录映射到该位置来帮助管理副本。尽管这种方法技术含量较低,但它的优势在于,如果需要,每个应用程序都可以定制ascx的外观。它可以移动东西或改变样式,等等,只要这些更改不影响存在的服务器控件,后面的代码就不会更明智