项目引用可移植类库在Visual Studio代码

时间:2015-05-04 20:07:29

标签: visual-studio-code omnisharp

我在Visual Studio 2015 RC中创建一个控制台应用程序,并使用nuget将Automapper 3.3.1添加到项目中。

如果我然后将以下代码段添加到我的项目中:

public class Class1
{
    public void Test()
    {
        AutoMapper.Mapper.Map<B>(new A());
    }
}

然后在Windows 10上的Visual Studio代码预览中打开相同的项目,然后我在Map函数上得到一个红色的波浪形。

错误消息显示:

  

“Object”类型在未引用的程序集中定义。您必须添加对程序集'mscorlib,Version = 2.0.5.0,Culture = neutral,PublicKeyToken = 7cec85d7bea7798e,Retargetable = Yes'的引用。

我的项目配置为使用.NET 4.52,并且在使用visual studio 2015 RC或从命令行使用MSBuild构建相同项目时绝对没有错误或警告。

Automapper是可移植类库,这似乎是触发问题的原因。 这是Visual Studio Code或Omnisharp的已知问题吗? 有没有办法抑制这些错误消息?

更新: 我现在已经使用VS Code 0.3进行了测试,但仍未修复。

为了使重现更简单,我还验证了ClassLibrary项目也只存在3个类的问题:如图所示的Class1和A类和B类,它们只是两个用于获取内容的虚拟类地图。 使用哪个版本的Visual Studio创建项目无关紧要。如果我使用VS 2013创建类库项目,则存在同样的问题。

1 个答案:

答案 0 :(得分:0)

也许您在 project.json 文件中的 dnx451 dnxcore50 中添加了引用。 我认为问题是Automapper不支持.NET Core 5.0,请参阅本文以获取有关.NET core 5.0和.NET framework 4.6的更多详细信息。 http://blogs.msdn.com/b/cesardelatorre/archive/2014/11/18/what-is-net-core-5-and-asp-net-5-within-net-2015-preview.aspx

使用可用库时,这可能是 .NET Core 5.0 中多环境的限制。如果您想使用,您应该自己编写或等待其他库更新,否则,请删除 project.json 中的 dnxcore50

快乐的编码!