Mike G
그는 물었다 12년 전
1

삭제 / 교체하십니까 노드입니다 E4X (AS3 - Flex)

39 m, i& 건물 안에 있는 '플렉스 응용 프로그램 및 사용 열거합니다 / 격자선 제어입니다' '.NET' 웹 애플리케이션. 정말 긴 얘기를 할 수 있는 XML webservice 시리얼화된 객체에는 파선-짧은 실로나는 얻을 수 있다. I have a 페이지를 페이지가 셨으며 수에 제한이 있을 수 있습니다. # 39, ve 수행됨을 i& 격자선과 그것으로이라엘 페이지이므로 몇 가지 기본 데이터 처리 및 페이지 전체의 정렬하려면 필터링합니다.

이와 관련해 페이징의 I& # 39 m, XML, 이를 위한 사전 사용하여 페이지의 키잉된 저장하고 호출이네요 이렇게 볼 때, ve 에 저장된 사용자 페이지에 내가 할 수 있는 이 사전은 뒤로를 I& # 39 에서 XML webservice 건드리지 않고 눈 국내 메모리. 기본적으로 각 데이터 캐시를 읽어들입니다 I& # 39, m 에서 데이터 페이지의 웹 서비스 호출.

내 캐시에는 만료시킬 수 있는 몇 가지 있습니다. 필터링 및 정렬 오른길로 주요 요인이다. 그러나 사용자가 한 행의 data-in 뷰별로 격자선을 연 편집기에는 편집할 수 있습니다. 그들은 편집하십시오 데이터를 데이터 표시되려면 행일 스크램블된 오래되었는가 발생할 수 있다. 나는 할 수 있지만, 전체 페이지를 쉽게 들어갈 수 있으며, 웹 서비스 데이터 페이지 크기 때문에 많은 양의 기록을 보면서 읽어들이려면 런타임에 설정되었습니다 할 수도 있어요.

그럼 난 이제 내 심장 문제를 겪고 있는 나는. 내가 데이터를 가져오는 것을 막기 위해 전체 페이지를 다시 묻는 전화를 걸고 webservice 에 완전히 업데이트되도록 레코드 (편집기에는 데이터를 저장하고 처리하는).

39 m, 사용자 정의 사용하기 위해 그 이후 I& 데릭쉐퍼드와 객체에는 직렬화할 서버의 XML (이는 다른 구간들을 처리됩니까 이미 우리 소프트웨어). 모든 데이터가 XML 의 통해 처리됩니까 e4x. 사전에 캐시에는 xmllist 저장됩니다.

  • 이제 내 code.* 내가 보여줄게

var idOfReplacee:String = this._WebService.GetSingleModelXml.lastResult.*[0].*[0][email protected];
var xmlToReplace:XMLList = this._DataPages[this._Options.PageIndex].Data.(@Id == idOfReplacee);

if(xmlToReplace.length() > 0)
{
    delete (this._DataPages[this._Options.PageIndex].Data.(@Id == idOfReplacee)[0]);
    this._DataPages[this._Options.PageIndex].Data += this._WebService.GetSingleModelXml.lastResult.*[0].*[0];
}

기본적으로 들어가서 id 노드입니다 복귀시킴 싶다. 그럼 내가 cache& # 39 의 데이터 파일을 찾을 수 있는 속성 ('XMLList'). 내가 쓰고 있는 '이후 두 번째 줄에 smartupdate 필터링합니다 되돌려줍니다 XMLList'.

나는 이 문제가 있는 것은 할말이다 삭제하시겠습니까 내가 할 수 없다는 것이 그 줄을 노드입니다 목록에서 삭제. 다음 줄을 선 삭제 (delete) 였다. # 39, ve i& 추가했어야 노드입니다 목록에 추가합니다.

How do I 바꾸거나 삭제할 것을 노드입니다 (릴리즈됨 노드로서 내가 찾을 필터에서 기술서임을 빼냅니다 캐시에는 .Data 등록)???

이 모든 것은 내 할 때 이것은 게시하기를 임상의들의 이스케이프된 com/go/4e6b330akr 밑줄 있기를 바랍니다! 그렇지 않으면 'this.&amp # 95 = 이' ..

답변 4 개

보세요들 답을 주셔서 감사합니다.

@Theo: 대체 여러 가지 방법을 찾았다. 그러나 결코, 결코 어떤 이유로 이 명단요 업데이트하십시오 오류

@Matt: 내가 생각 아웃하려면 솔루션입니다. 하지만, 이 문제를 어떻게 wasn& t # 39 에서 오는 너희는너희가 제안됩니다 수행됨 삭제하시겠습니까 열거합니다 (적어도 내가 어떻게 할꺼이나 이 슬라이드에서는).

데이터 사전 객체인지 목록니다 _DataPages 재산에 대한 정의를 노드 () 는 이전 필터링합니다 의해 도착한 다른 XML 문서).

<Models>
     <Definition Id='1' />
     <Definition Id='2' />
</Models>

내가 이렇게 됐지 리틀이에요 한ᆞ미:

//gets the index of the node to replace from the same filter
var childIndex:int = (this._DataPages[this._Options.PageIndex].Data.(@Id == idOfReplacee)[0]).childIndex();
//deletes the node from the list
delete this._DataPages[this._Options.PageIndex].Data[childIndex];
//appends the new node from the webservice to the list
this._DataPages[this._Options.PageIndex].Data += this._WebService.GetSingleModelXml.lastResult.*[0].*[0];

그래서 내가 가진 것은 기본적으로 색인입니다 얻을 수 있는 데이터 재산이잖아 노드입니다 XMLList 여기서 내가 키워드 삭제하시겠습니까 제외시키려면 명단요 에서 사용할 수 있습니다. 나의 새로운 노드 명단요 자도으로 이 + =

39 m, 그래서 ActiveX 또는 mizilla XmlDocument 물건을 사용하는 i& 전화하시기 creditbank. &quot SelectSingleNode"; 사용 후 &quot replaceChild"; 이렇게 하려면 같은 얘기입니다. 아 뭐, 적어도 이 포럼에 it 는 어떤 다른 사람이 알 수 있다. 내가 알지 못하는 내 자신이 어떤 문제가 발생합니까 절차는 오토메이티드 질문이예요 아마도 이 질문에 답해야 도움말에서는 따라오렴 따라 다른 사람이 더 잘 파악할 수 있도록 할 계획이다.

이 과정은 매우 오래된 질문 # 39, t, but I don& 그러니까말이야 com/go/lrvid4005_ps_kr (내가 생각하기에) 가장 간단한 이 문제에 대한 해결 방안을.

여기서 s # 39, 테오 경식도 올바른 방향을 바꿀 수 있는 방법이 있지만, there& 오류뿐만 사용했던 (그리고 거의 다 있는 것은 E4X 는 함수).

이 전략은 이 할 것이라고 생각한다.

oldNode.parent().replace(oldNode.childIndex(), newNode);

'복귀시킴 ()' 등 다양한 유형의 만들 수 있지만, 그 중 첫 번째 매개변수에서 xlm 객체에는 아파이크 않습니다.

아마도 code&gt replace&lt /code&gt &lt 사용할 수 있습니다;;;; 대신?

var oldNode : XML = this._DataPages[this._Options.PageIndex].Data.(@Id == idOfReplacee)[0];
var newNode : XML = this._WebService.GetSingleModelXml.lastResult.*[0].*[0];    

oldNode.parent.replace(oldNode, newNode);

39 만 t 이 문제를 바로 볼 수 있는, 그래서 내가 don& 벤처 한 것 같다. # 39, ve got '이' 삭제하시겠습니까 줄이 you& at 목록의 맨 첫 번째 항목을 찾고 있다 level 디스크입니다. diskid 특성은 &quot Id"; '와 같은 값을 이도프레프리스트'. # 39 don& 합니다, t need to dig 파고들기 일치하는 것을 알 수 있는 XML 구조를 id.

이 시도하시겠습니까 대신:

delete (this._DataPages[this._Options.PageIndex].Data..(@Id == idOfReplacee)[0]);

(공지 # 39, & # 39, .& 추가 데이터 '후'). 더 쉽게 디버그입니다 설정하여 이를 수 있다면, 이 코드의 정지점을 두 번째 줄에 있는 것처럼 보이는데, XMLList 너회가 게시하기를 보장할 수 있을 것으로 기대하고 있다.