Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
clickonce不会发布Nuget软件包_Nuget_Vsto_Clickonce - Fatal编程技术网

clickonce不会发布Nuget软件包

clickonce不会发布Nuget软件包,nuget,vsto,clickonce,Nuget,Vsto,Clickonce,设置: 1.VS2017,创建Excel 2013 VSTO加载项项目 2.Nuget安装:Snappy.NET 3.右键单击=>发布 4.检查发布文件夹,没有Snappy.NET.dll 我找到的唯一解决方案是通过packages.config文件安装软件包,而不像项目资源 若要尝试,请从project卸载所有Nuget包,保存、退出并重新打开解决方案 选中工具->选项->Nuget Pakage Manager->常规上的“允许在第一次安装软件包时选择格式”选项 重新安装软件包。 当Vis

设置:
1.VS2017,创建Excel 2013 VSTO加载项项目
2.Nuget安装:Snappy.NET
3.右键单击=>发布
4.检查发布文件夹,没有Snappy.NET.dll


我找到的唯一解决方案是通过packages.config文件安装软件包,而不像项目资源

若要尝试,请从project卸载所有Nuget包,保存、退出并重新打开解决方案

选中工具->选项->Nuget Pakage Manager->常规上的“允许在第一次安装软件包时选择格式”选项

重新安装软件包。
当Visual Studio询问要使用哪种配置时,请选择package.config file

您可以修改生成过程,使目标将NuGet软件包中的所有文件的发布状态设置为包含而不是先决条件。只需将以下内容添加到您的csproj中

<Target Name="IncludePackageReferencedFiles" BeforeTargets="_DeploymentComputeClickOnceManifestInfo">
    <Message Text="Including files from NuGet packages for ClickOnce publishing" />
    <ItemGroup>
      <PublishFile
          Include="@(ReferencePath->'%(FileName)')"
          Condition=" '%(ReferencePath.NuGetSourceType)' == 'Package' and '%(ReferencePath.NuGetIsFrameworkReference)' != 'true'"
          KeepMetadata="None">
        <PublishState>Include</PublishState>
        <FileType>Assembly</FileType>
      </PublishFile>
    </ItemGroup>
</Target>

包括
装配
我找到了