2010-05-24 6 views
0

J'ai un service qui reçoit un objet contenant toutes les données nécessaires pour construire un bulletin d'information. Je dois être capable de générer l'email en utilisant différents modèles. Je ne veux pas impliquer toute la pile ASP.NET pour cela, donc je veux un moteur de template séparé. En lisant un tas d'opinions, j'ai trouvé que XSLT ne recevait pas beaucoup d'amour quand il s'agit de moteurs de templates. Pourquoi?Y a-t-il des raisons de préférer SparkViewEngine à XSLT (ou vice versa) pour une génération d'e-mails autonome?

SparkViewEngine est un "nouveau jouet cool", mais il semble assez mature compte tenu du nombre de projets qui ont été construits avec. Qu'est-ce que tu penses?

Avez-vous utilisé ces 2 moteurs? dans quelle situation, et quelle force/douleur avez-vous aimé/enduré

Répondre

1

J'ai utilisé un modèle Spark pour générer un e-mail sur mon dernier projet, c'était une expérience assez simple.

Comme vous l'avez mentionné, vous disposez d'un objet contenant toutes les données nécessaires pour créer un bulletin d'information. Pour utiliser XSLT, ne devez-vous pas commencer par sérialiser vers XML? L'utilisation de Spark ignore l'étape de sérialisation et vous redirige directement vers la sortie de votre choix, et comme mentionné dans queen3, la création d'attributs conditionnels est assez simple.

Au cas où vous en auriez besoin, il y a un article sur l'utilisation de Spark en tant que moteur de template universel here.

De plus, si vous devez travailler avec des concepteurs graphiques, il peut être plus facile de prendre une maquette HTML et de la transformer en un modèle d'étincelle que de prendre une maquette HTML et de la transformer en XSLT.

+0

merci! J'ai déjà lu ce post, j'ai déjà construit une preuve de concept qui génère une sortie utilisant une étincelle dans une application de console. Je suis plus à la recherche de points positifs/négatifs des deux moteurs pour pouvoir expliquer le choix. –

+1

@Stephane: Mieux encore, alors oui, ignorez tout sauf enregistrer une étape de sérialisation XML intermédiaire. Aussi, si vous devez travailler avec des concepteurs graphiques, il peut être plus facile de prendre une maquette HTML et de le transformer en un modèle d'étincelle que de prendre une maquette HTML et de devenir un XSLT. – R0MANARMY

+0

c'est un point valide. nous aurons des clients qui nous donneront des maquettes d'emails que nous devrons transformer en modèle. –

2

XSLT est beaucoup plus bavard, surtout quand il s'agit de trucs comme les attributs conditionnels. Je l'ai beaucoup utilisé (même pour générer du code source C#/C++) mais je ne me souviens pas de ce moment pour être une joie. Spark est.

+0

C'est exactement ce que je demande dans mes questions ... "J'ai trouvé que XSLT ne recevait pas beaucoup d'amour quand il s'agit de moteurs de templates. Le pourquoi est vraiment ce que je cherche :) Depuis que vous avez utilisé les deux cadres, est-ce vraiment une douleur de travailler avec? –

+1

J'ai effectivement répondu exactement à cette question. Si le langage est trop verbeux (trop verbeux) ne vous dérange pas, allez-y et utilisez XSLT. Je considère que c'est une douleur quand je dois écrire plus de balises auxiliaires que de contenu significatif. C'est le pourquoi. Spark essaie de réduire la verbosité dans toutes ses constructions, et j'apprécie de l'utiliser. Je ne considérerais jamais, jamais, d'utiliser XSLT à moins que je doive le faire. – queen3

+0

Merci de partager votre expérience :) Cela me réconforte dans notre choix et nous commençons à construire nos modèles en utilisant étincelle maintenant :) –