2012-09-21 40 views
2

當我進行單元測試時,我有一個我喜歡使用的簡單類。我想創建一個NuGet包,以便我可以輕鬆使用它並在我的解決方案之間分發更新。以一個類作爲源代碼的NuGet包

請問我要創建它的一個組件,或者是有可能創造一個NuGet包包含只是一個源文件,然後用一切編在一起?如果是這樣,你將如何配置該軟件包?

+0

您正在尋找這樣的事情:如何創建的NuGet可重複使用的輕量級源代碼(http://blogs.clariusconsulting.net/kzu/how-to-create-lightweight-reusable-source-code-with -nuget /)? – nemesv

+0

確實看起來像它!不過我想我會按照jon的觀點來推薦它,因爲就像他說的那樣,我可能會最終擴大,然後我會踢自己:p但是如果你將它作爲答案添加,我會接受它,因爲它在這裏解決我的問題:) – Svish

回答

1

編輯:正如其他答案所述,NuGet 可以允許您分發簡單的源代碼。不過,我強烈建議您採用更主流的方法來提供組件。 NuGet使得它非常快速 - 您必須經歷爲這個源文件創建單獨項目的「痛苦」,併爲該程序集創建一個包,但這非常簡單。

這有額外的好處就是,當你(幾乎必然)要添加更多的類型,它不會給依賴於它的項目的任何問題。如果你只想與源代碼文件創建一個包

+0

這不完全正確。 NuGet可以提供任何東西(包括源代碼),但在.NET環境中分發源代碼並不常見。 – davidfowl

+0

@dfowler:謝謝,會編輯。 –

0

只需使用這裏引用Nuspec Reference的內容文件夾(查找「內容文件」部分)

<file src="css\mobile\*.css" target="content\css\mobile" /> 
6

,這是容易做到。有關詳細說明,請參閱this blog post.

首先,創建您的代碼文件,並保存爲(例如)myFile.cs.pp(注意PP(預處理器)擴展。 你可以做一些預等許多事情上命名空間中的文件處理。要添加.MySubNameSpace的命名空間,改變聲明中的代碼文件是 namespace $rootnamespace$.MySubNameSpace 這個文件添加到NuGet包的內容部分。 編譯軟件包,而你所有集。

你.nupec包文件會再看看像下面這樣。

<?xml version="1.0" encoding="utf-16"?> 
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd"> 
    <metadata> 
     <id>MyPackageName</id> 
     <version>1.0.0</version> 
     <title>My Package Name</title> 
     <authors>Your Name</authors> 
     <owners /> 
     <requireLicenseAcceptance>false</requireLicenseAcceptance> 
     <description>My package description.</description> 
    </metadata> 
    <files> 
     <file src="content\myCodeFile.cs.pp" target="content\myCodeFile.cs.pp" /> 
    </files> 
</package> 

你可以通過NuGet Package Explorer完成所有這些。

+0

注意:包文件的擴展名是'.nuspec',而不是'.nupec' – chteuchteu

相關問題