问题标签 [dotnet-cli]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-core - 使用 dotnet CLI 构建和运行 ASP.NET Core WebAPI
我正在尝试使用 dotnet CLI 编译和运行干净的 ASP.NET Core WebAPI,同时使用Windows和OS X。
我试过的..
- 使用(使用 generator-aspnet 或 Visual Studio 的 Yeoman - 我都尝试了)创建了新的 ASP.NET 5 WebAPI
dotnet restore,dotnet build(构建失败...)
Project WebApiCoreT (DNXCore,Version=v5.0) 将被编译,因为它的一些输入比其最旧的输出更新。为 DNXCore 编译 WebApiCoreT,Version=v5.0 C:\Data\Code\WebApiCore\WebApiCoreT\project.json(9,29): error NU1002: The dependency Microsoft.CodeAnalysis.Common 1.1.0-rc1-20151109-01 确实不支持框架 DNXCore,Version=v5.0。C:\Data\Code\WebApiCore\WebApiCoreT\project.json(9,29): error NU1002: The dependency Microsoft.CodeAnalysis.CSharp 1.1.0-rc1-20151109-01 does not support framework DNXCore,Version=v5.0 .
编译失败。0 警告 2 错误
经过时间 00:00:01.2486558
dnu restore、dotnet build、dotnet run(构建成功,运行时失败...)
Project WebApiCoreT (DNXCore,Version=v5.0) 将被编译,因为它的一些输入比其最旧的输出更新。为 DNXCore 编译 WebApiCoreT,版本=v5.0
编译成功。0 警告 0 错误
经过时间 00:00:01.2756028
无法解析 coreclr 路径
据我了解,dnu、dnx、dnvm 工具链已被弃用,最终将消失,但如何使用 dotnet CLI 创建 WebAPI?
无论如何,除了默认的“Hello world!”之外,是否可以使用 dotnet CLI 构建任何东西?控制台应用程序?
wcf - 如何使 ASP.NET Core RC2 应用程序构建在具有较旧第三方依赖项的 net46 框架上
我有一个闪亮的新 Asp.Net Core MVC 应用程序,它引用了一些旧net45
库。
在完整的 net45 框架上与 Asp.Net Core RC1 一起工作正常。从 Asp.NET Core rc1 迁移到 rc2 我遇到了一个我不知道如何解决的障碍。
该应用程序是一个使用 EF6、Autofac、Kendo.MVC 的 ASP.NET Core 应用程序,它需要在完整的 .Net 4.6 框架上运行,因为存在使用 WCF 的参考库。
在从 rc1 迁移到 rc2 时,我首先将 NuGet.config 提要更新为指向,https://www.myget.org/F/aspnetcirelease/api/v3/index.json
然后对project.json
- 从最顶部的节点中删除“版本”
- 将以下属性添加到 complationOptions 对象:“debugType”:“portable”
- 依赖项:更改
AspNet
为AspNetCore
- 依赖项:将 all 更改
rc1-final
为*
- 检查
MVC
并MVC Tag Helpers
已重命名6.0
为1.0
- 删除所有依赖项
Application Insights
- 删除所有依赖项
Microsoft.AspNet.Tooling.Razor
- 将依赖项添加到
"Microsoft.NETCore.App": { "type": "platform", "version": "1.0.0-*" }
- 添加一个新的内容对象:
"content": [ "wwwroot", "Views", "web.config", "appsettings.json" ]
- 更新所有 using 语句以引用
AspNetCore.*
而不是AspNet.*
- 更新所有 using 语句以引用
然后我将框架对象替换为:
我做了一个dotnet restore
,一切都解决了,除了 1 个包:
因此,Kendo.MVC 需要引用net45
ornet451
而不是dnx451
,但由于它来自 NuGet 提要,因此我无法更改它。
你知道我是否可以快速修复而不是等待 Kendo.MVC 的下一个版本?
asp.net-mvc - 如何自动更新 ASP.NET Core 项目中最新版本的 Nuget 引用?
我正在尝试自动构建一个 ASP.NET Core 应用程序,该应用程序对属于同一项目的 Nuget 包具有两种类型的依赖项:
- 作为努力的一部分,对 Nuget 包的直接依赖也正在积极开发中
- 在同一解决方案中引用“经典”.NET 程序集项目,这些项目依赖于我们也在开发的 Nuget 包
我想要构建此解决方案以获取最新版本的 Nuget 包,然后“做正确的事”。
让我们从上面的#1开始:
使用dnu install (deprecated) 我可以有效地更新到最新版本的 Nuget 包;但是,这仅当我在与我的 xproj 相同的目录中运行 dnu install 时。为什么?因为有三个位置(但 AFAICT 未命名)参数:包 id、版本、项目位置- 所以如果我想指定项目位置,我必须输入一个版本,但是如果我想要最新的应该放什么?试过 * 但没有用。
理想情况下,无论如何我都想使用Coreclr dotnet 客户端,但是按照设计,它没有安装选项。
现在案例 #2 我的“经典”装配项目有一个使用nuget update的预构建步骤,它为我们的项目提取最新的 nuget 并适当地构建(这类似于我的案例 #1)。
但是,尽管重建了 ASP.NET 项目,但在我的 ASP.NET Core 应用程序中对这些项目的引用似乎并未更新。在解决方案资源管理器中,依赖 nuget 的版本保持在我手动添加它们作为参考时的版本。我发现修复的唯一方法——即使只是在 Visual Studio 中工作——是删除引用然后重新添加它们(好像“包装”机制不会自动启动)。
所有这一切让我觉得完全自动化这个构建是不可能的——希望我错了:)
修改为在下面包含更多详细信息
下面是 Visual Studio 中显示的项目结构,它完全正确构建。
这是 global.json:
这是 API 项目的完整 project.json:
现在我重建创建上述解决方案中引用的 Nuget 包的项目(未显示)。
然后我希望能够重建上面的帐户解决方案以引入更新的 Nugets
- 最新版 Lnl.Saas.Diagnostics 直接进入 API 项目
- 将另外两个 Nugets 添加到 Service 项目中(这通过 nuget install post-build 工作),然后更新 API 项目中对 Service 的引用,以便它引用 NEW nugets。
请注意下面的诊断 Nuget 参考没有改变(服务中的也没有改变,但我忘了在第一个屏幕截图上展开它)
如果我查看 Nuget 包管理器 UI,它会知道有更新,如果我使用 UI,它们就会被应用。
如果我在包管理器控制台中运行dnu restore,它会列出新包但(重新?)安装以前的包 - 在 project.lock.json 中明确命名。
通过尝试拼凑文档,我得到的印象dnu restore在这里做的是“正确”的事情,我需要使用dnu install,如果我在与 project.json 文件相同的目录中运行它,它确实有效(但如果我尝试从另一个目录运行,我的自动化脚本所在的位置,我不能/不知道在版本(第二个)参数中放什么,现在需要它,因为我提供了一个项目位置(第三个)参数) .
http://docs.asp.net/en/latest/dnx上的文档非常缺乏,当关注一些链接时,我找到了具有更好文档的dotnet.github.io项目(但没有明显提及它适用于 rc2)。
最后,也许这提供了一些额外的线索,是在构建时我收到一个警告(这似乎不会在运行时引起问题),例如:
警告 MSB3274 无法解析主要引用“C:...\Account\Service\bin\Debug\Account.Service.dll”,因为它是针对“.NETFramework,Version=v4.5.2”框架构建的。这是比当前目标框架“.NETFramework,Version=v4.5.1”更高的版本。
但不知道如何解决,因为我不知道我在哪里/如何使用 API 项目定位 4.5.1 框架。
c# - Unable to publish .NET Core app (unsupported runtime)
I'm building an API using .net core, and I've just run into this issue during publishing:
I saw this github issue as well as this one and I am no closer to a solution. Here is my updated project.json
file:
I read somewhere that it could be due to the organisation of my dependencies?
UPDATE
This is the error I get when using dotnet restore
:
asp.net - 无法将 ASP.NET Core 应用程序部署到 IIS - 网关错误
一直在努力让它工作,我有一个标准的 .NET Core API,我想在远程 IIS 服务器上托管,问题是大多数教程都是针对 ASP.NET 5/vNext 的,没有解释会发生什么一旦你运行你的dotnet publish
. 我的绑定是正确的,但我不确定我是否指向正确的文件夹。
在我的输出文件夹中,我有publish和wwwroot以及config.json
其他一些 json 文件。当我将 IIS 指向wwwroot文件夹时,我得到:
502 - Web 服务器在充当网关或代理服务器时收到无效响应。
如果我尝试将它指向任何其他文件夹,我会得到 404。我安装了 HttpPlatformHandler 1.2。我project.json
的如下:
我为我的project.json
.
visual-studio-2015 - ASP.NET Core RC2 是否仍然完全依赖 DNX
我已按照提供的说明开始升级到ASP.NET Core RC2。但是,我很困惑 - 似乎没有提到卸载DNX或任何其他 CLI(DNVM和DNU)。是否需要卸载它,或者RC2是否以某种方式依赖它?
dnx.exe
按照说明重新启动后,我的任务管理器和文件夹中仍然有一个,.dnx
即使我在升级过程中删除了它。我可以从字面上删除整个.dnx
目录、运行时和所有内容 - 打开Visual Studio后,它会在dotnet
CLI启动后返回。
.net - 使用分布式缓存 (SQL Server) 时,ASP.NET Core RC2 在完整的 .NET Framework 上崩溃
我有一个使用 ASP.NET Core RC2 和 dotnet CLI 的 Web 项目,针对 .NET Framework,刚刚从 ASP.NET 5 RC1 和 DNX 更新。一旦我使用分布式 SQL Server 缓存,它就会崩溃并出现以下异常:
FileNotFoundException:无法加载文件或程序集“System.Collections.NonGeneric,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a”或其依赖项之一。该系统找不到指定的文件。
System.Data.SqlClient.SqlConnectionString..ctor(字符串连接字符串)
使用堆栈跟踪:
System.Data.SqlClient.SqlConnectionString..ctor(String connectionString) System.Data.SqlClient.SqlConnectionFactory.CreateConnectionOptions(String connectionString, DbConnectionOptions previous) System.Data.ProviderBase.DbConnectionFactory.GetConnectionPoolGroup(DbConnectionPoolKey key, DbConnectionPoolGroupOptions poolOptions, DbConnectionOptions& userConnectionOptions) System .Data.SqlClient.SqlConnection.ConnectionString_Set(DbConnectionPoolKey key) System.Data.SqlClient.SqlConnection.set_ConnectionString(String value) System.Data.SqlClient.SqlConnection..ctor(String connectionString) Microsoft.Extensions.Caching.SqlServer.DatabaseOperations.GetCacheItem (字符串键,布尔值 includeValue)Microsoft.Extensions.Caching.SqlServer.DatabaseOperations.GetCacheItem(字符串键)Microsoft.Extensions.Caching.SqlServer.SqlServerCache。Get(String key) Microsoft.AspNetCore.Session.DistributedSession.Load() Microsoft.AspNetCore.Session.DistributedSession.Remove(String key) MYCODE.SessionHelper.SetValue(String key, String value) in MYCODE.cs 等
这条线实际上就是Session.Remove(key);
.
我怀疑它出于某种原因试图加载 .NET Core 包,而不是意识到它可以使用 .NET Framework。下面是我的project.json。
Microsoft.NETCore.Platforms
在( 1.0.1-rc2-24027
) 和/或NETStandard.Library
( 1.5.0-rc2-24027
) 中添加条目dependencies
没有帮助。由于描述如何执行此操作的文档缺乏甚至不存在,因此我可能在针对 .NET Framework 时做错了什么。唯一的问题是什么?我是否缺少导入或参考程序集或其他东西?
.net - dotnet 核心中的枚举描述属性
我们Description
在 dot net CLI 中有枚举属性吗?(Dot Net Core RC2)如果没有,还有其他选择吗?
.net-core - 如何使用当前预览版在 .NET Core 上构建本机二进制文件?
使用当前的 .NET Core 预览版,我如何为控制台应用程序编译(发布?)本机二进制文件。我在 Mac OS 10.11 上。
我做了以下事情:
我有点期待“发布”为我构建一个本地二进制文件,但它没有。它在发布文件夹中放置了一个 .dll 以及一些 JSON 文件?我应该提到应用程序在使用dotnet run
.
那么,如何为我的简单控制台应用程序获取本机二进制文件?