asp.net – Visual Studio 2008使用CodeBehind失去了对于ASCX的
我的.ASCX文件的顶部有以下定义:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="ArticleView.aspx.cs" Inherits="MyNameSpace.ArticleView" %> 在该控件中,我使用了<%=%>指代我在代码隐藏文件中声明的成员.如果我编译和部署控件,它可以正常工作.但是在Visual Studio中,我得到了很多设计时错误,“{some variable}在当前上下文中不存在”.而Intellisense也是一样的:它适用于UserControl的成员,但找不到我自己声明的成员.还有其他问题.一般来说,一切都指向ASP.articleview_ascx类生成的事实,不知何故不能继承自MyNameSpace.ArticleView类. 我发现如果我将CodeBehind属性切换到“CodeFile”: <%@ Control Language="C#" AutoEventWireup="true" CodeFile="ArticleView.aspx.cs" Inherits="MyNameSpace.ArticleView" %> 突然间Intellisense工程和所有的设计时错误消失.但我不想做运行时编译,或部署我的.ASCX.CS文件 – 所以我不能使用CodeFile. 我检查了简单的东西,就像确保我的CodeBehind文件名正确& Inherits类具有正确的命名空间等(并且因为在将属性更改为CodeFile之后它们正常工作,所以它们必须指向正确的位置….)但是我缺少什么?为什么不能处理CodeBehind属性? 谢谢, 更新:从下面的线程 – 基本的问题是,为什么不使用CodeFile?答:当我尝试在我的文件中使用CodeFile =部署时,部署后我收到以下堆栈跟踪(全部呈现):
(这是从/_layouts/Pages/ViewPage.aspx的请求.ViewPage是具有其他几个控件的页面,包括我原始示例中提到的ArticleView,它恰好是第一个失败的文件 – 如果我回到CodeBehind =在ViewPage中,然后包含ASCX与CodeFile =将以相同的方式失败.)这似乎是页面编译器抱怨,因为继承的codebehind类不能在任何加载的DLL中找到,所以它期望必须有一个CS文件做按需编译. 这里的问题是我不想部署CS文件,只是ASPX / ASCX.阅读了许多文章像this great one我知道各种新的部署模式,虽然我从来没有使用任何东西,但一个Web应用程序项目(从VS2003转换,我们是迟到的采纳者,2005年和WAP模型已经当我们从2003年开始的时候被添加.)在许多VS2005 / 8项目中,我从未遇到过CodeBehind =的问题,直到这个Intellisense问题出现了…虽然这不足以帮助我在这种情况下“部署到SharePoint,这引入了一个全新的复杂程度. 由于我以前没有使用过CodeFile,所以很有可能我在构建时想要在VS中设置一些选项,以强制预编译.像我今天一样,我只需要能够部署一套具有单一代码隐藏DLL的ASPX / ASCX.而今天,CodeBehind = …它只是有原来提到的Intellisense问题,这是真的我想要修复:) 会发布更多,因为我确定什么文件可能与问题有关… 解决方法
您是否检查了您的项目文件的Build Action?通过将ArticleView.ascx.designer.cs上的构建操作设置为无,我已经复制了您的问题.我也可以编译时使用CodeFile等,我99%确定这是你的问题.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- RegisterStartupScript无法在更新面板中工作,无法在asp.net
- Asp.NET控制文件上传的大小方法(超简单)
- asp.net – 如何在构建期间从Visual Studio调用aspnet_comp
- asp.net-mvc – enable-migrations错误:项目无法构建
- asp.net-mvc – 如何在asp.net mvc中检查模型验证错误?
- 在ASP.Net中编写自定义NTLM质询/响应
- asp.net – 与WCF和其他Web服务有什么区别?
- asp.net – 访问asp. VM外部的网络开发服务器
- ASP.NET和C#代码中的常量
- asp.net-mvc – 错误System.Web.HttpCompileException(0x80
- asp.net-mvc – 网络中的反思和表现
- asp.net-mvc-3 – MVC 4 – 如何关闭默认的Error
- ABP(ASP.NET Boilerplate Project)快速入门
- asp.net-mvc – 在ASP.NET MVC中的ReturnUrl
- asp.net – 动态创建和共享Google云端硬盘文件夹
- “ASP.NET”错误:拒绝访问远程服务器,因为不存在
- 使ASP.Net(C#)Web应用程序可脱机使用
- asp.net – 确定哪个UpdatePanel导致部分(异步)P
- asp.net – __doPostBack无法在回发时呈现
- asp.net – System.Reflection.Assembly.LoadFil