【茶包射手日記】aspnet_merge出現Unresolved assembly reference not allowed

同事報案: 某ASP.NET 2.0 Web Site專案以VS2008開啟,新增Web Deployment Project,編譯網站沒有錯誤,編譯部署專案時,卻報出以下詭異訊息而失敗:

aspnet_merge : error occurred: An error occurred when merging assemblies: Unresolved assembly reference not allowed: System.Data.

經測試,如果選擇全部編譯成單一DLL的話可成功(下圖第一個選項),其餘選項則都不行:

有趣的是,同一專案使用VS2005的Web Deployment Project編譯,則是完全正常無誤!

靈機一動,猜想可能與VS2005/VS2008部署專案的aspnet_merge設定差異有關,於是試著修改.wdproj檔案(在VS2008 Solution Explorer,部署專案按右鍵,選Open Project File):
<Import Project="$(MSBuildExtensionsPath)\Microsoft\WebDeployment\v9.0\Microsoft.WebDeployment.targets" />

將v9.0改為v8.0(前題是機器上要有安裝VS2005 Web Deployment Project),沒想到經過這番瞎弄,部署專案竟然就可編譯過關了!!

試著一一移除專案各支程式,想找出導致問題的原因,最後縮小到疑似與程式裡使用ODP.NET OracleCommand.CommandType = CommandType.StoredProceudre有關,但最終沒能理出明確且可反覆驗證的實驗結果,加上即使證實為VS2008 Web Deployment Projecct的Bug,被修復的機會也不高,不想再繼續投入時間。最後決定將Bug放生,未來先用以上方法鋸箭解決問題。

歡迎推文分享:
Published 08 September 2010 05:03 PM 由 Jeffrey
Filed under: , ,
Views: 6,679



意見

沒有意見

你的看法呢?

(必要的) 
(必要的) 
(選擇性的)
(必要的) 
(提醒: 因快取機制,您的留言幾分鐘後才會顯示在網站,請耐心稍候)

5 + 3 =

搜尋

Go

<September 2010>
SunMonTueWedThuFriSat
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789
 
RSS
創用 CC 授權條款
【廣告】
twMVC

Tags 分類檢視
關於作者

一個醉心技術又酷愛分享的Coding魔人,十年的IT職場生涯,寫過系統、管過專案, 也帶過團隊,最後還是無怨無悔地選擇了技術鑽研這條路,近年來則以做一個"有為的中年人"自許。

文章典藏
其他功能

這個部落格


Syndication