0

List<SPSection>의 개체가 있고 SPSectionstringList<SPListItem>을 포함하는 사용자 지정 클래스이고 SPListItem은 항목을 나타내는 SharePoint 개체입니다.복잡한 객체를 직렬화하여 ViewState에 배치하는 방법은 무엇입니까?

이것을 ViewState에 저장하고 싶지만 어떻게해야할지 모르겠다. 이 직렬화하거나 일부 이진 문자열로 변환 할 수있는 방법이 있나요, ViewState 넣을 수 있습니다. 또한 ViewState에서 값을 다시 가져올 때 어떻게 다시 List<SPSection>으로 변환 할 수 있습니까?

감사

+0

어떻게 지금까지 직렬화하려고 했습니까? – rossisdead

답변

0

이 작업을 수행하지 마십시오.SPListItem 인스턴스 은 요청간에 유지할 수 없습니다.. 이들은 + SPSite에 따라 각각 SPList 인스턴스에 따라 달라지며 자동으로 인스턴스화되고 SPContext을 통해 제공됩니다.

당신이 할 수있는 일은 요청 사이에 아이템 ID을 유지하는 것입니다. 맞춤 클래스는 이진 직렬화가 가능해야합니다 (예 : [Serializable] 인터페이스로 표시). 그런 다음 주어진 키 아래에 객체를 뷰 상태로 저장합니다 (ViewState["MyObjects"] = myObjects;).

+0

'SPList'에서'GetDataTable'을 사용하고 특정 항목을 필터링 할 수 있습니다. 또한 Event Receivers의 경우 [이 기사] (http://msdn.microsoft.com/ko-kr/library/gg981880(v=office.14)aspx # UsingEventReceiversInSPFPart2_LoggingEvents)에서 속성 가방에서 GetEnumerator를 사용하여 빌드하는 방법을 보여줍니다. 'DictionaryEntry' 아이템 세트. – PeterX

관련 문제