我的当前 Web 应用在本地和线上都运行良好,我目前正在尝试使用 Visual Studio 选项“添加 Web 部署项目”编译我的 Web 应用程序,以便所有的代码都被编译成 DLL 文件。 有一个特定的构建错误我无法摆脱: 错误 50:名称空间“ASP”中不存在类型或命名空间名称“usercontrols_calendarcell_ascx”(是否缺少程序集引用?)c:\page.ascx.cs 30 1 test_deploy 实际的代码行如下: protected ASP.usercontrols_calendarcell_ascx[] calendarCells;
问题出在ASP命名空间是一个“伪”命名空间,在编译时无法引用。 我找到的解决方案是将当前命名空间实际集成到用户控件定义中。我根据您的命名约定调整了元素名称,但我不知道您使用的命名空间。因此,我只将其命名为“Project.NameSpace”。 1. 在calendarcell.ascx文件中: <% @ Control Language="C#" AutoEventWireup="true" Codefile="calendarcell.ascx.cs" Inherits="Project.NameSpace.usercontrols_calendarcell" %> 2. 在calendarcell.ascx.cs文件中: namespace Project.NameSpace { public partial class usercontrols_calendarcell : System.Web.UI.UserControl { } } 3. 在page.ascx.cs文件中: using Project.NameSpace; 希望这有所帮助。在我的情况下,它完美地解决了问题。