c# - VS 2014 CTP 无法识别 mscorlib 中的命名空间

标签 c# asp.net-core

我在我的 windows 8.1 虚拟机中安装了 vs 2014 ctp 3。并尝试创建一个 vnext 库。 当我在代码中添加 using 语句时:

using System.Diagnostics;  
using System.Threading.Tasks;

public Task Log(LogLevel level, IFormatProvider formatProvider, string message, params object[] args)  
{
    return Task.Run(() =>  
    {  
        if (IsLogLevelEnabled(level))  
        {  
            string category = Enum.GetName(typeof(LogLevel), level);  
            string info = string.Format(message, args);  
            Debugger.Log((int)level, category, info);  
        }  
    });  
}  

确实有“Debugger.Log”的代码智能,这可能意味着vs在mscorlib中找到了引用。如果我按“F12”,vs 将导航到 mscorlib.dll 中的调试器代码。但是,当我尝试构建项目时,它总是抛出:

名称“Debugger”不在当前上下文中。

我尝试在 project.json 中添加引用,但是,没有“System.Diagnostics”可供引用。如果我在 project.json 中写了“System.Diagnostics”:“”,项目的引用中会出现警告。

我该怎么办?提前谢谢你。

最佳答案

如果您具有 CTP3 模板提供的默认 project.json,则您定义了 k10 (CoreCLR) 目标框架,以及良好的旧 net451。 Debugger 类在 k10 目标框架中没有该方法(不要问我为什么),因此不会构建。从您的 project.json 中删除 k10 目标,它将构建,但现在只针对 net451。

虽然您的项目总是针对 net451 构建,但 VS14 并没有为您提供查看哪个目标框架失败的好方法。希望他们尽快添加此功能。

这个 project.json 构建:

{
    "dependencies": {
        "System.Diagnostics": "",
        "System.Threading": ""
    },

    "frameworks" : {
        "net451" : { 
            "dependencies": {
            }
        }
    }
}

这不会构建:

{
    "dependencies": {
        "System.Diagnostics": "",
        "System.Threading": ""
    },

    "frameworks" : {
        "net451" : { 
            "dependencies": {
            }
        },
        "k10" : { 
            "dependencies": {
                "System.Runtime": "4.0.20.0"
            }
        }
    }
}

关于c# - VS 2014 CTP 无法识别 mscorlib 中的命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25830380/

相关文章:

c# - 如果使用命名空间版本路由,如何在 ASP.Net Core API 中设置 RESTful 属性路由

c# - 如何将 ICommand 添加到 FrameworkElement 中的事件?

c# - 如何检查泛型是否有运算符? C#

c# - 使用 MVC/Razor 传递 C# 变量以与 Dygraph 一起使用

asp.net-core - Microsoft Application Insights 是否支持 MVC 6 (.Net 5)

visual-studio-2015 - Visual Studio 2015 (ASP.NET Core) 编译错误 Error : Microsoft. DotNet.Common.Targets - 已添加具有相同键的项目

c# - C#.NET 中有没有办法将字符串分解为固定长度的子字符串?

c# - 代码契约(Contract)静态分析器未检测到轻微的契约(Contract)违规

asp.net - 是否等效于ASP.NET Core MVC中的 “@section”?

asp.net - 使用 Polymer 构建 ASP.NET MVC