2017-08-14 4 views
0

Je viens de commencer avec Umbraco pour mes propres projets parce que c'est bon marché par rapport à Episerver. Venant du paradigme Episerver des types Page/block fortement typés et faisant tout par programmation, j'ai maintenant du mal à entrer dans Umbraco comme je l'espérais.Types de pages Umbraco par programme (Tout comme dans Episerver)

Je sais comment créer des applications simples mais j'espérais définir mes types de pages comme des classes avec des propriétés qu'Umbraco traite ensuite comme des pages. Mon but est de pouvoir créer une hiérarchie de types de pages où certaines pages héritent des propriétés de sa page parent, etc.

Si j'ai un ArticleListingPage, je veux dans sa liste de contrôleurs tous les types de pages d'article. Par exemple si j'ai un ArticleBasePage avec les propriétés MainBody, Heading, Introduction alors je veux que ceux-ci soient hérités par ArticlePage et ArticleLongReadPage. Chaque fois que je veux les lister, je veux rechercher des pages de type <ArticleBasePage> et faire une boucle dans la collection et les rendre. Je n'aime pas travailler dans l'interface utilisateur Je veux simplement créer une hiérarchie de classes (qui sont des pages) comme je le ferais dans Episerver.

Y at-il un moyen de le faire? Ou un guide peut-être? Je n'aime pas l'approche de créer des pages dans l'interface utilisateur, je veux que mes pages soient d'une certaine classe afin que je puisse obtenir les avantages qui viennent avec cela

Répondre

1

Umbraco est très différent des versions actuelles d'Episerver (7+) en termes de gestion du modèle de contenu, mais vous pouvez obtenir des fonctionnalités de code un peu similaires pour activer l'héritage.

Vous voudrez peut-être regarder uSiteBuilder (disponible en paquet NuGet).

Plus d'informations disponibles sur Jon Jones' blog.

+0

N'utilisez pas uSiteBuilder si vous êtes en v7 + (ou, en fait, v4 +). Umbraco v7 + dispose d'un ModelsBuilder intégré qui génère des classes légèrement fortement typées pour vous. –

+1

Code-premier et fortement typé est ce que je veux. Cependant, je trouve que ModelsBuilder fait défaut dans ce département car ce n'est pas le code d'abord comme ce que vous expérimenteriez dans EPiServer. Peut-être que je suis paresseux en espérant avoir plus de contrôle. –

+0

@JannikAnker Je peux voir maintenant que dans la dernière version, USiteBuilder fonctionne toujours parfaitement. –