MonoDevelop 2.8 Beta 2 및 XCode 4이있는 MonoTouch 4.2.1을 사용하고 있습니다. slsvcutil 프록시 생성자가 생성 한 클래스를 통해 .Net 웹 서비스 메서드를 호출하려고합니다.MonoTouch 4.2는 장치에서 실행될 때 System.ServiceModel.EndpointAddress()를 지원하지 않습니다 (시뮬레이터에서 작동)
iPhone 시뮬레이터에서 응용 프로그램을 테스트 할 때 코드가 작동하고 서버에 연결하여 웹 서비스 요청을 전송합니다.
그러나 iOS 4.3.5가 적용된 iPhone 4에서 앱을 테스트하면 System.ServiceModel.EndpointAddress() 생성자를 호출 할 때 앱이 서버에 연결되지 않습니다.
MonoTouch 4.0.7에서 제대로 작동했음을 유의하십시오.
Attempting to JIT compile method 'System.Linq.Enumerable:FirstOrDefault<System.ServiceModel.Description.OperationDescription> (System.Collections.Generic.IEnumerable`1<System.ServiceModel.Description.OperationDescription>,System.Func`2<System.ServiceModel.Description.OperationDescription, bool>)' while running with --aot-only.
것 같다 다음 줄이 충돌하는 것입니다 :
new System.ServiceModel.EndpointAddress(
string.Format(System.Globalization.CultureInfo.InvariantCulture, "http://{0}:{1}/Dartfish/RemoteControlServices/",
address, port)));
오류 스택 :
[ERROR] FATAL UNHANDLED EXCEPTION: System.ExecutionEngineException: Attempting to JIT compile method
'System.Linq.Enumerable:FirstOrDefault<System.ServiceModel.Description.OperationDescription> (System.Collections.Generic.IEnumerable`1<System.ServiceModel.Description.OperationDescription>,System.Func`2 System.ServiceModel.Description.OperationDescription, bool)' while running with --aot-only.
at System.ServiceModel.Description.ContractDescriptionGenerator.GetOrCreateOperation (System.ServiceModel.Description.ContractDescription cd, System.Reflection.MethodInfo mi, System.Reflection.MethodInfo serviceMethod, System.ServiceModel.OperationContractAttribute oca, System.Type asyncReturnType, Boolean isCallback, System.Type givenServiceType)
at System.ServiceModel.Description.ContractDescriptionGenerator.FillOperationsForInterface (System.ServiceModel.Description.ContractDescription cd, System.Type exactContractType, System.Type givenServiceType, Boolean isCallback)
at System.ServiceModel.Description.ContractDescriptionGenerator.GetContractInternal (System.Type givenContractType, System.Type givenServiceType, System.Type serviceTypeForCallback)
at System.ServiceModel.Description.ContractDescriptionGenerator.GetContract (System.Type givenContractType, System.Type givenServiceType, System.Type serviceTypeForCallback)
at System.ServiceModel.Description.ContractDescriptionGenerator.GetContract (System.Type givenContractType, System.Type givenServiceType)
at System.ServiceModel.Description.ContractDescriptionGenerator.GetContract (System.Type contractType)
at System.ServiceModel.Description.ContractDescription.GetContract (System.Type contractType)
at System.ServiceModel.ChannelFactory`1[ICommandMgr].CreateDescription()
m.ServiceModel.ChannelFactory`1[ICommandMgr]..ctor (System.Type type)
at System.ServiceModel.ChannelFactory`1[ICommandMgr]..ctor (System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress)
at System.ServiceModel.ClientBase`1[ICommandMgr].Initialize (System.ServiceModel.InstanceContext instance, System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress)
at System.ServiceModel.ClientBase`1[ICommandMgr]..ctor (System.ServiceModel.InstanceContext instance, System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress)
at System.ServiceModel.ClientBase`1[ICommandMgr]..ctor (System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress)
at CommandMgrClient..ctor (System.ServiceModel.Channels.
at Dartfish.ViewModel.RemoteControlViewModel.ProxyTransportViewModel.DoCommandMgrOpenAsync (System.String address, Int32 port)
그것은 돈의
우리는 오류가 '티 컴파일러 옵션은 "링크 SDK 어셈블리 만"이므로 컴파일러 문제로 보입니다. 누군가가이 충돌을 해결하는 방법을 알고 있습니까? 아니면 새로운 MonoTouch 버전/마지막 MonoTouch 버전의 버그입니까?
** "새로운 System.ServiceModel.EndpointAddress (...)"**로 문제를 복제 할 수 없습니다. http://bugzilla.xamarin.com에서 버그 보고서를 작성하고 문제를 보여주는 작고 독립적 인 테스트 케이스를 포함하십시오. 감사합니다 – poupou
버그가보고되었습니다 : http://bugzilla.xamarin.com/show_bug.cgi?id=1053 – Nicolas
MonoTouch 4.2.1을 다시 설치하려고했는데 현재 정상적으로 작동하고 있습니다. 시간을 내서 죄송합니다! – Nicolas