Frage

Wenn Sie 2 Medienelemente haben, die denselben Namen haben, aber unterschiedliche Erweiterungen, kann SiteCore nicht zwischen ihnen unterscheiden.

Beispiel:

  • / ~ / media / myfile. pdf

  • / ~ / media / myfile. doc

Wenn diese URLs angefordert werden, wird die PDF-Datei in beiden Fällen zurückgegeben.

Ich verstehe, dass diese Sitecore die Erweiterung in der Anfrage ignoriert, und dass tatsächlich das eigentliche Problem tatsächlich ist, dass ich im Wesentlichen zwei Elemente mit demselben Pfad in der Medienbibliothek habe:

Sitecore / Media Library / MyFile

Ich denke jedoch, es ist jedoch ein vernünftiger, dass unser Kunde sowohl PDF- als auch DOC-Versionen desselben Dokuments in einem einzigen Knoten speichern möchte.

Ich fand diesen Artikel, der das damit verbundene Problem behandelt, um sicherzustellen, dass die gewünschte Medienpunktdateiverlängerung gültig ist:

http:// www .cognifide.com / Blogs / Sitecore / SiteCore-dient-Medien-Artikel-sogar mit falscher Erweiterungen /

Dies basiert jedoch immer noch auf der Voraussetzung, dass Sie an erster Stelle den richtigen Sitecore-Artikel erhalten haben (was im Fall der Anforderung für myFile.doc nicht trifft).

Ich denke, meine Frage ist, ob es einen Weg gibt, um SiteCore zu verhindern, einfach den ersten Punkt zu erhalten, der er findet und die Erweiterung berücksichtigt.

War es hilfreich?

Lösung

Sie können den Medienanbieter oder den Artikel-Resolver möglicherweise im Web.config überschreiben, und wenn die angeforderte Ressource ein Medienelement ist:

    .
  1. Sehen Sie, ob es ein Geschwister mit demselben Namen hat
  2. Wenn ja, überprüfen Sie die Erweiterung der Anforderung (doc, pdf usw.)
  3. Finden Sie das Geschwister, das von dieser Art basierend auf der Erweiterung ist, und geben Sie das zurück.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top