所以我已经在我的Linux机器上安装了Asp.net vNext并且一直在玩它。我已经完成了所有设置并可以构建和运行mvc应用程序。我正在构建一个控制台应用程序,需要引用NuGet中不存在的程序集。我想在我的project.json中添加对Mono.Data.SqliteClient的引用。我知道程序集的路径/usr/local/lib/mono/4.5/Mono.Data.Sqlite.dll。
如何添加对dll的引用?我的project.json文件目前看起来像这样:
{
"dependencies": {
"System.Console": "4.0.0.0",
"Dapper":"1.27",
"Mono.Data.Sqlite":""
},
"configurations": {
"net45": {},
"k10": {}
}
}
答案 0 :(得分:1)
我在forum ...
上找到了答案简而言之,如果他们在nuget包内,你只能参考你的dll ...(我希望这会得到改善。这是一个麻烦的IMO。)
长篇故事:
好的,在经过大量的讨论之后,似乎这样做的方法是使用DLL创建一个nuget包(我将以Quartz 2.2.4.400为例)。
使用http://docs.nuget.org/docs/creating-packages/using-a-gui-to-build-packages来构建它。将Quartz.dll拖放到右侧(nb。它确实需要放在lib目录中)。档案 - >另存为...将其保存在以下位置:
projectRoot \包\ Quartz.2.2.4.400 \ Quartz.2.2.4.400.nupkg
使用以下dll:
projectRoot \包\ Quartz.2.2.4.400 \ lib中\的Quartz.dll
NB。将DLL放在lib目录之外将编译正常,但不能与intellisense一起使用。如果您正在使用特定版本进行编译,那么我将它放在net45,net451或k10文件夹中;因为我不是,我没有打扰。我的project.json然后看起来像:
{
"dependencies": {
"Quartz" : "2.2.4.400"
},
"configurations" : {
"k10" : {
"dependencies": {
"System.Console": "4.0.0.0"
}
}
}
}