asp.Net   发布时间:2022-04-07  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了asp.net – Visual Studio 2008使用CodeBehind失去了对于ASCX的智能感知(但是适用于CodeFile)?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我的.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.阅读了许多文章像@L_801_0@我知道各种新的部署模式,然我从来没有使用任何东西,但一个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%确定这是你的问题.

大佬总结

以上是大佬教程为你收集整理的asp.net – Visual Studio 2008使用CodeBehind失去了对于ASCX的智能感知(但是适用于CodeFile)?全部内容,希望文章能够帮你解决asp.net – Visual Studio 2008使用CodeBehind失去了对于ASCX的智能感知(但是适用于CodeFile)?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。