문제

내가 사용하여 EpiServer CMS5R2 에서 새로운 프로젝트입니다.나는 임무가 주어 왔으로 만들기 CustomPageProvider 링크는 다시 기존의 엔드 저장소는 우리 제어 할 수 없습니다.그러나를 찾고에서 샘플 공급자(XmlPageProvider)그것은 공급자에 대한 책임을 유지하는 메타 정보 EpiServer 에 대한 요구를 들어(서 examples.xml 문서):

<page id="10011" parent="10010" pagetypeid="3" versionid="1" security="Everyone:Read;Administrators:Create,Edit">
  <property name="PageGUID">35a988fe-2bc1-4e45-a41f-3a009a660551</property>
  <property name="PageTypeID">3</property>
  <property name="PageWorkStatus">4</property>
  <property name="PageFolderID">118</property>
  <property name="PageTypeName">[Public] Standard page</property>
  <property name="PageMasterLanguageBranch">en</property>
  <property name="PageLanguageBranch">en</property>
  <!---- SNIP! ---->
  <property name="Heading">A subpage</property>
  <property name="MainBody"><p>an external subpage</p></property>
  <property name="SecondaryBody"><p>second body</p></property>
  <property name="MetaAuthor">John Doe</property>
</page>

나는 조금 걱정이 나는 것을 선호 EpiServer 돌입니다.이것은 높은 볼륨 사이트와 좋은 것이라면 내 서비스가 없었을 포함 추가 데이터를 저장을 유지하기 위해 이 정보가 있을 것입 캐시 가능성을 우려합니다.

그래서 질문:

  1. 은 사용자 지정 페이지 공급자로 작업에 적합한 도구를?

  2. 그렇다면,방법이 있을 책임에 다시 EpiServer?

  3. 하지 않을 경우,너는 나에게 어떤 추천하는 최선의 방법에 접근 저장을 이 데이터는?그것은 이상이 될 것입니다 무엇에서 오는 우리의 데이터 소스입니다.

많은 감사!

로버트 스티븐슨-Leggett

도움이 되었습니까?

해결책

이에 제 질문에 EpiServer CMS 포럼:http://world.episerver.com/Forum/Pages/thread.aspx?id=27574&pageIndex=1

RE:사용자 지정 페이지 공급자에 의해 게시물:Johan Björnfot 에 03 월 2009 년 13:43:28

당신이하지 않는 저장하는 메타 정보 백엔드에서 저장합니다.거기 도우미 방법 PageProviderBase,예를 들어,InitializePageData(세트 메타데이터 특성)과 SetPropertyValues (세트 메타와/또는 사용자 정의 proeprties) 는 데 도움이 당신과 함께 초기화 PageData 개체입니다.

그래서 당신의 질문에 응답:

  1. 같은 소리 PageProvider 에 맞게 수있는 잘 당신의 목적이 있다.

  2. 사용 InitializePageData 을 처리하 MetaDatas(InitializePageData 정 기본값으로 대한 메타 속성 예:상태를 출판 및합니다).는 경우에 당신은 그러나을 설정하려면 다른 돔 메타 데이터 속성 값보다 기본값으로 초기화 등상태(Publish 등.) 당신이 할 수 있는 호출하여 SetPropertyValues 습니다.

  3. 는 경우 추가적인 데이터는 저장해야 합 외부 저장소는 거기에 에 대한 몇 가지 옵션이(주문 테이블의 db 에 기반 etc.).는 중 하나를 사용에 의존 환경 데이터 형식을 저장할 etc.

다른 팁

사용자 정의 페이지 제공 업체를 사용하려면 많은 고객이없는 엔터프라이즈 라이센스가 필요합니다. 그 문제에 대해 고객과 확인하는 것을 잊지 마십시오 ...

여전히 페이지 가이드, ID 및 URL 관리를 처리해야합니다. 이는 외부 데이터 저장소에서 까다로울 수 있습니다. MappedPageProvider를 찾아보십시오 - 그것은 당신을 위해 모든 것을 처리합니다.

페이지 제공 업체는 외부 데이터 소스의 데이터를 배관하는 좋은 방법이며 귀하의 경우 적절한 것으로 보입니다.

즉, 나는 당신이 배치해야 할 많은 배관이 있기 때문에 여기에 조심할 것입니다. 대규모 데이터 소스의 성능에 대해 상당한주의를 기울여야합니다.

에피소어가 페이지 데이터를 언제 그리고 어떻게 요청하는지 정확하게 이해하는 것이 중요합니다. 즉, 페이지 캐시를 사용할 때와 데이터 소스를 누르려고 할 때 궁극적으로 특히 데이터 소스에 대한 링크가 비교적 느린 경우 효율적으로 검색 할 수있는 형식으로 페이지에 대한 많은 정보를 캐시해야합니다.

이것에 대한 꽤 포괄적 인 토론이 있습니다. 에피소버 페이지 제공 업체 및 성능.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top