【问题标题】:Why is Intellisense missing in parts of an ASP.NET MVC view?为什么 ASP.NET MVC 视图的某些部分中缺少 Intellisense?
【发布时间】:2009-01-22 04:25:39
【问题描述】:

我做错了什么这是 ASP.NET MVC beta 的一个已知问题吗?

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" AutoEventWireup="true" CodeBehind="Index.aspx.cs" Inherits="MyProject.Web.Views.Searching.Index" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
<%Html.BeginForm("SearchForBusiness", "BusinessSearch", FormMethod.Post); %>
<select id="myid" name="myid">
<%foreach (MyProject.DomainModel.DomainModelCategory.Category cat in ViewData.Model) %>
<%{ %>
<option value="<%=cat.Id %>"><%=cat.CategoryName %></option>
<%} %>
</select>
<input type="submit" value="search" />
<%Html.EndForm(); %>
</asp:Content>

我遇到的麻烦(实际上只是一个烦恼)在 OPTION 行...cat.Id 没有启用智能感知,但 cat.CategoryName 确实...

我知道它仍然是 Beta,但我想知道是否有人知道它的状态...

谢谢!

【问题讨论】:

    标签: asp.net asp.net-mvc


    【解决方案1】:

    不幸的是,智能感知在 HTML 属性中不起作用。我不知道为什么,就是没有。

    当我真的需要 Intellisense 的属性值时,我先在属性之外编写服务器端代码,然后将其剪切粘贴。例如,我会这样写:

    <%=cat.Id %>    
    <option value=""><%=cat.CategoryName %></option>
    

    然后剪切粘贴到这个样子

    <option value="<%=cat.Id %>"><%=cat.CategoryName %></option>
    

    这是一种解决方法,但它确实有效。

    这通常是 ASP.Net 设计器的问题,因此它不是孤立于 MVC 的(它也发生在 WebForms 中)。现在这个问题更加突出,因为越来越多的人使用“”标签来构建 HTML(感谢 MVC)。

    【讨论】:

    • 真是太可惜了...工作一圈肯定不会很痛苦...但很不幸。
    • 是的,我听说这应该在 VS 2008 SP1 中修复,但我很确定我仍然会遇到它。一定要升级到 SP1(如果你还没有升级),因为那可能解决你的问题
    • 谢谢你,很高兴我检查了这个,让我很困惑!
    猜你喜欢
    • 2015-04-20
    • 1970-01-01
    • 1970-01-01
    • 2012-01-19
    • 2017-09-06
    • 2012-05-06
    • 2015-09-22
    • 2017-04-02
    • 2015-11-14
    相关资源
    最近更新 更多