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

时间:2015-03-31 12:01:38

标签: asp.net asp.net-core

我想从常规的Framework 4.5 Class Library Project添加对ASP.NET 5 Class Library项目的引用。 我做不到。 有一些解决方法,这将得到支持吗? 我试图在project.json中添加依赖到framework 4.5,如下所示:

 "frameworks": {

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

            }

        },

之后添加对此ASP.NET 5类库项目的引用,但没有成功。

2 个答案:

答案 0 :(得分:4)

选中“在构建时生成输出”复选框将构建输出复制到artifacts\bin\[CONFIGURATION]\[FRAMEWORK]文件夹

enter image description here

然后你可以引用这个dll

答案 1 :(得分:2)

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

首先建立一个本地nuget存储库。幸运的是,这可以是一个文件夹。然后将其添加到文件夹NuGet.Config文件中。

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

您也可以通过工具 - &gt;执行此操作。选项 - &gt; NuGet包管理器 - &gt; Visual Studio中的“包源”窗口。

然后将命令行导航到要引用的ASP.NET 5类库。使用

拖动依赖项
kpm restore

然后构建并打包它并将结果输出到本地存储库文件夹。

kpm pack --out C:\Temp

现在你应该可以将kpm包中的nupkg添加为你的旧样式中的nuget引用&#34;项目。如果您愿意,可以使用从Visual Studio管理NuGet包的常规方法。

注意:您的ASP.NET 5类库需要以net45为目标才能工作。确保这是在project.json

的框架部分
...
"frameworks": {
        "net45": {},
        // Other frameworks
  }
...

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

kpm build

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