我在Visual Studio 2017中创建了一个NetCoreApp(v1.1).当我编译它时,我得到一个DLL,而不是生成的项目的预期EXE.我确实检查了csproj文件并确认输出类型设置为exe,但没有骰子.
任何想法为什么VS2017仍在生成DLL?我确定它在某个地方快速设置,我忘记了...它也是凌晨1点.:)
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp1.1</TargetFramework>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Core.EF.SqlServer\Core.EF.SqlServer.csproj" />
</ItemGroup>
</Project>
Run Code Online (Sandbox Code Playgroud) 我有一个简单的测试项目,尝试使用Microsoft Logging Extensions包测试NetCore 2.0.
我遇到的问题是,当我第一次运行我的应用程序时,它会按预期记录信息性消息.我遇到的奇怪行为是后续运行根本不会产生任何消息.
我的项目面向Net Core 2.0框架,并安装了以下NuGet包:
下面是我的示例代码我正在尝试使用以下日志:
using System;
namespace LoggingNetCore2
{
using Microsoft.Extensions.Logging;
class Program
{
static void Main(string[] args)
{
var loggerFactory = new LoggerFactory();
loggerFactory.AddConsole();
loggerFactory.AddDebug(); // <-- why is this needed for console logging?
var logger = loggerFactory.CreateLogger(typeof(Program));
logger.LogInformation("Hello, World!");
logger.LogTrace("trace");
logger.LogDebug("debug");
logger.LogWarning("warning");
logger.LogCritical("critical");
logger.LogError("errrrr");
//using (logger.BeginScope("MyMessages"))
//{
// logger.LogInformation("Beginning Operation...");
// logger.LogInformation("Doing something cool... please wait.");
// logger.LogInformation("Completed successfully.");
//}
}
}
}
Run Code Online (Sandbox Code Playgroud)
当我运行上面的操作时,我在控制台窗口上没有输出.任何可能会发生什么的想法都会浮现在脑海中?
我试过的事情: