2012-04-26 122 views
1

我想在IIS中託管WCF服務,但出現以下錯誤。 「配置節'oracle.dataaccess.client'不能被讀取,因爲它缺少一個節聲明」託管WCF服務時出錯

我已經添加了下面的程序集。

add assembly="Oracle.DataAccess, Version=2.111.7.20, Culture=neutral, PublicKeyToken=89B483F429C47342" 

,並宣佈

<oracle.dataaccess.client> 
    <settings> 
     <add name="SubbType" value="udtMapping factoryName='Project.TypeObjects.TYP_SUBMISSION_PROCESSFactory, PublicKeyToken=NULL'   typeName='TYP_SUBMISSION_PROCESS' schemaName='ABC' dataSource='XYZ'"/>  
    </settings> 
</oracle.dataaccess.client> 

有什麼可以爲這個錯誤的原因是什麼?

+0

<添加名稱= 「SubbType」 值=「udtMapping factoryName = 'Project.TypeObjects.TYP_SUBMISSION_PROCESSFactory公鑰= NULL' typeName ='TYP_SUBMISSION_PROCESS'schemaName ='ABC'dataSource ='XYZ'「/>在web.config中添加了這個 – user1208862 2012-04-26 07:37:37

+0

您使用的是64位操作系統嗎? – 2014-09-03 07:24:20

回答

5

如錯誤所述,您缺少一個部分聲明。事情是這樣的:

<configSections> 
    <section name="oracle.dataaccess.client" 
      type="Oracle.DataAccess.ClientSettings, Oracle.DataAccess, Version=2.111.7.20, Culture=neutral, PublicKeyToken=89B483F429C47342" /> 
</configSections> 

請注意:這只是一個例子,我不知道到底什麼是需要在特定情況下,type屬性。

3

我有IIS 7.5的這個問題。缺少的是machine.config中的「oracle.dataaccess.client」部分。 Oracle的ODP.NET安裝程序假設將此部分添加到machine.config中,但它缺失。因此,如上所述,您可以將缺少的部分添加到web.config中,或將缺少的部分添加到machine.config。

的Machine.config:

<section name="oracle.dataaccess.client" type="System.Data.Common.DbProviderConfigurationHandler, System.Data,版本= 4.0.0.0,文化=中性公鑰= b77a5c561934e089" />

1

我也有這個問題,IIS 7.5上64位服務器和32位oracle客戶端和「oracle.dataaccess.client」部分僅在... Framework64/v4.0.30319/Config/machine.config中缺失。在32位中有部分定義。在我的應用程序中加載web.config。

所以我建議你檢查兩臺機器的配置。 ODAC客戶端(32位/ 64位)只更改一個。

2

增加這部分申報工作對我來說:

<configSections> 
    <section name="oracle.manageddataaccess.client" 
    type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.112.3.50, Culture=neutral, PublicKeyToken=89b483f429c47342" /> 
</configSections>