2017-03-17 167 views
2

我的文本文件在我的類庫項目中。我有它的生成操作設置爲內容和複製設置複製是否有更新的輸出目錄,這樣的.csproj具有類似於部分:如何在Visual Studio 2017爲我創建的NuGet包中包含文本文件以及我的類庫?

<ItemGroup> 
    <Content Include="MyFile.txt"> 
    <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> 
    </Content> 
</ItemGroup> 

我這樣做,因爲我需要從使用的文本文件我類庫,並且不能將其作爲嵌入式資源,因爲我想允許最終用戶對其進行編輯。當我使用VS 2017年創建的軟件包它給了我這樣的一個部分.nuspec:

<contentFiles> 
    <files include="any/net46/MyFile.txt" buildAction="Content" /> 
    <files include="any/netstandard1.3/MyFile.txt" buildAction="Content" /> 
</contentFiles> 

後來,當我從其他項目中引用的包,MyFile.txt的出現在與生成項目的根操作設置爲內容但複製到輸出目錄設置爲不復制。我只想將該文件包含在.dll中,而不包含在引用項目中。

回答

1

如果要保留.nuspec,則可以手動編輯它並添加copyToOutput="true"屬性。

如果您正在使用VS2017和要編輯的.csproj,那麼你應該能夠在您的.csproj文件中指定額外的元數據(你可以設置自定義生成操作如果有必要):

<Content Include="MyFile.txt"> 
    <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> 
    <IncludeInPackage>true</IncludeInPackage> 
    <BuildAction>Content</BuildAction> 
    <CopyToOutput>true</CopyToOutput> 
</Content> 
+0

據我記得,我嘗試過這些東西,但他們並沒有爲我工作。我使用了以下解決方法,如果有人需要:http://stackoverflow.com/a/30386836/1676558 – user1676558

相關問題