问题标签 [project.json]

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.

0 投票
2 回答
21748 浏览

asp.net-core - 如何制作 .NET Core 类库并从 .NET 4.6 项目中引用它?

我想要:

  • 制作一个定义一些接口和简单的通用帮助类的类库。它将依赖通用集合,IQueryable<T>但没有第三方依赖项(嗯,JetBrains.Annotations)。
  • 能够从任何地方引用该类库(特别是 UWP、net46 和 ASP.Net Core RC2)
  • 理想情况下,始终使用 project.json 系统,尽管我准备在需要时牺牲它。
  • 将完成的库发布到 NuGet 源,然后在其他应用程序中使用它

在 Visual Studio 2015.2 中创建我的类库项目时,我找到了Class Library (.NET Core)模板,其中指出

用于将类库创建为可面向任何平台的 NuGet 包的项目模板

任何平台!太棒了......但我无法让它工作。经过大量的摆弄,我目前有以下内容project.json(我现在可能已经完全打破了它):

我接下来要做的是在同一个解决方案中创建我的 .NET Framework 4.6 项目,并尝试引用类库。它让我可以添加引用,但我遇到了构建错误、未解析的符号、R# 不满意等。

我想我做的不对(毫不奇怪,真的,因为我在黑暗中摸索)。

我已经阅读了一些关于 TFM、框架和库的文档,但没有一个真正有意义。

我真正需要在我的类库中放入什么project.json,以便我可以从我的 .net framework 4.6 应用程序以及 UWP 和 ASP.NET Core RC2 应用程序中引用它?这真的是正确的方法还是我一开始就走错了路?

0 投票
1 回答
147 浏览

visual-studio-2015 - UWP Windows-10 VS-2015 不会自动生成 project.lock.json 文件

我正在尝试使用 Visual Studio 2015 在 Windows-10 上运行我的 UWP 应用程序。问题是,VS-2015 似乎没有生成这个隐藏文件project.lock.json
由于没有生成这个文件,我遇到了这个错误:Nuget Errors

我正在使用的解决方法是创建一个新的空项目并将两个 json 文件复制到您现有的项目中。


这是我的 VS-2015 详细信息:

MS VS Professional 2015
版本 14.0.25123.00 更新 2
Microsoft .NET Framework
版本 4.6.01038

0 投票
1 回答
2522 浏览

asp.net-core - Read project.json version number at runtime

How can one read the project.json version number at runtime? I.e. the "1.0.0-1234" in the config below:

0 投票
1 回答
1325 浏览

c# - 将 project.json 包引用添加到 VSIX

当尝试添加对 VSIX 的引用时,它通常会从 .csproj 中的引用中提取它。但是,如果引用不在 .csproj 中,因为它们现在在 project.json 文件中,那么它们不会被拉到 vsix。然后该解决方案可能会编译,但是当安装到 Visual Studio 中时,扩展失败并出现“找不到文件”错误(因为程序集未复制到 VSIX)。

我尝试使用清单的部分,如下所示:

但它不起作用,因为它不识别包引用。

经过一些研究,我看到了一个与 PCL 类似的问题,但是,没有答案,而且问题类型不同:MEF With Portable Class library using Microsoft Composition MEF2 throws file not found exception

在同一个注释中,这似乎是一个可接受的解决方法:VSIX with Project Templates and NuGet Packages然而,据我了解,这意味着在安装过程中使用该包。除此之外,它不适用于我们的案例,因为他们需要指定包版本,而我们正在使用 project.json,因此我们可以使用浮动版本(即:2.0.*)

有没有办法引用我们缺少的这个 project.json 引用?也许是一种解决方法?我发现的解决方案似乎都需要在某个地方“粘贴”de DLL,这对于浮动版本来说不是那么方便。

提前感谢您的任何帮助或意见。

编辑/更新:由于 VSIX 会自动推送 CSPROJ 中引用的任何程序集(而不是项目本身),因此尝试在项目级别获取 DLL 似乎不太可能。经过多次尝试,我认为有效的解决方法是从输出文件夹中获取程序集。但是,据我所知,VSIX 没有这样做的方法,或者是吗?

0 投票
2 回答
267 浏览

asp.net-core - Asp.net Core RC2 未检测到对 nuget 包的引用

我在 Web 应用程序中使用 Clean RC2 模板。

添加对 System.linq 的引用后,它给了我这个:

在此处输入图像描述

我使用 461 作为框架。

0 投票
2 回答
24468 浏览

.net - 什么是 project.lock.json?

我按照说明创建新的 .NET Core 项目并从 cmd 运行它:

第二个语句创建project.lock.json包含大量垃圾(不是真正的垃圾,而是大量的依赖项、配置等)。我假设这些依赖项是 .NET 框架,它被分解为单独的 NuGet 包。

我的问题:

  1. 我的假设正确吗?
  2. 我可以通过删除不需要的 NuGet 包/依赖项来使我的应用程序更轻量级吗?
  3. 如何?
0 投票
1 回答
180 浏览

c# - Nuget pack 3.4.3 csproj + project.json 包含依赖项

我正在尝试将 packages.config 更改为csproj + project.json 用于管理 nuget 包。我注意到一个重要的变化——使用nuget pack它时默认排除所有依赖项,而使用 packages.config 时它包括它们,除非developmentdependency=true设置了属性。我怎样才能实现相同的功能?我的意思是即时生成依赖项。项目.json:

0 投票
5 回答
3030 浏览

c# - 无法恢复 ASP.NET Core 1.0 RTM 解决方案

我刚刚将一个正常工作的 RC2 Web 应用程序转换为 RTM,但在 IIS 上发布时遇到了一些问题。

我找到的所有示例都基于 NetCoreApp1.0 应用程序。由于某些要求,我们仅限于“net46”。

这是project.json

这是我得到的错误

如果我按如下方式更改“工具”部分,

我设法恢复解决方案,但是当我尝试使用 发布解决方案时dotnet publish .\Path\To\Web\Application\ -o .\tmp\public\,我得到以下输出

事件如果显示Published 1/1 projects successfully,则.\tmp\public\web.config包含以下行。

虽然它曾经包含

第二个是已部署服务器上 IIS 的工作配置。

关于如何解决这个问题的任何建议?

谢谢

0 投票
1 回答
3508 浏览

c# - 面向 .netstandard 1.3 时,为什么我不能使用嵌入式资源 (resx)?

(问题副标题:是不支持资源.netstandard 1.3还是我的项目文件搞砸了?)

我刚刚在 Visual Studio 2015 Update 3 中创建了一个示例可移植类库,并添加了一个示例资源文件。最初,该文件project.json如下所示:

很好:没有编译错误!

之后,我使用项目属性来定位.NETStandard 1.3.

可移植类库目标

现在project.json看起来像这样:

现在我收到以下构建错误 - 这意味着基本上EmbeddedRessource不支持构建操作:

德国错误

我真的不是专家project.json,但对我来说,事情看起来不一致 - 我不知道问题出在哪里。

  • 首先project.json:如果我支持net46,为什么要导入net452
  • 在第二个project.json:如果我使用netstandard1.3,为什么版本中对库有依赖关系1.6
  • 最后,什么是.NETPortable, Version=v5.0?今年年初已经改名了.NET Core——为什么还要引用版本5.0?甚至MSDN也不<TargetFrameworkVersion>5.0</TargetFrameworkVersion>知道csproj

对我来说,这似乎netstandard不仅仅是关于可用的库,似乎也涉及到工具。但这并不能解释为什么它适用于dnxcore50.

0 投票
2 回答
3647 浏览

asp.net-core - 无法使用托管代理在 Visual Studio Team Services 上构建默认 ASP.Net Core Web 应用程序 (.NET Core)

在 Visual Studio 2015 Update 3 中创建了一个新的 ASP.Net Core Web 应用程序 (.Net Core) 项目并将其签入到 Visual Studio Team Services git 存储库。我正在使用 .Net Core 和 ASP.Net Core 的发布版本。

我现在正在尝试使用 VSTS 构建系统使用基于本指南的构建定义来构建它:https ://www.visualstudio.com/en-us/docs/build/apps/aspnet/aspnetcore-to-azure

但是,构建在dotnet restore步骤中失败,日志如下所示(第一部分不包括在内,这是它开始失败的地方)。

我究竟做错了什么?我是否需要以任何方式准备当前的托管代理才能使其与 ASP.Net Core 的 v1.0.0 版本一起使用?

global.json(由 ASP.Net Core Web Application (.Net Core) 模板创建):

project.json(由 ASP.Net Core Web 应用程序 (.Net Core) 模板创建):