Asp.net core 将dnx作为nuget包引用
我试图将dnx作为nuget包引用。 为此,我在project.json中包含了dnx-clr-win-x64和dnx-clr-win-x86包Asp.net core 将dnx作为nuget包引用,asp.net-core,Asp.net Core,我试图将dnx作为nuget包引用。 为此,我在project.json中包含了dnx-clr-win-x64和dnx-clr-win-x86包 "dependencies": { ... "dnx-clr-win-x64": "1.0.0-beta4", "dnx-clr-win-x86": "1.0.0-beta4" } 并在my web.confing to packages目录中设置运行时路径设置。 ... 在我的软件包目录中,我有dnx-clr-win-x64和dn
"dependencies": {
...
"dnx-clr-win-x64": "1.0.0-beta4",
"dnx-clr-win-x86": "1.0.0-beta4"
}
并在my web.confing to packages目录中设置运行时路径设置。
...
在我的软件包目录中,我有dnx-clr-win-x64
和dnx-clr-win-x86
目录以及1.0.0-beta4
子目录
但当我试图运行我的应用程序时,我遇到了一个错误:
无法加载文件或程序集“dnx.clr.managed”或其
依赖关系。系统找不到指定的文件
似乎AspNet.Loader.dll搜索目录名为dnx-clr-win-x64.1.0.0-beta4
。但包存储在dnx-clr-win-x64/1.0.0-beta4
中
如果我在packages
目录中创建目录dnx-clr-win-x64.1.0.0-beta4
是否可以将dnx作为nuget软件包引用?根据您的问题和您对它的评论,答案是否定的。您不能引用dnx并将其作为nuget引用,因为您有一个引导问题:您需要dnu(它是dnx的一部分)来下载nuget软件包 但是,您可以编写一个构建脚本,类似于我们(asp.net团队)所做的: 基本上,为了获得dnx,您构建脚本所要做的就是:
此外,如果不希望全局使用dnx,可以将
dnx\U HOME
环境变量设置为指向其他文件夹 您试图实现什么目标?我不希望在%USERPROFILE%\.dnx目录中安装dnx,以便能够在开发人员计算机上运行我的应用程序。我想另一个开发者可以从风投那里获取资源并构建它。现在我将dnx存储在VCS下的“runtimes”目录中,并通过“runtime path”设置从web.config引用该目录。ASP.NEt 5
应用程序在没有dnx的情况下无法运行
是的,我可以编写一个构建脚本,或者只在VCS下存储dnx。但我很好奇是否有可能将DNX作为nuget包引用。唯一不起作用的是nuget将包存储为{PackageName}\{PackageVersion},但AspNet.Loader.dll查找{PackageName}.{PackageVersion}。是的,ASP.NET 5应用程序不能在没有DNX的情况下运行,但DNX不一定要在%USERPROFILE%\.DNX目录中。例如,我将其存储在我的解决方案目录中。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
...
<add key="runtime-path" value="../../packages" />
</appSettings>
</configuration>