asp.net intellisense内部脚本标记<;%

asp.net intellisense内部脚本标记<;%,asp.net,intellisense,Asp.net,Intellisense,在web表单中,我试图在脚本标记中获得intellisense,但在一些内联.net代码中 正在运行vstudio 2008/c#/.net 3.5/vista <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl1.ascx.cs" Inherits="controls.WebUserControl1" %> <%@ Register src="utils/popup.ascx

在web表单中,我试图在脚本标记中获得intellisense,但在一些内联.net代码中 正在运行vstudio 2008/c#/.net 3.5/vista

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl1.ascx.cs" 
Inherits="controls.WebUserControl1" %>
<%@ Register src="utils/popup.ascx" tagname="popup" tagprefix="uc1" %>
<div>
<%=popup1.ClientID;%>
<script language="javascript" type="text/javascript">
 var popId = <%="'" + popup1.ClientID%>';//no inetllisense here
 //this wont work either
 <%
 string popid = popup1.ClientID; 
 //no intellisense here either - thinks it is javascript
 %>
</script>
    <uc1:popup ID="popup1" runat="server" />    
</div>

var popId='//这里没有内特利森
//这也行不通
我在第一个角括号中得到了intellisense,但在脚本标记中intellisense得到了javascript intellisense,即没有意识到我实际上在做一些内联代码。
有没有一种语法可以用来解释这个问题???

我不知道这会为您解决这个问题,但问题的一部分是您在javascript字符串文本中。看看这样做是否有帮助:

<script language="javascript" type="text/javascript">
 var popId = <%="'" + adzPopup1.ClientID%>';
</script>

var popId=';

对于2003年来说,这似乎是一个

不知道2008年怎么样。。。但是有人对MVC内联代码也有同样的问题,解决方案是包括

<%@ Import Namespace="System.Web.Mvc.HtmlHelper" %>

在.aspx页面中。不幸的是,我不确定你所需要的等价物是什么


编辑:请阅读MSDN-,当使用字符串文字时,IntelliSense不可用-这可能是您的问题。

好主意,但恐怕不是这样。已编辑帖子以修复该问题/更清楚地演示什么不起作用