繁体   English   中英

从ASP.NET 4网站项目迁移到Visual Studio 2010中的Web应用程序项目是否导致所有控件引发错误?

[英]Migrating from ASP.NET 4 website project to web application project in Visual Studio 2010 Causing all controls to throw error?

我最近将VS2010网站项目从.NET 3.5更新到了4.0。 网站项目中的一切工作正常。 今天,我决定将网站迁移到Web应用程序项目,因为我了解到这是在.NET中工作的最佳方法。 我将所有类文件拆分到一个单独的类库中,并将所有其他内容复制到新项目中。 然后,我更新了所有引用和web.config。

当我建立类库时,一切都很好。

当我尝试构建/调试Web应用程序项目时,就会发生问题。 它的行为就像所有控件都丢失了一样,并且还引发了一些关于我在母版页中具有的公共属性的编译错误。

控制错误:

“名称'INSERT CONTROL NAME HERE'在当前上下文中不存在”

母版页错误:

'System.Web.UI.MasterPage'不包含定义。...

它为我整个解决方案中的每个控件和母版页属性提供了这些错误。

我注意到,当我向该项目添加新的web.form时,除了.aspx和.aspx.cs文件之外,它还添加了filename.aspx.designer.cs文件。 我的现有文件没有这些额外的文件,因为它们是在其他.NET版本中创建的。

有人对如何克服这些问题有想法吗?

更新:似乎我缺少需要右键单击新应用程序文件夹并选择“转换为Web应用程序”的步骤。 我只是这样做了,似乎要好一些...

现在,它使单引号内的立即数令人窒息:

<div class='<asp:Literal ID="CssClassLiteral" runat="server"></asp:Literal>'>

进行转换时,它没有看到此文字...上面的有效代码还是我应该以其他方式实现该功能?

是的-网站项目和Visual Studio中的Web应用程序项目之间的主要区别之一是Web应用程序项目为每个页面/用户控件定义了designer.cs文件。

因此,假设您在一个网站中的网页后面有一个代码:

Default.aspx
Default.aspx.cs

在Web应用程序中,现在需要设计器:

Default.aspx
Default.aspx.designer.cs
Default.aspx.cs

设计器文件是自动生成的,但是您可能需要“触摸”每个页面才能生成。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM