如何 运行 .Net Core dll?

How to run a .Net Core dll?

我在 Mac 上使用 dnu build 命令构建了我的控制台应用程序。输出为 MyApp.dll.

因为它不是 MyApp.exe,我如何在 windows 甚至 Mac 上执行它?

密码是:

using System;

class Program
{
    public static void Main()
    {
        Console.WriteLine("Hello from Mac");        
    }
}

将此添加到您的 project.json 文件中:

 "compilationOptions": {
        "emitEntryPoint": true
 },

它将在Windows(在bin/Debug)或其他平台上生成可执行文件MyApp.exe。

编辑:2017 年 1 月 30 日

已经不够了。您现在可以按照 here.

所述在依赖于框架的部署和自包含部署之间进行选择。

缩写形式:

依赖于框架的部署(.net 核心存在于目标系统上)

  • 运行 带有 dotnet 命令行实用程序的 dll dotnet MyApp.dll

自包含部署(包括.net core运行时在内的所有组件都包含在应用程序中)

  • 从 project.json
  • 中删除 "type": "platform"
  • 将运行时部分添加到 project.json
  • 使用目标操作系统构建 dotnet build -r win7-x64
  • 运行 生成 MyApp.exe

project.json 文件:

{
    "version": "1.0.0-*",
    "buildOptions": {
        "emitEntryPoint": true
    }, 
    "frameworks": {
        "netcoreapp1.0": {
            "dependencies": {
                "Microsoft.NETCore.App": {
                    "version": "1.0.1"
                }
            }
        }
    },
    "imports": "dnxcore50",
    "runtimes": { "win7-x64": {} }
}

您可以使用 dotnet publish 为控制台应用程序生成 .exe 输出。

更多详情:Publish .NET Core apps with the CLI