加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc-4 – ASP.NET MVC 4 Razor视图无法识别Dropdownlist

发布时间:2020-12-16 03:22:18 所属栏目:asp.Net 来源:网络整理
导读:我正在尝试将一个下拉列表添加到强类型剃刀视图中. ASP.Net MVC 4.0,Razor View引擎版本2.0.0.0 @using System;@model SampleApp.Models.ServiceRequestModel@{ ViewBag.Title = "ServiceRequest";}@Html.DropDownListFor(m=m.CategoryID,Model.Categories)
我正在尝试将一个下拉列表添加到强类型剃刀视图中. ASP.Net MVC 4.0,Razor View引擎版本2.0.0.0

@using System;
@model SampleApp.Models.ServiceRequestModel

@{
  ViewBag.Title = "ServiceRequest";
}

@Html.DropDownListFor(m=>m.CategoryID,Model.Categories)

模型如下:

public class ServiceRequestModel
{
    public int ID { get; set; }
    public int CategoryID { get; set; }

    public SelectList Category { get; set; }
}

它始终在CSHTML文件中的intellisense中显示错误:

System.Web.WebPages.Html.HtmlHelper’ does not contain a definition for ‘DropDownListFor’ and no extension method ‘DropDownListFor’ accepting a first argument of type ‘System.Web.WebPages.Html.HtmlHelper’ could be found (are you missing a using directive or an assembly reference?)

它也给出了以下错误:

Error 3 The name ‘model’ does not exist in the current context

我检查了View文件夹中的web.config:

<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory,System.Web.Mvc,Version=3.0.0.0,Culture=neutral,PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
  <namespaces>
    <add namespace="System.Web.Mvc" />
    <add namespace="System.Web.Mvc.Ajax" />
    <add namespace="System.Web.Mvc.Html" />
    <add namespace="System.Web.Routing" />
  </namespaces>
</pages>

解决方法

下面的配置代码行必须更改为4.0.0.0

<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory,**Version=3.0.0.0**,PublicKeyToken=31BF3856AD364E35" />

变成

<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory,**Version=4.0.0.0**,PublicKeyToken=31BF3856AD364E35" />

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读