2012-01-16 2 views
1

저는 고객이 제공 한 .Net API (여러 .Net DLL)를 사용하는 프로젝트에서 작업하고 있습니다. 이 API를 기반으로 응용 프로그램을 만들었습니다. 응용 프로그램이 내 컴퓨터에서 예상대로 작동합니다. 그러나 클라이언트 컴퓨터에 배포하려고 시도했을 때 다소 일반적인 예외가 있습니다. 나는이 예외에 대한 인터넷 검색을 시도했지만 결정적인 것은 발견되지 않았다..NET XML 직렬화 예외 처리 방법?

이 API에 대한 대략적인 아이디어를 제공하기 위해 웹 서비스 소비자를 래핑하므로 메소드 매개 변수를 XML로 마샬링해야합니다 (소스 코드가 없습니다). 다음은 예외에 대한 스택 추적입니다. -

System.InvalidOperationException : XML 문서를 생성하는 동안 오류가 발생했습니다. ---> System.ArgumentException : 문자열 길이가 0 일 길이 일 수 없습니다. System.Xml.Serialization.XmlSerializer.Serialize (XmlWriter를 XmlWriter를에서 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriterStreamInformation.Write5_StreamInformation (객체 O) --- 내부 예외 스택 추적의 끝 ---, 개체 오, XmlSerializerNamespaces에서 네임 스페이스, 문자열 인코딩 스타일 Microsoft.SqlServer.DataWarehouse.Loader.StringSerializer`1.Serialize (TSerializable 예에서 System.Xml.Serialization.XmlSerializer.Serialize (TextWriter에 TextWriter를, 개체 O, XmlSerializerNamespaces 네임 스페이스)에서, 문자열 ID)) at Microsoft.SqlServer.DataWarehouse.Loader.LoaderClient.BeginExecuteBinary (AsyncCallbackendLoadCallback Microsoft.SqlServer.DataWarehouse.Loader.AABinLoaderClient.CofingDoLoad (문자열에서, AsyncCallback startSendingDataCallback, 객체 상태) 는> []는 configVals)

는 이탤릭체 굵은 프레임의 프레임 동안 우리의 응용 프로그램을 나타내는 클라이언트의 API를 나타냅니다. 과거에이 예외가 발생하여 해결 방법을 알고있는 사람은 알려 주시기 바랍니다.

+2

사용자 정의 xml 직렬화를 사용합니까, 아니면 직렬화를 생성합니까? – jermny

답변

1

XML을 구문 분석 할 때 이런 종류의 오류가 발생했습니다. 문자열에서 특정 위치를 찾으려고 할 때 "문자열의 길이가 0 일 수 없음"오류가 가장 많이 보입니다. 이 API가 XML 네임 스페이스를 사용하는지 알고 있습니까?

코드를 보지 않고도 문제를 자세히 분석하는 것은 어렵습니다.

+0

전체 스택 트레이스를 업데이트 했으므로 주석을 달고 주석을 달 수 있습니다. – amod

+0

API가 데이터를 직렬화하는 경우 해결 방법을 시도하기가 어렵습니다. 직렬화 할 데이터를 제공하고 있습니까? – mrstebo

+0

예 api가 나를 위해 데이터를 직렬화하고 있습니다. – amod