6

強く型付けされたかみそりビューにドロップダウンリストを追加しようとしています。ASP.Net MVC 4.0、RazorViewエンジンバージョン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ファイルのインテリセンスで常にエラーが表示されます。

System.Web.WebPages.Html.HtmlHelper'には、' DropDownListFor'の定義が含まれておらず、タイプ'System.Web.WebPages.Html.HtmlHelper'の最初の引数を受け入れる拡張メソッド'DropDownListFor'が見つかりませんでした(欠落していますか? usingディレクティブまたはアセンブリ参照?)

また、次のエラーが発生します。

エラー3「モデル」という名前は現在のコンテキストに存在しません

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

3 に答える 3

1

以下の構成コードの行を 4.0.0.0 に変更する必要がありました

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

に変更

<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, **Version=4.0.0.0**, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
于 2012-11-26T05:49:27.933 に答える
1

このエラーに 1 日以上費やしたところ、ドロップダウン リストの VM データ ソースとのデータ型の競合が発生しました (つまり、IEnumerable 型のリストではありませんでした)。何らかの理由で、VS2012 は、エラーが Intellipath に表示されたにもかかわらず、名前空間にあると考えました。

于 2013-11-27T03:29:13.727 に答える
0

私はこの正確な問題を抱えていました(html.displayForのみ)。

どのように始まったのかわかりませんが、以下を置き換えることで解決しました:

<appSettings>
    <add key="webpages:Enabled" value="false" />
</appSettings>

<appSettings>
    <add key="webpages:Version" value="3.0.0.0" />
</appSettings>

View フォルダーの Web.config ファイル内。

ここで私の解決策を見つけました

于 2015-11-30T01:18:48.220 に答える