7

每隔几天 VS2008 就决定生我的气,并且无法生成设计器文件,声称它找不到指定的文件并且它缺少程序集。这是场景:

aspx 页面引用了一个自定义用户控件(继承了 UserControl),该控件引用了后端中的另一个程序集。在代码中的其他地方还有许多其他对这个“缺失”程序集的引用,它们不会引发错误。重建,将源更新为干净的副本,对着电脑大喊大叫,打孔等都无法正常工作。

有什么建议么?这很烦人。

4

4 回答 4

9

我们之前遇到过类似的问题,不幸的是我不记得确切的解决方案。

如果您使用“网站”项目(无项目文件),则首先检查您的页面和控件是否都在 aspx/ascx 文件的第一行中设置了 ClassName 属性,并且您指定了类的全名包括命名空间。

例子:

<@Control Language="VB" AutoEventWireup="false" ClassName="YourProjectName.YourUserControl" Inherits="YourProjectName.YourUserControl" CodeFile="YourUserControl.ascx.vb" %>

很多时候不设置所有这些仍然可以工作,但你会在 VS 中得到奇怪的编译器错误和行为。

如果您使用网站应用程序项目,请尝试手动删除设计器文件,然后右键单击您的项目并选择“从 Web 应用程序转换”。这应该会为您重新创建设计器文件。

我唯一的其他建议是从头开始重新创建页面和/或用户控件。

于 2008-08-28T17:27:42.517 回答
2

杰瑞德,你成功了。使用“转换为 Web 应用程序”手动生成设计器文件解决了我的问题。我很高兴你在我开始重新安装之前发布了这个。谢谢。

于 2008-08-28T17:51:35.517 回答
0

您可以尝试将新文件的模板与其设计器等效文件一起归档。如果 VS 咳嗽,那么您可以对已有的文件执行“添加现有”选项。

但是,这似乎是您安装 VS2008 的问题,因此您可以尝试重新安装它。

于 2008-08-28T17:03:13.607 回答
0

我发现使用自定义控件时,您需要添加对 .dll 的引用。从网站迁移到网络应用程序后,这为我修复了它。

于 2010-01-07T22:09:28.703 回答