2013-12-23 51 views
0

我有一個類庫項目,我必須參考我的類庫項目中的一個程序集,其目標爲v2.0.50727,然後最終從使用.Net 4版本的項目中調用我的類庫。混合模式組裝類問題與類庫

當應用程序運行,它給錯誤 「混合模式組件構建針對運行時的版本‘V2.0.50727’,並且不能在無需額外配置信息4.0運行時加載。」

我知道我可以在app.config中添加屬性以避免此錯誤,但在我的情況下,這是沒有app.config的類庫。

我試着將我的類庫改爲.net framework 2,但它仍然顯示錯誤。

當我改變主應用程序的目標框架從.NET 4到達網絡3.5,編譯器給出了以下行錯誤:

使用System.ComponentModel.Composition;

我該怎麼辦?

+0

您必須爲使用您的類庫的EXE提供.config文件。將這種混合模式組合重建爲目標.NET 4是非常簡單的。有一個程序員需要5分鐘爲你做這件事,你不會在這裏找到他。拿起電話,給他打電話。 –

+0

嗯,在我的情況下,它是微軟,我使用的EXE是微軟Dynamics AX零售POS,無法打電話給他們,它不會工作,可能是我必須將我的程序轉換爲EXE,並將其稱爲外部程序來自MS POS :( – alphaprolix

回答

0

我最終將我的DLL更改爲無窗體的winform EXE文件,它可以接受命令行參數來複制類庫構造函數參數的功能。我在我的exe程序app.config文件中提供了以下屬性以避免混合模式程序集錯誤:

<startup useLegacyV2RuntimeActivationPolicy="true"> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> 
</startup>