1

MVC3Contribをインストールしました。奇妙なことに、例では、MVC3Contribを使用して、かみそりのページにリンクをレンダリングできることが示されています。

@( Html.ActionLink<HomeController>(c => c.Index(), "Go home") )

これはどういうわけか私にはうまくいきません..私のコントローラーでは、私はできますが

return new RedirectToRoute<MyController>(c => c.Index()); 

大丈夫です..私が得るエラーはThe non generic link ActionLink cannot be used with type arguments

contribがインストールされていないかのようです。実際、インテリセンスでmvc futureactionlinkオプションも表示されません。

ここに画像の説明を入力してください

なぜそのように動作しているのか理解できません。ここで何か特別なことをする必要がありますか?

他に情報が必要な場合は、お問い合わせください。他に何を提供すべきかわかりません。


編集
ああところで、私はMVCエリアを使用しています。それが重要な場合は、約3つのエリアがあり、次にメインコントローラーなどがあります。

4

1 に答える 1

3

Microsoft.Web.Mvc名前空間が、これらの拡張メソッドが定義されているスコープ内にあることを確認してください。

ここに画像の説明を入力

<namespaces>または、ファイルのセクションに追加して、~/Views/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" />
      <add namespace="Microsoft.Web.Mvc" />
    </namespaces>
  </pages>
</system.web.webPages.razor>

コントローラーコードに追加したため、利用可能なクラスusing MvcContrib.ActionResults;を確認できると思います。RedirectToRouteResult<T>

于 2012-05-13T08:04:25.310 に答える