动态关键字示例

时间:2012-06-20 09:50:19

标签: .net c#-4.0

我无法理解动态关键字(最近使用.net 2)。

有人可以解释它的用途吗?也许给出一个简单但真实的例子,并解释在什么情况下可以使用,利弊等等。

2 个答案:

答案 0 :(得分:2)

在实践中很少正确使用动态,因为只有在没有(方便)类型安全的方法时才使用它。

例如:

  1. ASP.NET MVC ViewBag(通常不如自定义ViewModel类)
  2. 从C#
  3. 访问Javascript对象
  4. 在某些极少数情况下,您知道对象具有某种方法,但该方法不可用于静态。想想按惯例都具有ID属性的数据库实体
  5. 这些是有效的用例,但它们并不常见。

答案 1 :(得分:1)

这是一种在运行时解析某些类型的方法。

dynamic obj = new A();
obj.method();