我正在使用Microsoft.Build.BuildEngine構建一些項目。不使用Silverlight的項目正在構建,而使用Silverlight的項目不在構建中。所有這些項目(Silverlight和非Silverlight的)的所有建設精細通過Visual Studio 2008年。我得到的錯誤信息:如何使用Microsoft.Build.BuildEngine構建Silverlight項目?
錯誤CS0234:類型或命名空間名稱「SilverlightControls」不會在 命名空間「存在System.Web.UI'(您是否缺少程序集引用?)
我已將System.Web.Silverlight添加到正在使用Microsoft.Build.BuildEngine進行構建的項目中。我能夠在構建該項目的項目中看到該名稱空間(因此看起來,構建該項目的項目確實可以訪問System.Web.UI)。
有關如何避免該錯誤的任何想法?
通過VS2008調整構建的詳細程度,並與從Microsoft.Build.BuildEngine創建的日誌進行比較。它看起來像Microsoft.Build.BuildEngine是生產線,如:
認爲是 「C:\ Program Files文件\參考大會\微軟\框架 \ v3.5版本\ System.Web.Silverlight.dll」,但它不存在。
它不存在於那個位置,應該嗎?實際上有很多地方,它尋找該DLL並沒有找到它。我通過右鍵單擊,添加引用,.Net,添加引用添加。在我的機器上似乎沒有System.Web.Silverlight.dll(這很奇怪,因爲項目使用VS2008進行編譯)。
兩個日誌的可能是有關章節比較: Microsoft.Build.BuildEngine
對於SearchPath中的 「{} GAC」。 考慮到「System.Web.Silverlight,Version = 2.0.5.0,Culture = neutral, PublicKeyToken = 31bf3856ad364e35,processorArchitecture = MSIL」,在GAC中找不到 。
Visual Studio 2008中
System.Web.Silverlight,版本= 2.0.5.0,文化=中立, 公鑰= 31bf3856ad364e35,ProcessorArchitecture用於= MSIL
手動添加的System.Web.Silverlight到Microsoft.Build.BuildEngine查找它的路徑(當我通過VS2008構建項目時,從輸出目錄複製它)。這解決了這個問題,但我現在得到的解決方案的Silverlight組件以下錯誤:
C:\ Program Files文件\的MSBuild \微軟\的Silverlight \ 2.0 \ Microsoft.Silverlight.Common.targets (95,9):錯誤:安裝的Silverlight 2 SDK不是 。
任何想法?