问题描述
在以下问题的排查中,我们希望获得您的帮助:
We would like to get your help in troubleshooting the following:
问题是,当我将Web服务部署到登台服务器时出现了以下请求错误",但是在我的开发PC上(从Visual Studio 12到我的PC上都部署了)都可以.我有"ODTwithODAC1120320"甲骨文 我的PC上安装了客户端和开发工具.我的本地PC是32位Windows7.
The problem is that the Request Error below is occurring when I deploy the web service to our staging server, but is OK on my dev PC (both from Visual Studio 12 and when deployed to a local IIS7 instance on my PC). I have the "ODTwithODAC1120320" oracle client and dev tools installed on my PC. My local PC is 32bit Windows 7.
登台服务器是64位Windows Server 2008 R2.由于IIS在此服务器上托管了许多Web应用程序,因此该Web服务针对x86进行了编译,并在使用.NET 4.0框架版本的应用程序池中运行.
The staging server is 64bit Windows Server 2008 R2. As IIS hosts a number of web-apps on this server, the web-service was compiled for x86 and runs in an App Pool using .NET 4.0 framework version.
在登台服务器上,尚未安装ODTwithODAC1120320,而是从ODAC1120320Xcopy软件包中获取了我认为必需的dll副本,并相应地更新了web.config.我的设置基于找到的说明 在:
On the staging server, ODTwithODAC1120320 has not been installed, but instead I have taken copies of the dlls that I thought are required from the ODAC1120320Xcopy package and have updated the web.config accordingly. I based my setup on instructions found at:
http://stackoverflow.com/questions/508252/odp-net-configuration -in-web-config
NB:我不希望在登台服务器上安装相同的客户端,因为现有的应用程序已经在使用另一版本的oracle客户端.我想将较新的oracle库保留在此应用程序本地.
NB: I am not keen to install the same client on the staging server because existing applications already use another version of oracle client. I’d like to keep the newer oracle libraries local to this application.
Web服务非常简单,我不认为代码逻辑会引起问题.
The webservice is fairly straight forward and I don’t believe the code logic is causing the problem.
已附加web.config开发文件(有效)和登台(有错误)web.config文件.两者都有相同的连接字符串,但我不确定它是否甚至还在尝试使用它.如果在暂存版本中放入垃圾服务器名称,则没有任何区别.我是 寻找可能需要其他配置来解决下面复制的请求错误".
The web.config dev (works) and staging (has error) web.config files are attached. Both have the same connection string but I’m not sure if it is even trying to use it yet. If I put a rubbish server name in the staging version, it makes no difference. I’m looking for what other config might be required to solve the Request Error copied below.
请求错误:
服务器在处理请求时遇到错误.异常消息为指定的架构无效.错误:ElectorTblsDA.csdl(2,9):警告0005:找不到属性名称空间"的架构信息. ElectorTblsDA.csdl(2,27):警告 0005:找不到属性别名"的架构信息. ElectorTblsDA.csdl(2,40):错误0005:未声明"http://schemas.microsoft.com/ado/2009/02/edm/annotation:UseStrongSpatialTypes"属性. ElectorTblsDA.csdl(2,2):错误0010: 命名空间中的元素架构对于根元素,http://schemas.microsoft.com/ado/2009/11/edm 是意外的.以下名称空间之一中的预期模式: http://schemas.microsoft.com/ado/2006/04/edm , http://schemas.microsoft.com/ado/2007/05/edm , http://schemas.microsoft.com/ado/2008/09/edm .有关更多详细信息,请参见服务器日志.异常堆栈跟踪为:
The server encountered an error processing the request. The exception message is 'Schema specified is not valid. Errors: ElectorTblsDA.csdl(2,9) : warning 0005: Could not find schema information for the attribute 'Namespace'. ElectorTblsDA.csdl(2,27) : warning 0005: Could not find schema information for the attribute 'Alias'. ElectorTblsDA.csdl(2,40) : error 0005: The 'http://schemas.microsoft.com/ado/2009/02/edm/annotation:UseStrongSpatialTypes' attribute is not declared. ElectorTblsDA.csdl(2,2) : error 0010: The element Schema in namespace http://schemas.microsoft.com/ado/2009/11/edm was unexpected for the root element. The expected Schema in one of the following namespaces:http://schemas.microsoft.com/ado/2006/04/edm,http://schemas.microsoft.com/ado/2007/05/edm,http://schemas.microsoft.com/ado/2008/09/edm.'. See server logs for more details. The exception stack trace is:
在ElectorLookup.ElectorSearch.Elector(String FamilyName,String GivenName,String DateOfBirth)在c:\ mho \ dev \ ElectoralRollService \ ElectorLookup \ ElectorSearch.svc.cs:Line 89在SyncInvokeElector(Object,Object [],Object [ ])在System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object 实例,Object []输入,Object []&在System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)在System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)在System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage41(MessageRpc) rpc)位于System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage4(MessageRpc& rpc)位于System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc)位于System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage3( rpc)位于System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage2(MessageRpc&rpc)位于System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc&rpc)位于System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage1( rpc),位于System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
at ElectorLookup.ElectorSearch.Elector(String FamilyName, String GivenName, String DateOfBirth) in c:\mho\dev\ElectoralRollService\ElectorLookup\ElectorSearch.svc.cs:line 89 at SyncInvokeElector(Object , Object[] , Object[] ) at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs) at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage41(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage4(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage3(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage2(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage11(MessageRpc& rpc) at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage1(MessageRpc& rpc) at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
非常感谢您的帮助.
推荐答案
这篇关于Web服务部署问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!