Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#框架版本-使用多个框架_C#_Asp.net - Fatal编程技术网

C#框架版本-使用多个框架

C#框架版本-使用多个框架,c#,asp.net,C#,Asp.net,我有一个使用.netcore(1.01)的应用程序,运行良好。但是没有针对.net核心的PayPal SDK 为了解决这个问题,我考虑将.NET4.6.1加载到我的项目中,这样我就可以从那里使用这个SDK,而我的项目的其余部分继续使用.NETCore 这类工作,我的项目构建,但我得到了数以千计的错误引用-项目:“ProjectName..netframework4.6.1” 下面是我的project.json的副本 { "userSecretsId": "xxxxx", "buildO

我有一个使用.netcore(1.01)的应用程序,运行良好。但是没有针对.net核心的PayPal SDK

为了解决这个问题,我考虑将.NET4.6.1加载到我的项目中,这样我就可以从那里使用这个SDK,而我的项目的其余部分继续使用.NETCore

这类工作,我的项目构建,但我得到了数以千计的错误引用-项目:“ProjectName..netframework4.6.1”

下面是我的project.json的副本

{
  "userSecretsId": "xxxxx",

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

  "runtimeOptions": {
    "configProperties": {
      "System.GC.Server": true
    }
  },

  "frameworks": {
    "netcoreapp1.0": {
      "dependencies": {
        "BundlerMinifier.Core": "2.2.281",
        "ChilkatDnCore": "9.5.0.59",
        "CsvHelper": "2.16.3",
        "Microsoft.AspNetCore.Authentication.Cookies": "1.0.0",
        "Microsoft.AspNetCore.Diagnostics": "1.0.0",
        "Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore": "1.0.0",
        "Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0",
        "Microsoft.AspNetCore.Mvc": "1.0.1",
        "Microsoft.AspNetCore.Razor.Tools": {
          "version": "1.0.0-preview2-final",
          "type": "build"
        },
        "Microsoft.AspNetCore.Routing": "1.0.1",
        "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
        "Microsoft.AspNetCore.Server.Kestrel": "1.0.1",
        "Microsoft.AspNetCore.StaticFiles": "1.0.0",
        "Microsoft.EntityFrameworkCore.SqlServer": "1.0.1",
        "Microsoft.EntityFrameworkCore.SqlServer.Design": {
          "version": "1.0.1",
          "type": "build"
        },
        "Microsoft.EntityFrameworkCore.Tools": {
          "version": "1.0.0-preview2-final",
          "type": "build"
        },
        "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
        "Microsoft.Extensions.Configuration.Json": "1.0.0",
        "Microsoft.Extensions.Configuration.UserSecrets": "1.0.0",
        "Microsoft.Extensions.Logging": "1.0.0",
        "Microsoft.Extensions.Logging.Console": "1.0.0",
        "Microsoft.Extensions.Logging.Debug": "1.0.0",
        "Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
        "Microsoft.NETCore.App": {
          "version": "1.0.1",
          "type": "platform"
        },
        "Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0",
        "Microsoft.VisualStudio.Web.CodeGeneration.Tools": {
          "version": "1.0.0-preview2-final",
          "type": "build"
        },
        "Microsoft.VisualStudio.Web.CodeGenerators.Mvc": {
          "type": "build",
          "version": "1.0.0-preview2-final"
        }
      },
      "imports": [
        "dotnet5.6",
        "portable-net45+win8"
      ]
    },
    "net461": {
      "imports": [
      ],
      "dependencies": {
        "PayPal": "1.7.4"
      }
    }
  },


  "tools": {
    "Microsoft.AspNetCore.Razor.Tools": "1.0.0-preview2-final",
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final",
    "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final",
    "Microsoft.Extensions.SecretManager.Tools": "1.0.0-preview2-final",
    "Microsoft.VisualStudio.Web.CodeGeneration.Tools": {
      "version": "1.0.0-preview2-final",
      "imports": [
        "portable-net45+win8"
      ]
    }
  },

  "scripts": {
    "prepublish": [ "bower install", "dotnet bundle" ],
    "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ]
  },

  "publishOptions": {
    "include": [
      "wwwroot",
      "**/*.cshtml",
      "appsettings.json",
      "web.config"
    ]
  }
}
我从未尝试过做一个跨框架的项目。因此,任何援助都将不胜感激

卡兹

--更新--

因此,我将依赖项列表从特定于框架的列表中移出,只有一个在.NET4.6中出现错误,因此我将其移回核心依赖项列表中,所有内容似乎都构建得很好,没有错误

但现在出现了一个新的错误。创建一个新类并使用PayPal.API添加PayPal API
,我得到错误“找不到名称空间PayPal”


奇怪的是,intellisense知道这一点,当我开始添加它时,我得到一个警告,“.net 4.6-可用--.net核心-不可用”,所以很明显它就在那里,我只需要告诉它如何使用4.6框架来使用using语句…

您最好的选择可能是拥有一个单独的服务层,您可以通过HangFire调用该层,或者一个API,该API将容纳仍在.NET 4.6.1中的PayPal代码,而您的其余代码仍在核心中。您最好的选择可能是拥有一个单独的服务层,您可以通过HangFire调用该层,或者使用API将PayPal代码保存在.NET4.6.1中,而其余代码则保存在核心中。或者将其全部包含在4.6.1中。