2009-08-02 2 views
0

Je pense à un système de template html très simple à implémenter dans asp.net.asp.net html templating

Fondamentalement donné un fichier .html avec quelques espaces réservés comme [menu] et [contenu] il saisirait les données appropriées et le fusionner avec le html et l'affichage de la page. J'aimerais pouvoir utiliser des trucs asp.net comme les contrôles et la publication, mais ce n'est pas essentiel.

À quel point cela serait-il difficile de le mettre en œuvre et comment le feriez-vous? Est-ce qu'une solution comme celle-ci est pratique pour un site web à très faible trafic?

+0

Dans le cas où quelqu'un est intéressé, je pense que je vais regarder un système similaire à celui utilisé dans blogengine.net –

Répondre

2

L'écriture de votre propre système de modèle est fondamentalement reinventing the wheel dans ASP.NET. Je ne le recommanderais pas à moins que vous n'ayez l'intention d'en apprendre plus sur les roues (auquel cas je dirais d'y aller). Une meilleure alternative serait d'utiliser celle fournie par Microsoft dans le cadre, avec Master Pages. Microsoft a compris les détails de l'implémentation d'un système de gabarit et vous permet même d'imbriquer des gabarits dans des gabarits. Vous pouvez échanger dynamiquement des modèles en & si vous voulez un look différent. Pour un CMS, je dirais qu'il vaut mieux utiliser des pages maîtres que de créer les vôtres.

+0

ouais je le ferais normalement, pensait juste en termes de fournir un format plus familier aux concepteurs que masterpages. –

0

Vous pouvez écrire un module HTTP pour rediriger toutes les demandes entrantes vers une seule page ASPX.

Cette page permet d'examiner l'URL d'origine pour déterminer quelles données extraire de la base de données et afficher pour l'utilisateur.

Comme la page est une page standard ASPX, vous serez toujours en mesure de tirer parti de post-dos, les commandes du serveur, etc.

Si vous avez besoin de pages qui ont différentes mises en page et les fonctionnalités, vous pouvez écrire un série de pages ASPX (traitant chacune d'elles comme un 'modèle' différent, de manière efficace). Ensuite, dans votre module HTTP, vous pouvez regarder la page dans la base de données pour déterminer quelle page ASPX 'template' vous devriez rediriger.

Vous trouverez plus d'informations sur l'écriture d'un module HTTP pour rediriger les URL here. Assurez-vous de lire la partie qui vous indique comment remplacer l'action du formulaire par défaut pour vous assurer que vos post-retours fonctionnent toujours!

Espérons que cela aide - bonne chance!

Questions connexes