2011-02-05 9 views
8

私は、Razorエンジンとバージョン9.104.0.20のSyncFusion mvcコントロールスイートでASP.Net MVC 3を使用しています。このコントロールのドキュメントで System.Web.Mvc.HtmlHelper <dynamic>に 'Syncfusion'の定義が含まれていません。エラー

、私は私のマスターページに以下のようなコードの行を入れています:

@Html.Syncfusion().ScriptManager() 
Syncfusionのドキュメント毎

this Stack Overflow suggestion、私はに名前空間を追加してください行っています要素の下にある私のweb.configファイル。

<add namespace="Syncfusion.Mvc.Schedule"/> 

ソリューションを構築しますが、私はそれを実行したときに、私は次のエラーを取得する:

「System.Web.Mvc.HtmlHelper」「Syncfusion」と拡張子なしの方法 'の定義が含まれていません。 System.Web.Mvc.HtmlHelper 『」タイプの最初の引数を受け入れる』 Syncfusionを見つけることができる(あなたがusingディレクティブまたはアセンブリ参照が不足している?)

私はこの問題が関係しているとは思いませんSyncfusionではなく、自分のアセンブリを参照できない正確に。

どうすればよいですか?

答えて

18

要素に名前空間参照を追加することで問題は解決しました。

私はweb.configファイルの最上部に、次のconfigSection情報を追加する必要がありました:

<configSections> 
    <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"> 
     <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" /> 
     <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" /> 
    </sectionGroup> 
    </configSections> 

そして私は、その定義されたセクション内SyncFusion名前空間を追加する必要がありました:

<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="System.Collections" /> 
     <add namespace="Syncfusion.Mvc.Shared"/> 
     <add namespace="Syncfusion.Mvc.Schedule"/> 
     <add namespace="Syncfusion.Mvc.Tools"/> 
     </namespaces> 
    </pages> 
    </system.web.webPages.razor> 
+0

グレート答え!私はいくつかのトピックに出くわしましたが、ほとんどがconfigSectionsのリファレンスを追加していません –

+0

ありがとうございます。多くの人々がまだこの問題を抱えているのは野生です。 – YeahStu

+0

私はconfigのタイプからバージョン情報を削除することをお勧めします。ただ "タイプ、アセンブリ"を使用して、それは動作し続けます。これにより、mvc2,3,4,5、razor、entlib、およびassemblybindingのアップグレード時にメンテナンスが削除され、残りの部分はリダイレクトされます。私はこの修正をルート、エリア、ビューweb.configファイルに適用しなければならず、すべてのページがaftewardsを使い始めました。ありがとう –

関連する問題