2009-11-17 31 views
0

的在我的應用程序的煩惱,我用一些DLL,讓我們說library.dll,版本1.0 在我的web服務,我也用library.dll,但2.0版更新Web引用給出了不同版本的DLL

當我做一個更新的webreference,dll裏面的類也會在webreference中生成。

這給了麻煩,因爲在我的應用程序中,在DLL中定義的類現在也可以在引用中使用,並且存在不匹配。

我該如何解決這個問題?我需要能夠告訴web服務在以這種或那種方式更新web引用時忽略dll代碼。

我使用Visual Studio 2008

回答

0

好的,我自己找到了解決方案。

該擴展必須部署在GAC中,並且必須更改machine.config。

是這樣的:

<system.xml.serialization> 
    <schemaImporterExtensions> 
     <add name="SchemaImporterExtensions" 
      type="Library.DesignTime.SchemaImporterExtension, 
       Library.Framework.DesignTime" /> 
    </schemaImporterExtensions> 
</system.xml.serialization> 
0

你可以生成客戶端代理時所使用的reference開關:

svcutil.exe /reference:c:\library.dll http://example.com/service.svc?wsdl 

這將尋找班library.dll是WSDL中的相同,它贏得不要在代理中重新創建它們(通過相同的類,我的意思是相同的名稱空間和類型名稱)。

+0

,如果我有這個問題,5分dll的? – Natrium 2009-11-17 13:10:55

+0

您可以爲每個庫多次使用'/ reference'開關。 – 2009-11-17 13:13:44

+0

我有一個web服務,而不是一個wcf服務。這也會起作用嗎? – Natrium 2009-11-17 13:16:22

相關問題