C# Designer.cs在将新控件添加到.aspx时不更新
我已经在我的aspx文件中添加了一个新控件,并注意到新控件不仅没有添加到设计器文件中,而且还缺少团队其他成员添加的许多其他控件。我尝试删除designer.cs文件并使用“转换为Web应用程序”,但没有成功。我尝试过的其他一些方法是将aspx从项目、构建中排除,然后重新包括,但没有成功。我还将设计器中缺少的控件手动输入到设计器中。当我在do-so之后运行时,会出现一个错误,说明控件没有定义,即使它实际上是定义的,并且我应该检查是否缺少一个指令 我添加的第一个控件是从一个类似的控件复制和粘贴,并进行了必要的更改。但是,我也尝试过手动创建具有相同结果的控件C# Designer.cs在将新控件添加到.aspx时不更新,c#,asp.net,designer,C#,Asp.net,Designer,我已经在我的aspx文件中添加了一个新控件,并注意到新控件不仅没有添加到设计器文件中,而且还缺少团队其他成员添加的许多其他控件。我尝试删除designer.cs文件并使用“转换为Web应用程序”,但没有成功。我尝试过的其他一些方法是将aspx从项目、构建中排除,然后重新包括,但没有成功。我还将设计器中缺少的控件手动输入到设计器中。当我在do-so之后运行时,会出现一个错误,说明控件没有定义,即使它实际上是定义的,并且我应该检查是否缺少一个指令 我添加的第一个控件是从一个类似的控件复制和粘贴,并进
有什么想法吗?关闭Visual Studio,然后从
C:\Windows\Microsoft.NET\Framework\Your\uu.NET\u Version\ProjectName
删除文件夹ProjectName
,然后重新启动Visual Studio。不久前,我遇到了一个类似的问题,这些行动解决了这个问题
如果使用IIS,您可能需要停止服务器/站点才能删除临时文件。一个简单/愚蠢的错误也会导致类似症状,即复制aspx和aspx.cs文件并重命名它们,但忽略更新文件内的引用
我在试图查找临时asp.net目录时遇到了这个问题,但清除它没有帮助。然后我意识到,在复制文件以创建页面的新修改版本后,我没有更新
CodeFile=“Page.ascx.cs”
。然后我试图添加一个控件并在PageModified.ascx.cs
中引用它,但一直说它不存在。我在工作中遇到了这个问题
最可靠的是重新生成.designer.cs文件,解决方案如下:
- 通过解决方案资源管理器找到损坏的aspx.designer.cs文件
- 仅从项目中删除designer.cs文件
- 右键单击主aspx文件并选择“转换为Web应用程序”
如果将引用的用户控件移动到不同的命名空间,问题就会消失。有时html中可能会出现错误,例如两个控件具有相同的Id。还要小心使用div和span标记。这会阻止设计器更新。对于所有这些,请检查错误列表中的警告并修复它们。您可以开始了。这是解决了我的问题。我在VS2012中做到了这一点:
就是这样。我只能在代码隐藏文件中手动添加控件声明来解决问题。每次我尝试重新生成design.cs文件时,VS 2013都会写入相同的行,而不会丢失控件 声明需要添加到代码隐藏中,而不是design.cs中,因为每次更改.aspx时它都会被删除 只需像对待任何其他变量一样添加声明,如下所示:
要在VS 2013中替换设计器文件,请执行以下操作:
试试这个 1.-将
codebhind=“Name.aspx.cs”
更改为CodeFile=“Name.aspx.cs”
2.建造
3.-将
CodeFile=“Name.aspx.cs”
更改为codebhind=“Name.aspx.cs”
只是为了添加到可能的解决方案列表中:我的标记文件中的这些行虽然看似有效,但显然导致与设计器文件断开连接:
<%: Styles.Render("/my-file.css") %>
<%: Scripts.Render("/my-file.js") %>
我只是简单地将它们注释掉,保存,然后设计的文件开始正常工作。然后我取消了这两行的注释,保存了,并且能够在页面中添加新控件而没有问题。我发现这很奇怪,我仍然不清楚问题的最初原因是什么。我只能推测这是Visual Studio的错误
重点是,可能存在导致问题的完全有效的代码,在这种情况下,可能的解决方案是在标记文件中对HTML部分进行注释,直到设计器文件自行解决,然后您可以撤消所有注释并恢复正常工作。对于我来说,解决方案是: 将页面置于“设计”视图中,然后右键单击/刷新。它将同步 使用designer.cs打开控件。确保designer.cs已关闭 在这样做之前
在我的例子中,我必须添加
runat=“server”
属性,然后重新生成解决方案。缺少的元素会自动添加到生成的aspx.designer.cs
中,并在代码中使用
<button runat="server" id="Button01" type="button" class="Button" onclick="location.href='http://http://www.example.com/';">
<asp:Label runat="server" Text='<%# GetText("Button01")%>'></asp:Label>
</button>
由于Telerik web控件中的错误,我的designer.vb代码文件没有更新-我在MasterTableView的DataKeyNames属性中有一个不正确的值。aspx编辑器在设计时没有检测到这个值,因为它只是一个字符串值,但它导致designer.vb文件的自动生成失败。我尝试了所有的方法上述内容将于2019年发布
我删除了设计器文件,单击了项目菜单/Convert to Web Application,它重新生成了设计器文件,但是,它仍然无法自动重新生成
工作原理-将文件从项目中排除,然后重新包含
文件现在保持自动重新生成。用于从中使用Visual Studio 2019创建代码隐藏C#文件
<button runat="server" id="Button01" type="button" class="Button" onclick="location.href='http://http://www.example.com/';">
<asp:Label runat="server" Text='<%# GetText("Button01")%>'></asp:Label>
</button>