为什么ASP.NET自动生成的.designer代码的类型不正确?
发布时间:2020-12-16 06:35:31 所属栏目:asp.Net 来源:网络整理
导读:我正在努力攻击DotNetNuke Events模块.我已经设置了源代码,并且无需修改即可构建A-OK.但是,当我更改EventMonth.ascx文件时,Visual Studio会更新与之关联的.designer.vb文件…并声明两个类型错误的对象!它看起来像这样: Protected WithEvents EventIcons As
我正在努力攻击DotNetNuke Events模块.我已经设置了源代码,并且无需修改即可构建A-OK.但是,当我更改EventMonth.ascx文件时,Visual Studio会更新与之关联的.designer.vb文件…并声明两个类型错误的对象!它看起来像这样:
Protected WithEvents EventIcons As Global.System.Web.UI.UserControl 应该是这样的: Protected WithEvents EventIcons As Global.DotNetNuke.Modules.Events.EventIcons 显然,这不会起作用……编译器(正确地)抛出了一个错误,其中在代码中使用了EventIcons.是什么导致这个?我可以轻松地手动修复它,但当然它稍后会再次破坏.我不认为控件的ID与类名相同,因为同一控件的另一个实例会发生同样的事情,但名称不同. 更新:好的……我相信这种情况正在发生,因为在设计时无法找到引用的用户控件.但它显然在运行时工作: <%@ Register TagPrefix="evt" TagName="Icons" Src="~/DesktopModules/Events/EventIcons.ascx" %> 这具有逻辑意义……但我想问题就变成“在设计时解决了什么?”我想我可以将其更改为“EventIcons.ascx”,它将生成代码OK.但它会在运行时运行吗? :| 解决方法
因为项目不是从应用程序根目录启动,所以在必须正确解析?之前,必须告诉项目实际应用程序根目录.进入项目属性的Web选项卡,并确保在“Servers”标题下选择“Use Local IIS Web server”.将项目URL设置为特定项目的URL(即
http://localhost/DotNetNuke_2/DesktopModules/Events).然后,检查覆盖应用程序根URL并将其设置为应用程序的根URL(即
http://localhost/DotNetNuke_2).这将允许Web应用程序项目知道如何查找这些控件.
Src属性是相对于控件的,因此它应该可以正常工作,只需将其设置为“EventIcons.ascx”,而不是从应用程序的根目录指定它. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 如何从ActionFilter访问ModelState?
- asp.net-core – 如何在asp.net 5类库nuget包中包含视图
- 如何找到ASP.NET中的哪个对象无法序列化?
- asp.net-mvc-4 – NReco.PdfGenerator服务器上的管道已经结
- asp.net防sql注入
- asp.net mvc.显示数据库中的html字符串
- 以编程方式访问ASP.NET 2.0中继器中的数据
- One to One 的数据库模型设计与NHibernate配置
- asp.net-mvc – 如何使Controller成为ASP.NET MVC中每个应用
- asp.net-mvc – 在ASP.NET MVC应用程序中使用Entity Framew