从Framework 4.5类库项目中添加对ASP.NET 5类库的引用项目

问题描述:

我想从常规Framework 4.5类库项目中添加对ASP.NET 5类库项目的引用。 我做不到。 是否有一些解决方法,并且会被支持? 我尝试添加依赖关系框架4.5 project.json这样的:从Framework 4.5类库项目中添加对ASP.NET 5类库的引用项目

"frameworks": { 

     "net451": { 
      "dependencies": { 
       "System.Data.Common": "1.0.0-beta1", 
       "System.Data.SqlClient": "1.0.0-beta1" 
      }, 
      "frameworkAssemblies": { 

      } 

     }, 

并在此之后添加参照本ASP.NET 5类库项目,但没有成功。

+0

你的类库建设[配置] \ [框架]'由VS,那么你可以从这个构建输出添加引用我猜 – 2015-03-31 12:56:29

+0

@aguafrommars我看不到在工件文件夹中的任何DLL。所有文件夹都是空的。 – 2015-03-31 13:32:11

+0

哦,是的,对不起,这是通过发布,而不是一个简单的构建 – 2015-03-31 14:19:18

检查“生产上生成输出”复选框,将复制生成输出到artifacts\bin\[CONFIGURATION]\[FRAMEWORK]文件夹

enter image description here

,那么你可以在`文物\ BIN \引用此DLL

+0

我刚刚从旧的项目类型的Framework4.5文件夹引用dll,它只是工作。谢谢 – 2015-04-01 07:28:32

你可以做到!首先,我们需要了解“旧式”项目输出和参考DLL。 ASP.NET 5项目输出和参考NuGet包。

首先设置一个本地nuget存储库。幸运的是,这可以是一个文件夹。然后将其添加到文件夹NuGet.Config文件。在Visual Studio>包源窗口 -

<config> 
<add key="localrepo" value="C:\Temp" /> 
<the rest of your file /> 
</config> 

您可以通过这些工具还可以这样做 - >选项 - > NuGet包管理器。

然后将您的命令行导航到您要引用的ASP.NET 5类库。拖累依赖与

kpm restore 

然后建立和包装它,并将结果输出到您的本地存储库文件夹。

kpm pack --out C:\Temp 

现在你应该可以在kyp包中添加nupkg作为你的“老式”项目中的nuget参考。如果您愿意,可以使用您从Visual Studio管理NuGet Packages的常规方式。

注意:您的ASP.NET 5类库需要针对net45才能正常工作。确保这是您的project.json的框架部分

... 
"frameworks": { 
     "net45": {}, 
     // Other frameworks 
    } 
... 

或者: 如果你想这样做快速和肮脏的,你可以运行

kpm build 

,并添加DLL直接引用。应该在kpm build的输出中监听DLL的位置。

+1

做简单的项目引用的声音很复杂。我在想,我只需要在项目中添加框架 - > net45部分。json在vNext类库中,当我构建项目时,它也会输出可以引用的旧式DLL-s ... – 2015-03-31 13:11:50

+0

是的,它不漂亮。如果你想快速和肮脏地执行它,你可以运行kpm build,并添加一个直接的DLL引用。应该在kpm build的输出中监听DLL的位置。希望这些不错的工具功能可以让我们更接近发布时更流畅,更平滑。 – AndersNS 2015-03-31 20:29:49

+0

我已经设法使用上面的方法引用DLL。 – 2015-04-01 07:30:23