标签: project.json

指定的deps.json'$$$'不存在

我是.NET Core的新手,我有一个.NET Core WebAPI项目MyWebApp
,我也有.Net Core Class Library项目MyLib使用EntityFrameworkCore

当我尝试使用添加迁移时,我收到错误
指定的deps.json [...\MyWebApp\bin\Debug \netcoreapp1.1\MyWebApp.deps.json]不存在

检查文件夹,我注意到我在[...\MyWebApp\bin\Debug \netcoreapp1.1\win10-x64\MyWebApp.deps.json]中有这个文件

但我真的无法想象我应该做些什么来解决这个问题.

myWebApi project.json:

{
  "dependencies": {
  "ShopManager": "1.0.0-*",
  "Microsoft.AspNetCore.StaticFiles": "1.1.0",
  "Microsoft.AspNetCore.Mvc": "1.1.0",
  "Microsoft.AspNetCore.Server.IISIntegration": "1.1.0",
  "Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
  "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0",
  "Microsoft.Extensions.Configuration.FileExtensions": "1.1.0",
  "Microsoft.Extensions.Configuration.Json": "1.1.0",
  "Microsoft.Extensions.Logging": "1.1.0",
  "Microsoft.Extensions.Logging.Console": "1.1.0",
  "Microsoft.Extensions.Logging.Debug": "1.1.0",
  "Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0",
  "Microsoft.NETCore.App": "1.1.0"
  },

  "tools": {
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
  },
  "runtimes": {
    "win10-x64": ""
  },
  "frameworks": {
    "netcoreapp1.1": {
      "imports": [
        "dotnet5.6",
        "portable-net45+win8"
      ]
    }
  },

  "buildOptions": {
    "emitEntryPoint": true,
    "preserveCompilationContext": true
  },

  "runtimeOptions": {
    "configProperties": {
      "System.GC.Server": …
Run Code Online (Sandbox Code Playgroud)

entity-framework ef-migrations entity-framework-core .net-core project.json

7
推荐指数
1
解决办法
2157
查看次数

如何在ASP.NET 5 MVC 6项目中切换到完整的.NET堆栈

我在VS 2015中创建了一个新的ASP.NET 5 MVC 6(vNext)项目.

我从另一个项目导入了一些类,但看起来DNX缺少一些对我来说非常重要的类.

我可以选择使用完整的.NET堆栈而不是DNX吗?
我需要改变什么?我比新方法更喜欢新的config.json文件,但我需要更改引用.

"frameworks": {
  "dnx451": { },
  "dnxcore50": { }
},
Run Code Online (Sandbox Code Playgroud)

asp.net-core-mvc visual-studio-2015 dnx project.json asp.net-core

6
推荐指数
1
解决办法
641
查看次数

如何从.NET 4.6控制台应用程序引用UWP + NET46可移植库?

我有一个针对.NET 4.6和通用Windows平台的可移植类库项目.这个类库只包含一个类,其构造函数中包含以下代码行:

Directory.CreateDirectory(Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString()));
Run Code Online (Sandbox Code Playgroud)

现在,我在同一解决方案中创建一个新的.NET 4.6控制台应用程序项目,并向可移植类库添加项目引用.调用包含上述代码行的方法会在运行时导致以下异常:

Could not load file or assembly 'System.IO.FileSystem, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
Run Code Online (Sandbox Code Playgroud)

我在这做错了什么?没有编译时错误或警告.

我尝试过的事情:手动添加缺少的(?)NuGet包

似乎System.IO.FileSystem是一个通过NuGet提供的库,作为Microsoft.NETCore mega-package的一部分.好吧,也许我需要将这个包明确地添加到任何使用我的可移植类库的项目中.我试图这样做.

Could not install package 'Microsoft.NETCore.Platforms 1.0.0'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.6', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.
Run Code Online (Sandbox Code Playgroud)

这种方法没有运气.

我尝试过的事情:创建一个project.json文件

虽然网上没有明确的信息,但我读了一些关于基于NuGet线束或构建系统的新project.json的花絮.为了实验,我在控制台应用程序项目中创建了以下project.json文件:

{ …
Run Code Online (Sandbox Code Playgroud)

nuget portable-class-library visual-studio-2015 .net-4.6 project.json

6
推荐指数
1
解决办法
1039
查看次数

在ASP.NET Core应用程序(RC2)中使用net451库

我正在尝试将我的ASP.NET 5 RC1项目升级到ASP.NET Core RC2项目.我遇到了一些问题,因为我使用的是尚未支持.NET Core的库,所以我必须在完整的框架上运行.这在RC1中运行良好,但我无法找到在RC2中实现这一目标的正确方法.

我有一个类库,可以恢复包并正确构建.我有一个引用类库的测试项目.当我尝试构建测试项目时,我收到以下错误:

> dotnet build
Project TenantService (.NETFramework,Version=v4.5.1) was previously compiled. Skipping compilation.
Project TenantServiceTests (.NETCoreApp,Version=v1.0) will be compiled because expected outputs are missing
Compiling TenantServiceTests for .NETCoreApp,Version=v1.0
C:\projects\TenantService\test\TenantServiceTests\project.json(25,23): error NU1001: The dependency mscorlib could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency mscorlib could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(25,23): error NU1001: The dependency mscorlib could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(9,31): error NU1001: The dependency mscorlib could not be resolved.
C:\projects\TenantService\test\TenantServiceTests\project.json(26,21): error NU1001: The dependency System could …
Run Code Online (Sandbox Code Playgroud)

xunit.net project.json asp.net-core .net-core-rc2

6
推荐指数
1
解决办法
1539
查看次数

从.NET Core应用程序引用.NET 4.6.2类库

我正在使用VS Update 3(14.0.25425.01).这就是我所做的:

  1. 创建ASP.Net核心Web应用程序(.Net Core)
  2. 创建类库.Net 4.6.2
  3. 添加net462到框架,netcoreapp1.0在project.json中导入
  4. 右键单击ASP.Net Core应用程序,单击Add Reference,选择Projects,选择您在步骤2中创建的Class Library.

我在恢复时没有错误,并且引用被添加到ASP.Net Core应用程序中.但是,我无法访问它.我无法添加使用导入声明或访问对象.我经历了很多事情,但似乎没有任何工作,帖子的版本很碎片.

在此输入图像描述

这是ASP.Net核心应用程序中的Program.cs. 在此输入图像描述

在此输入图像描述

更新 我做了Nate建议的.我以为我已经尝试过了..但是我现在可以访问我的4.6.2库了.但是,我现在收到编译错误.

在此输入图像描述

c# visual-studio-2015 .net-core project.json

6
推荐指数
1
解决办法
6019
查看次数

将基于project.json的项目添加到.sln文件而不使用Visual Studio

我们的开发人员在Linux,Windows和Mac上使用VS Code.我们也有开发人员在Windows上使用完整的Visual Studio.当前者(包括我)没有将他们的项目添加到解决方案中时会出现问题,而后者则不会在解决方案中看到项目.

开发人员如何将他们的project.json项目添加到一个sln而不必打开Visual Studio?

visual-studio sln-file visual-studio-code project.json asp.net-core

6
推荐指数
1
解决办法
974
查看次数

使用解决方案相对包文件夹与NuGet和project.json

我有一个解决方案,packages文件夹检查到源代码管理.我改变了一些项目以使用project.json文件而不是packages.config定义依赖项.这些项目都是正常.csproj项目,而不是DNX .xproj项目.一切似乎都正常工作但是在更新包后我注意到新版本没有添加到解决方案的packages文件夹中.相反,它被添加到用户配置文件文件夹中的NuGet新共享包文件夹中.

所以问题是,如何让NuGet使用解决方案的packages文件夹而不是共享文件夹?

到目前为止我尝试过的方法没有成功:

  • global.json在解决方案文件夹中添加文件指定"packages": "packages"
  • 设置<add key="disableSourceControlIntegration" value="false" />.nuget\nuget.config

version-control nuget nuget-package-restore visual-studio-2015 project.json

5
推荐指数
1
解决办法
1708
查看次数

我需要Microsoft.NETCore.Platforms和Microsoft.NETCore.Runtime吗?

在一个新的ASP.NET Core RC2类库中,我有以下project.json文件,我试图按照如何修剪包依赖关系的文档.

{
  "dependencies": {
    "Microsoft.AspNetCore.Mvc.Abstractions": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Mvc.Core": "1.0.0-rc2-final",
    "Microsoft.Extensions.Caching.Abstractions": "1.0.0-rc2-final",
    "Newtonsoft.Json": "8.0.3"
  },

  "frameworks": {
    "netstandard1.5": {
      "dependencies": {
        "Microsoft.NETCore.Platforms": "1.0.1-rc2-24027",
        "Microsoft.NETCore.Runtime": "1.0.2-rc2-24027",
        "System.Xml.XDocument": "4.0.11-rc2-24027"
      },
      "imports": "dnxcore50"
    },
    "net461": {
      "frameworkAssemblies": {
        "System.ServiceModel": "",
        "System.Xml": "",
        "System.Xml.Linq": ""
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

当我试图消除Microsoft.NETCore.PlatformsMicrosoft.NETCore.Runtime,一切仍然有效.这可能是因为Microsoft依赖项也指定了这些.这些依赖关系是什么?我应该明确并保留它们吗?

.net asp.net-core-mvc .net-core project.json asp.net-core

5
推荐指数
1
解决办法
3399
查看次数

Services.AddOptions()含糊不清

我正在忙着将我们的ASP.NET Core API从RC1迁移到RC2.

RC2要求我们在使用时配置以下内容IOptions<T>:

services.AddOptions();
Run Code Online (Sandbox Code Playgroud)

但是我得到以下编译错误:

错误CS0121呼叫是下列方法或属性之间暧昧:"Microsoft.Extensions.DependencyInjection.OptionsServiceCollectionExtensions.AddOptions(Microsoft.Extensions.DependencyInjection.IServiceCollection)"和"Microsoft.Extensions.DependencyInjection.OptionsServiceCollectionExtensions.AddOptions(Microsoft.Extensions.DependencyInjection .IServiceCollection)'TransitApi.Api..NET Framework 4.5.2

这些是完全相同的扩展方法!我已经尝试删除所有软件包并删除锁定文件,但无济于事.

project.json:

{
  "title": "MyProject.Api",
  "webroot": "wwwroot",
  "version": "1.0.0-*",
  "dependencies": {

    "Microsoft.ApplicationInsights.AspNetCore": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Mvc": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Diagnostics": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Authorization": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Mvc.Core": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Mvc.Abstractions": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Authentication.JwtBearer": "1.0.0-rc2-final",
    "Microsoft.Extensions.PlatformAbstractions": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.StaticFiles": "1.0.0-rc2-final",
    "Microsoft.Extensions.Logging": "1.0.0-rc2-final",
    "Microsoft.Extensions.Logging.Abstractions": "1.0.0-rc2-final",
    "Microsoft.Extensions.Logging.Console": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Http": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Http.Abstractions": "1.0.0-rc2-final",
    "Microsoft.Extensions.Configuration": "1.0.0-rc2-final",
    "Microsoft.Extensions.Configuration.Json": "1.0.0-rc2-final",
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0-rc2-final",
    "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0-rc2-final",
    "Newtonsoft.Json": "8.0.3",
    "WindowsAzure.Storage": "7.0.0",
    "Microsoft.AspNetCore.Mvc.Formatters.Json": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0-rc2-final",
    "Microsoft.AspNetCore.Cors": "1.0.0-rc2-final"
  },
  "frameworks": {
    "net452": { } …
Run Code Online (Sandbox Code Playgroud)

asp.net-core-mvc project.json asp.net-core asp.net-core-1.0

5
推荐指数
1
解决办法
2519
查看次数

是否可以像在package.json中一样在project.json中运行脚本?

因此,正如标题所述,我想知道是否有可能用dotnet cli做相当于“ npm run”的动作?例如,此片段来自我的project.json:

{
  "dependencies": {
    "Microsoft.NETCore.App": {
      "version": "1.1.0",
      "type": "platform"
    },
    "Microsoft.AspNetCore.Diagnostics": "1.1.0",
    "Microsoft.AspNetCore.Server.IISIntegration": "1.1.0",
    "Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
    "Microsoft.Extensions.Logging.Console": "1.1.0",
    "Microsoft.Extensions.Configuration": "1.1.0",
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.1.0",
    "Microsoft.Extensions.Configuration.FileExtensions": "1.1.0",
    "Microsoft.Extensions.Configuration.Json": "1.1.0",
    "Microsoft.Extensions.Configuration.CommandLine": "1.1.0",
    "Microsoft.AspNetCore.Mvc":"1.1.0",
    "Microsoft.EntityFrameworkCore": "1.1.0",
    //"MySql.Data.Core": "7.0.4-ir-191",
    //"MySql.Data.EntityFrameworkCore": "7.0.4-ir-191",
    "SapientGuardian.EntityFrameworkCore.MySql": "7.1.14",
    "Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0",
    "moq":  "4.6.38-alpha",
    "Microsoft.EntityFrameworkCore.Design": "1.1.0",
    "Microsoft.EntityFrameworkCore.SqlServer": "1.1.0",
    "Microsoft.EntityFrameworkCore.Relational": "1.1.0"

  },
  "scripts": {
        "migrate-identity": "dotnet ef database update --context 'ApplicationDbContext'"
},
Run Code Online (Sandbox Code Playgroud)

迁移身份是我添加的自我身份,可以执行此脚本吗?

否则我想我只会在我的项目中有一个scripts文件夹,没什么大不了的,但仍然:)

json project.json asp.net-core

5
推荐指数
1
解决办法
1302
查看次数