68

dynamicVisual Studioのイミディエイトウィンドウで使用すると、エラーが発生します

事前定義されたタイプ'Microsoft.CSharp.RuntimeBinder.Binder'が定義またはインポートされていません

どうすれば修正できますか?

4

4 に答える 4

120

選択したプロジェクトまたはスタートアッププロジェクトにMicrosoft.CSharpライブラリへの参照を追加する必要があります。また、プロジェクトは.NETFramework4以降を参照する必要があります。

イミディエイトウィンドウコンテキストに関するMSDN:

設計時の式の評価のコンテキストを確立するとき、VisualStudioはソリューションエクスプローラーで現在選択されているプロジェクトを参照します。ソリューションエクスプローラーでプロジェクトが選択されていない場合、VisualStudioはスタートアッププロジェクトに対して関数を評価しようとします。現在のコンテキストで関数を評価できない場合は、エラーメッセージが表示されます。

于 2012-11-26T15:46:48.727 に答える
21

2つのことが重要です。以下を確認してください。

  1. プロジェクトのプロパティが.NETFramework4以降を参照していること(そうでない場合は変更します。プロジェクトを右クリックし、[プロパティ...]メニュー項目を選択して、ターゲットフレームワークとして[.NET Framework4]を選択します。 " (以上))
  2. 参照として「Microsoft.CSharp」アセンブリを追加したこと(プロジェクトを再ロードする必要があるステップ1は、実行する前に実行する必要があることに注意してください)。

その後、タイプを使用できますdynamic。イミディエイトウィンドウのスコープで使用できるようにするには、選択したプロジェクトまたはスタートアッププロジェクトに参照を追加する必要があります。


注: ここで、C#のダイナミクス、その仕組み、およびC#で何ができるかについてのすばらしい記事を見つけました。

于 2014-02-11T16:29:46.520 に答える
8
  1. プロジェクト->参照の追加に移動します。
  2. サイドバーとフレームワークからアセンブリを選択します
  3. Microsoft.CSharpを確認してください

ハッピーコーディング!

于 2015-04-10T06:13:36.180 に答える