我有相當多的代碼,我發現自己一遍又一遍地在各種應用程序中使用。我最近決定花時間把它們組織在一個地方,以便我可以從我的任何解決方案中引用它們。我從一個類庫項目開始,並添加了一些不同的函數和一些我使用的派生控件。一些功能被派生的控件使用,以及直接從應用程序中調用。我建立了這個項目並開始在我的項目中使用這個DLL。DLL適合我嗎?
我有一個關於這個習俗DLL(我使用Visual C#2010速成)幾個問題:
- 我首先注意到的是,它似乎並沒有工作,很喜歡股票微軟庫。例如,我可以有「使用System.Windows.Controls;」在程序中,但我只能使用using指令引用自定義庫的名稱空間。如果有意義的話,以類似的方式組織我的課程會很好。是否有可能像微軟那樣嵌套類?
編輯:例如...如果我在我的應用程序代碼的頂部鍵入「using System」,我會得到一堆可供選擇的子命名空間。我繼續輸入「Windows」,並獲得更多子類別。如果我添加對MyCustom.dll的引用並開始鍵入「使用MyCustom」,我沒有看到我的任何類或子類。我只是問如何在我的類庫中組織事物,以便它們像庫存一樣。
使用我所有的可重用代碼創建一個大的DLL文件是一個好主意嗎?我目前沒有大量代碼,但我想留下擴展空間。最佳做法是什麼?
當我爲我的應用程序創建安裝程序時,如何處理我的DLL?我通常使用InnoSetup來製作我的安裝程序。
這是我主要關心的......說我使用Application1中的自定義DLL中的函數,並且有人安裝它。我後來添加了一些功能或對我正在構建的Application2的該功能進行了更改。如果新功能會破壞Application1或以不希望的方式更改某些內容,那麼當用戶安裝Application2時會發生什麼?我的自定義DLL是在應用程序之間共享還是每個應用程序都有自己的DLL版本?顯然,我會構建一個新版本的Application1以使其可以與新DLL一起工作,但不能保證用戶會更新它。
謝謝!
請重新提出問題1,我無法理解您說您遇到的問題。 – Dai
這裏有太多的問題和不足的信息。這裏的問題應該簡短明瞭,可以直接由單個職位負責。這裏有幾個問題,所有這些都可以單獨回答。您需要將其分解爲幾個單獨的問題,每個帖子一個,以便它在StackOverflow的設計中起作用。 [FAQ]有更多關於如何在這裏提出問題的信息。正如你現在提出的問題所說的那樣,這是不合理的,我將不得不投票結束,因爲這不是建設性的;有太多可能的部分。 –