Web Site Project转换为Web Application Projects的问题

     在VS 2005中,如果你将一个Web项目 从Web Site Project转换为Web Application Projects,你将遇到这样的问题:所有aspx或者ascx文件中,如果引用了自定义控件,并且该自定义控件的代码在Web项目中,那么这些文件都无法成功转换,如果手动进行转换,将出现类似这样的错误提示“Generation of designer file failed: Unknown server tag 'DT:MASTERPAGE'”。 
     例如这样的自定义控件引用代码:
< %@ Register  TagPrefix ="DT"  Namespace ="Dottext.Web.UI.WebControls"   % >

注:Dottext.Web.UI.WebControls的代码在Web项目中。
为什么会出这样的问题?我的猜测是VS 2005在进行转换时,如果遇到自定义控件引用,会先在bin目录中加载相应的Assembly,可是原先的Web Site Project并不在bin中生成相应的Assembly,于是就出现上面的错误。
既然是这个原因,我想到的解决方法就是将这些自定义控件代码移到一个单独的项目中,编译成单独的dll文件,但奇怪的是需要将这些自定义控件的命名空间修改一下,然后在引用的地方将Namespace改为修改后的命名空间,才能成功转换。

你可能感兴趣的:(application)