2011-07-27 1 views
1

누군가 올바른 방향으로 나를 가리킬 수 있습니까? 이중 사용을 위해 일부 클래스를 직렬화하려고합니다. 즉, 1) 데이터를 XML 형식으로 로컬로 저장하고 2) SOAP을 사용하여 웹 서비스에 클래스를 전송하는 것입니다.개인 회원과 함께 로컬 및 SOAP에 모두 직렬화 C#

클래스에 로컬로 저장하려는 일부 (개인) 멤버가 있지만 전선을 통해이를 원하지 않습니다. 같은 학급에 가까운 2 개의 사본을 가지지 않고 이것을 할 수있는 방법이 있습니까?

편집 :이 게시물의 요점은 개인 회원을 직렬화하는 가장 좋은 방법은 아니지만 내 데이터를 로컬로 직렬화하여 모든 XML 정보를 XML로 저장할 수있는 방법을 찾는 것입니다. 내 로컬 상자, 그리고 아직 그 멤버의 정의 된 서브셋을 직렬화 할 수 있도록 SOAP을 통해 웹 서비스에 전달할 수 있습니다.

희망이 맞습니다!

+0

XML 직렬화에 대한 좋은 링크입니다 개인 멤버를 직렬화하지 않으므로 더 나은 질문은 개인 멤버를 직렬화하는 방법입니다. –

+0

그 구성원은 공개라고 가정합니다. 또는 private 멤버를 serialize하는 다른 serialization 메서드를 사용할 수 있습니다. – Tizz

+0

@ 존 - 특히 XmlSerializer는 그렇지 않습니다. 당신은'DataContractSerializer'가 (매우 제한적인) "XML Serialization"을 위해 사용될 수 있다고 주장 할 수 있지만, private 멤버에서는 작동합니다. –

답변

2

나는 WCF는 SOAP 목적으로 사용하고 DataContract와 직렬화에 참여로 개인 회원을 장식 할 수 있는지 년대 DataContractSerializer를 사용하는 것이 좋습니다 것

여기 DataContract 사용 http://msdn.microsoft.com/en-us/library/ms733127.aspx

+0

예, 이것에 관해 읽었습니다. 아마도 이것이 구현하려고하는 것일 수 있습니다.하지만 내 게시물의 요점을 놓친 것 같습니다. 개인 멤버를 serialize하는 가장 좋은 방법은 무엇인지 결정하는 것이 아니라 내 로컬 데이터를 직렬화하여 내 모든 클래스 정보를 내 로컬 상자에 XML로 저장할 수있는 방법을 찾는 것입니다. 해당 멤버의 하위 집합을 직렬화하여 SOAP을 통해 웹 서비스에 전달할 수 있습니다. – Tizz

+0

미안하지만 두 가지 표현이 필요하다는 것을 알지 못했습니다. 로컬 XML 생성에 XamlSerializer (Xaml은 Xml이 아니라)를 사용하고 하위 집합 생성을 위해 DataContractSerializer를 사용할 수도 있습니다. – cmsjr