2011-02-22 97 views
1

我有一個簡單的Silverlight項目,它只是在IIS 7.5系統上獲取一組實體(EF 4)。這裏是我的web配置:當通過域服務(WCF RIA)加載實體時出現DomainOperationException

<configuration> 
    <system.webServer> 
    <modules runAllManagedModulesForAllRequests="true"> 
     <add name="DomainServiceModule" preCondition="managedHandler" type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> 
    </modules> 
    <validation validateIntegratedModeConfiguration="false" /> 
    </system.webServer> 
    <system.web> 
    <httpModules> 
     <add name="DomainServiceModule" type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> 
    </httpModules> 
    <compilation debug="true" targetFramework="4.0"> 
     <assemblies> 
     <add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 
     </assemblies> 
    </compilation> 
    </system.web> 
    <connectionStrings> 
    <add name="BusinessProcessEntities" connectionString="metadata=res://*/ForecastModel.csdl|res://*/ForecastModel.ssdl|res://*/ForecastModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=usd-ctct-app-01.mydomain.net;Initial Catalog=BusinessProcess;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" /> 
    </connectionStrings> 
    <system.serviceModel> 
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" /> 
    </system.serviceModel> 
</configuration> 

當我瀏覽到http://forecasting.mydomain.net/ClientBin/ForecastTool_2-Web-ForecastDomainSvc.svc?wsdl我看到服務網頁。小提琴家給了我什麼都沒有真正去繼續。 SQL事件探查器不顯示查詢命中數據庫服務器。正如你所期望的,一切都與卡西尼合作。這是顯示錯誤消息的彈出消息。只是不知道我在這裏做錯了什麼。我覺得這應該是簡單的比它現在...

Error Dialog

+0

我也想提一下,RIA似乎工作正常,並通過msiexec安裝在服務器模式下。正如我所提到的,我認爲問題在於EF,根本沒有任何查詢觸及數據庫。 – 2011-02-22 17:39:49

回答

1

我加<identity impersonate="false" />在web.config中,我使用[RequiresRole()]根據需要限制訪問的方法。不知道爲什麼我這麼難過。這基本上是我在常規WCF中所做的。