簡體   English   中英

如何最小化ASP.NET C#項目DLL大小?

[英]How to minimize a ASP.NET C# project DLL size?

我正在使用Visual Studio 2008中的一個項目,該DLL目前超過20 MB。 有沒有辦法分析該DLL,搜索這個大小的主要貢獻者?

我懷疑在解決方案中的小項目中打破它會有所幫助,但我正在尋找更快的解決方案(雖然不是更好,我擔心)。

作為旁注,我們收到“意外錯誤寫入元數據”錯誤,我們認為它與DLL大小有關。 但是,重新啟動Visual Studio 2008時,錯誤消失。 直到它再次出現,經過幾次重建之后。 磁盤空間不是問題。

Yowser! 你有沒有得到一些嵌入在dll中的巨大resx文件(或其他嵌入內容)? 或許將這些視為外部內容? 我首先看一下項目樹中的文件...... 20Mb必須來自顯而易見的地方 - 大型圖形等。

PE Explorer將顯示內容。

也可能有幫助嗎?

更新: Dependency Walker也可以在這里提供幫助。 您可以在“配置文件模式”中運行它,它可以通過執行您的應用程序並觀察它以查看它加載的內容來運行。

Microsoft.SharePoint.dll是9Mb。 即使對於像SharePoint這樣的復雜產品,DLL也會分成不同的項目。

如果您有一個大型項目並且沒有任何資源來自資源,我是否可以建議將您的項目拆分為不同的程序集?

我在VS2003環境中看到了確切的錯誤(Microsoft在support.microsoft.com上顯示)。 但是,由於您在VS2008中,它可能也是由於磁盤空間問題。

您是否驗證Visual Studio使用的所有磁盤都未滿/幾乎已滿?

哎呀! 發現了一堆(50+)使用Crystal Reports生成的大型報表模板,每個模板大約1MB。

我們所要做的就是將它們排除在項目之外。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM