1

dynamic キーワードの理解に問題があります (最近まで .net 2 を使用していました)。

誰かがそれが何のためにあるのか説明してもらえますか? おそらく、単純だが実際の例を挙げて、どのような状況で を使用できるか、メリットとデメリットなどを説明してください。

4

2 に答える 2

2

同じことを行う(便利な)タイプセーフな方法がない場合にのみ使用するため、動的の適切な使用は実際にはほとんど発生しません。

例えば:

  1. ASP.NET MVC ViewBag (通常、カスタム ViewModel クラスより劣ります)
  2. C# から Javascript オブジェクトへのアクセス
  3. オブジェクトに特定のメソッドがあることがわかっているが、メソッドが静的に利用できないというまれなケースがあります。慣例により、すべてIDプロパティを持つデータベース エンティティを考えてください。

これらは有効な使用例ですが、それほど一般的ではありません。

于 2012-06-20T11:27:21.057 に答える
1

これは、実行時に特定の型を解決する方法です。

dynamic obj = new A();
obj.method();
于 2012-06-20T09:53:38.633 に答える