Nancy 对 .NETCoreApp 的支持
Nancy support for .NETCoreApp
正在尝试将 Nancy 包添加到新项目中。在 project.json(依赖项部分)"Nancy" 下的红色波浪线:“1.4.3”。鼠标悬停显示与支持 .NETCoreApp
有关的错误
Nancy 在 github 上的 master 分支已经在 .net 上运行 core.We 正在从 Rake 转移到 Cake 的构建脚本,希望在本周完成,以便 .netcore 支持可以推到 Nuget.So 是的,稍等一下。
此示例原创于 Stack Overflow 文档:
在 *nix 系统上使用 Dotnet 核心 v1.1、Kestrel 和 Visual Studio 代码设置 Nancyfx
先决条件步骤:
- 为您的平台获取 dotnet 核心:
Dotnet Core
- 按照说明进行操作并确保 dotnet 核心正常工作
- 为您的平台获取 Visual Studio 代码:
VS Code
- 启动 Visual Studio 代码(VS 代码)并安装 C# 扩展然后重新加载
创建自托管的 NancyFx 项目:
-
使用正确的项目目录结构设置项目。
打开 Bash 终端并输入:
mkdir nancydotnetcore
cd nancydotnetcore
mkdir src
mkdir test
touch global.json
-
打开 global.json 并输入以下代码:
{
"projects":["src", "test"]
}
-
在 Bash 终端中:
cd src
mkdir NancyProject1
dotnet new
在 VS 代码中打开文件夹 NancyProject1
您将收到一条警告:"Required assets to build and debug are missing from 'nancyproject1'."
单击 "Yes"
您还将看到:'project.json' 中存在未解决的依赖项。请执行恢复命令以继续。
点击 "Close" 我们很快就会开始。
-
添加依赖项,打开 "project.json" 并用以下内容覆盖它:
{
"version": "1.0.0-*",
"buildOptions": {
"debugType": "portable",
"emitEntryPoint": true
},
"frameworks": {
"netcoreapp1.1": {
"dependencies": {
"Microsoft.AspNetCore.Hosting": "1.1.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
"Microsoft.AspNetCore.Owin": "1.1.0",
"Nancy": "2.0.0-barneyrubble",
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.1.0"
}
}
}
}
}
VS code 会要求恢复点击 "Restore"
-
在 VSCode 项目中创建文件夹 "Modules"
在 Modules 文件夹中添加一个名为 "IndexModule.cs" 的文件,然后复制并保存以下内容:
namespace NancyProject1
{
using Nancy;
public class IndexModule : NancyModule
{
public IndexModule()
{
Get("/", _ => "Hello dotnet core world!");
}
}
}
-
在项目的根目录中创建一个名为 "Startup.cs" 的文件并复制并粘贴以下内容:
namespace NancyProject1
{
using Microsoft.AspNetCore.Builder;
using Nancy.Owin;
public class Startup
{
public void Configure(IApplicationBuilder app)
{
app.UseOwin(x => x.UseNancy());
}
}
}
-
打开文件 "Program.cs" 并用以下内容覆盖内容并保存:
namespace NancyProject1
{
using System.IO;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
public class Program
{
public static void Main(string[] args)
{
var host = new WebHostBuilder()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseKestrel()
.UseStartup()
.Build();
host.Run();
}
}
}
-
完毕!现在让 运行 这样做并查看输出。
单击 VS Code 中的调试符号,然后单击 运行 按钮。它应该编译并启动项目。
打开浏览器@http://localhost:5000
-
拍拍自己的背,享受吧!
仍然是预发布版本,但在撰写本文时与 .net 核心一起工作,视图引擎在核心上非常有限。
安装包 Nancy -版本 2.0.0-barneyrubble -Pre
正在尝试将 Nancy 包添加到新项目中。在 project.json(依赖项部分)"Nancy" 下的红色波浪线:“1.4.3”。鼠标悬停显示与支持 .NETCoreApp
有关的错误Nancy 在 github 上的 master 分支已经在 .net 上运行 core.We 正在从 Rake 转移到 Cake 的构建脚本,希望在本周完成,以便 .netcore 支持可以推到 Nuget.So 是的,稍等一下。
此示例原创于 Stack Overflow 文档:
在 *nix 系统上使用 Dotnet 核心 v1.1、Kestrel 和 Visual Studio 代码设置 Nancyfx
先决条件步骤:
- 为您的平台获取 dotnet 核心: Dotnet Core
- 按照说明进行操作并确保 dotnet 核心正常工作
- 为您的平台获取 Visual Studio 代码: VS Code
- 启动 Visual Studio 代码(VS 代码)并安装 C# 扩展然后重新加载
创建自托管的 NancyFx 项目:
-
使用正确的项目目录结构设置项目。
打开 Bash 终端并输入:
mkdir nancydotnetcore cd nancydotnetcore mkdir src mkdir test touch global.json
-
打开 global.json 并输入以下代码:
{ "projects":["src", "test"] }
-
在 Bash 终端中:
cd src mkdir NancyProject1 dotnet new
在 VS 代码中打开文件夹 NancyProject1 您将收到一条警告:"Required assets to build and debug are missing from 'nancyproject1'." 单击 "Yes" 您还将看到:'project.json' 中存在未解决的依赖项。请执行恢复命令以继续。 点击 "Close" 我们很快就会开始。 -
添加依赖项,打开 "project.json" 并用以下内容覆盖它:
{ "version": "1.0.0-*", "buildOptions": { "debugType": "portable", "emitEntryPoint": true }, "frameworks": { "netcoreapp1.1": { "dependencies": { "Microsoft.AspNetCore.Hosting": "1.1.0", "Microsoft.AspNetCore.Server.Kestrel": "1.1.0", "Microsoft.AspNetCore.Owin": "1.1.0", "Nancy": "2.0.0-barneyrubble", "Microsoft.NETCore.App": { "type": "platform", "version": "1.1.0" } } } } }
VS code 会要求恢复点击 "Restore" -
在 VSCode 项目中创建文件夹 "Modules"
在 Modules 文件夹中添加一个名为 "IndexModule.cs" 的文件,然后复制并保存以下内容:
namespace NancyProject1 { using Nancy; public class IndexModule : NancyModule { public IndexModule() { Get("/", _ => "Hello dotnet core world!"); } } }
-
在项目的根目录中创建一个名为 "Startup.cs" 的文件并复制并粘贴以下内容:
namespace NancyProject1 { using Microsoft.AspNetCore.Builder; using Nancy.Owin; public class Startup { public void Configure(IApplicationBuilder app) { app.UseOwin(x => x.UseNancy()); } } }
-
打开文件 "Program.cs" 并用以下内容覆盖内容并保存:
namespace NancyProject1 { using System.IO; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; public class Program { public static void Main(string[] args) { var host = new WebHostBuilder() .UseContentRoot(Directory.GetCurrentDirectory()) .UseKestrel() .UseStartup() .Build(); host.Run(); } } }
- 完毕!现在让 运行 这样做并查看输出。 单击 VS Code 中的调试符号,然后单击 运行 按钮。它应该编译并启动项目。 打开浏览器@http://localhost:5000
- 拍拍自己的背,享受吧!
仍然是预发布版本,但在撰写本文时与 .net 核心一起工作,视图引擎在核心上非常有限。
安装包 Nancy -版本 2.0.0-barneyrubble -Pre