操作过程中出现异常

正常代码

private TestServiceClient proxy = new TestServiceClient();
EndpointAddress address = new EndpointAddress("http://localhost:2345/TestService.svc");
...
...
proxy.Endpoint.Address = address;

修改为如下代码报错

private TestServiceClient proxy = new TestServiceClient();
EndpointAddress address = new EndpointAddress("http://localhost:12345/TestService.svc");
...
...
proxy.Endpoint.Address = address;

 

private TestServiceClient proxy = new TestServiceClient();
EndpointAddress address = new EndpointAddress("http://192.168.1.184:12345/TestService.svc");
...
...
proxy.Endpoint.Address = address;

报错信息如下: 

System.Reflection.TargetInvocationException: 操作过程中出现异常,结果无效。有关异常的详细信息,请查看 InnerException。 ---> System.ServiceModel.CommunicationException: 尝试向 URI“http://localhost:12345/TestService.svc”发出请求时出错。这可能是由于试图以跨域方式访问服务而又没有正确的跨域策略,或策略不适用于 SOAP 服务。您可能需要与该服务的所有者联系,以发布跨域策略文件并确保该文件允许发送 SOAP 相关的 HTTP 标头。出现此错误也可能是由于使用的是 Web 服务代理中的内部类型而没有使用 InternalsVisibleToAttribute 属性。有关详细信息,请参阅内部异常。 ---> System.Security.SecurityException ---> System.Security.SecurityException: 安全性错误。
   位于 System.Net.Browser.BrowserHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult)
   位于 System.Net.Browser.BrowserHttpWebRequest.<>c__DisplayClass5.<EndGetResponse>b__4(Object sendState)
   位于 System.Net.Browser.AsyncHelper.<>c__DisplayClass4.<BeginOnUI>b__1(Object sendState)
   --- 内部异常堆栈跟踪的结尾 ---
   位于 System.Net.Browser.AsyncHelper.BeginOnUI(SendOrPostCallback beginMethod, Object state)
   位于 System.Net.Browser.BrowserHttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   位于 System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelAsyncRequest.CompleteGetResponse(IAsyncResult result)
   --- 内部异常堆栈跟踪的结尾 ---
   位于 System.ServiceModel.AsyncResult.End[TAsyncResult](IAsyncResult result)
   位于 System.ServiceModel.Channels.ServiceChannel.EndCall(String action, Object[] outs, IAsyncResult result)
   位于 System.ServiceModel.ClientBase`1.ChannelBase`1.EndInvoke(String methodName, Object[] args, IAsyncResult result)
   位于 WebServiceTest.TestService.TestServiceClient.TestServiceClientChannel.EndGetServerTime(IAsyncResult result)
   位于 WebServiceTest.TestService.TestServiceClient.WebServiceTest.TestService.TestService.EndGetServerTime(IAsyncResult result)
   位于 WebServiceTest.TestService.TestServiceClient.OnEndGetServerTime(IAsyncResult result)
   位于 System.ServiceModel.ClientBase`1.OnAsyncCallCompleted(IAsyncResult result)
   --- 内部异常堆栈跟踪的结尾 ---
   位于 System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary()
   位于 WebServiceTest.TestService.GetServerTimeCompletedEventArgs.get_Result()
   位于 WebServiceTest.MainPage.proxy_GetServerTimeCompleted(Object sender, GetServerTimeCompletedEventArgs e)

posted @ 2011-09-07 14:40  jacky_j2ee  阅读(8411)  评论(2编辑  收藏  举报