Tag: project.json

将project.json包引用添加到VSIX

当试图添加对VSIX的引用时,它通常将其从.csproj中的引用中拉出。 但是,如果引用不在.csproj中,因为它们现在位于project.json文件中,那么它们不会被拉到vsix。 解决scheme然后可以编译,但是当安装到Visual Studio中(因为不复制到VSIX的程序集),扩展失败,出现“文件未find”错误。 我尝试了清单的部分,如下所示: <Asset Type="Microsoft.VisualStudio.Assembly" d:Source="Project" d:ProjectName="*PROJECTNAME*" Path="|*ASSEMBLYNAME*|" AssemblyName="|*ASSEMBLYNAME*;AssemblyName|" /> 但它不起作用,因为它不能识别软件包引用。 经过一番研究,我看到了一个与PCL类似的问题,但是,没有一个答案,也没有相同types的问题: 使用Microsoft组合MEF的可移植类库MEF2抛出文件没有findexception 在同样的说明中,这似乎是一个可以接受的解决方法:但是,就我所知,这意味着在安装过程中使用该软件包。 除此之外,它不适用于我们的情况,因为他们需要指定包版本,我们正在使用project.json,所以我们可以使用浮动版本(即:2.0。*) 有没有办法引用我们失踪的这个project.json引用? 也许是一个解决方法? 我发现的解决scheme似乎都需要在某处“粘贴”de DLL,这对于浮动版本来说并不方便。 提前感谢任何帮助或input。 编辑/更新 :由于VSIX自动推送在CSPROJ(而不是项目本身)中引用的任何程序集,试图获得在项目级别的DLL似乎不太可能。 经过多次尝试,我认为有效的解决方法是从输出文件夹中获取程序集。 然而,据我所知,VSIX没有办法做到这一点,或者呢?

什么是project.lock.json?

我按照说明创build了新的.NET Core项目,并从cmd运行: dotnet new dotnet restore 第二个语句创build了包含大量垃圾(不是真的垃圾,而是大量依赖,configuration等)的project.lock.json 。 我假设这些依赖是.NET框架,分解成单独的NuGet包。 我的问题: 我的假设是否正确? 我可以通过删除不需要的NuGet包/依赖关系来使我的应用程序更轻? 怎么样?