오류가 나타나기 때문에 내 속성에 대한 설정자가 없지만 setter는 필요하지 않으므로 읽기 전용이어야합니다.System.Runtime.Serialization.InvalidDataContractException : 속성에 대해 설정된 메서드가 없습니다.
10
A
답변
15
수정 : 세터를 internal
으로 지정하십시오.
이것은 여전히 어셈블리 내에서 설정할 수 있지만 다른 어셈블리에서 사용하는 어셈블리 내에있는 데이터 개체에 사용할 때 좋은 트릭입니다. 어셈블리를 사용하는 어셈블리는 속성을 설정할 수 없으므로, 다양한 시리얼 라이저가 가능합니다.
4
WCF는 직렬화 된 표현 (종종 XML)으로 개체의 인스턴스를 만들어야하며 속성에 설정자가 없으면 값을 할당 할 수 없습니다. 객체는 클라이언트와 서버 사이에서 전송되지 않지만 직렬화 된 표현만으로 객체가 각 끝에 재구성되어야합니다.
2
귀하의 질문은 좀 애매하지만 나는 이것이 당신이 찾고있는 해답 같아요
당신이 속성 값을 설정하지 않고 객체를 재수 할 수 없기 때문에 직렬화는, 읽기 - 쓰기 속성에 대해 작동합니다 기본 . 속성을 읽기 전용으로 사용하려면 속성을 추가하는 것보다 직접 직렬화 인터페이스를 구현해야합니다.
DataContract serialization을 사용할 경우, 은으로 생각하면 가장 좋은 방법은 ISerializable을 구현하고 직접 메서드를 구현하는 것입니다.
관련 문제
- 1. wicket DropDownChoice 클래스에 대해 정의 된 get 메서드가 없습니다.
- 2. XXX에는 정의가없고 확장 메서드가 없습니다.
- 3. .net에 대해 설정된 파서가 있습니까?
- 4. ValidationMessageFor 부울 속성에 대해
- 5. 모달보기에 대해 modalViewControllerDidEnd 메서드가 있습니까?
- 6. 각 공용 속성에 접근 자 메서드가 있어야합니까?
- 7. 테스트 환경이 아닌 프로덕션 환경의 System.Runtime.Serialization.InvalidDataContractException
- 8. 컴파일러에서 인식하는 WebFrame 메서드가 없습니다.
- 9. Prawn :: Document에 make_table 메서드가 없습니다.
- 10. belongs_to 연결 쿼리 메서드가 없습니다.
- 11. 개체에 메서드가 없습니다. 자바 스크립트
- 12. '-setBorderColor :'메서드가 UIView 레이어에 없습니다.
- 13. Java PropertyChangeSupport가 다른 속성에 대해 실행되지 않습니다.
- 14. Print() 메서드가 클래스에 대해 알려져 있지 않습니다.
- 15. "?" HTML 스크립트 태그의 src 속성에 대해?
- 16. UI 속성에 일부 키가 없습니다.
- 17. 필드 속성에 DataMember 특성이 없습니다.
- 18. JQuery - 입력 필드의 값 속성에 설정된 값을 얻으려면 어떻게해야합니까?
- 19. 대부분의 속성에 대해 SPContext.Current가 SecurityException을 throw합니다.
- 20. 속성에 대해 가능한 두 가지 유형
- 21. private 속성에 대해 empty()를 호출합니다.
- 22. 코어 데이터 속성에 대해 유효한 값을 지정하십시오.
- 23. 이러한 유형의 속성에 대해 색인화를 사용해야합니까?
- 24. 표에서 "title"속성에 대해 JSF로 날짜를 변환하십시오.
- 25. Castle Windsor : 메서드가 아닌 메서드를 factory 속성에 연결하는 방법
- 26. ASP.NET 4의 ListView에 Refresh() 메서드가 없습니다?
- 27. MethodExpression.invoke() 메서드가 예외를 찾을 수 없습니다.
- 28. UIWindows 클래스 하위 뷰 메서드가 없습니다.
- 29. ISingleResult에 'Single'에 대한 정의가없고 'Single'확장 메서드가 없습니다.
- 30. Sencha Touch 오류 : 'myapp.mainpanel에 setActiveItem 메서드가 없습니다'
Protected는 클래스 외부에서 속성을 설정할 수 없기 때문에 비 직렬화가 여전히 실패합니다. –
Thanks Slugster !!! 답장을 원하시면 ... – BreakHead
@ Dan - 제 편집을 확인하십시오. 나는 이걸 전에 만난 줄 알았지 만 돌아가서 어떻게 처리했는지 확인해야했다. 당신은 맞습니다 - 나는 처음에 * 보호 *를 시도했지만 작동하지 않는다는 것을 알았으므로 대신 * 내부 *를 사용했습니다. – slugster