如何将 `System.Dynamic` 添加到我的项目中?

3

我刚接触C# 4,特别是dynamic关键字。我看了很多教程,想在VS 2012 Ultimate(MSDN)上亲自尝试。

不幸的是,我似乎找不到System.Dynamic,也无法添加引用。请问我可以在哪里找到System.Dynamic的DLL文件以及我可能做错了什么?

默认情况下,VS 2012已经使用Fx 4.5作为目标,同时添加了对System.Core的引用。

dynamic关键字非常常见,所以在Google搜索时会产生大量与其无关的结果。


3
我猜您创建了一个不支持 .NET 4 或更高版本的项目类型。您使用的是哪种项目类型,以及您的目标 .NET 版本是什么? - Jon Skeet
同意Jon的观点。请检查您的项目属性,确保您的目标是.NET 4.0或更高版本(而不是“客户端配置文件”选项...) - Eli Gassert
2个回答

9
  1. Make sure you are targeting the .NET Framework version 4 or later.

  2. Ensure your project references the System.Core assembly.

  3. You will find the types and functionality of System.Dynamic in that assembly. Add the following line to your code files:

    using System.Dynamic;
    

<code>System.Dynamic</code>在<code>System.Core.dll</code>中找到

附言:在C#中,为了让dynamic关键字正常工作,你还需要引用Microsoft.CSharp程序集。该程序集包含了dynamic所需的迟绑定功能。


谢谢。我的项目已经针对Framework 4.5,我在我的引用中有System.Core,但我找不到/添加System.Dynamic到我的引用中。我正在使用VS2012 ultimate MSDN版。 - s k
你不能将 System.Dynamic 添加为引用,因为它不是一个程序集,而是一个 命名空间。你需要引用的相关程序集是 System.Core。你需要在源代码文件开头加上 using System.Dynamic; 指令。 - stakx - no longer contributing

4

每当您想要搜索文档时,请添加msdn。例如:msdn system.dynamic

您将找到所有所需的文档。

在MSDN上的System.Dynamic

Namespace:  System.Dynamic
Assembly:  System.Core (in System.Core.dll)

这个DLL文件是System.Core。添加对它的引用将允许您使用名称空间System.Dynamic


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接