Sono nella fase iniziale della progettazione di un sistema che sarà essenzialmente suddiviso in due parti. Una parte è un servizio e l'altra è un'interfaccia con il servizio che fornisce dati attraverso qualcosa come OData o XML. L'applicazione sarà basata sul modello architettonico MVC. Per le viste, stiamo considerando l'utilizzo di XSLT o Razor in ASP.NET.
XSLT o Rasoio contribuirebbe a fornire una separazione di preoccupazioni in cui l'XML originale o la risposta rappresentano il modello, l'XSLT o la 'Vista rasoio' rappresenta la tua vista. Lascerò il controller per questo esempio. La proposta di progettazione iniziale raccomanda XSLT, tuttavia ho suggerito l'uso di Razor come un motore di visualizzazione più amichevole.
Questi sono i motivi che ho suggerito per Razor (C #):
- Più facile con cui lavorare e creare pagine più complicate.
- Può produrre facilmente output non * ML, ad es. csv, txt, fdf
- Modelli meno dettagliati
- Il modello di visualizzazione è strongmente digitato, su cui XSLT avrebbe bisogno di fare affidamento convenzione, ad es. valori booleani o di date
- Il markup è più accessibile, ad esempio nbsp, newline normalization, attibute normalizzazione del valore, regole degli spazi bianchi
- L'helper HTML integrato può generare il codice di convalida JS basato sugli attributi DTO
- L'helper HTML integrato può generare collegamenti alle azioni
E gli argomenti per XSLT su rasoio erano:
- XSLT è uno standard e continuerà a esistere molti anni nel futuro.
- È difficile spostare accidentalmente la logica nella vista
- Easer per i non programmatori (con cui non sono d'accordo)
- Ha avuto successo in alcuni dei nostri progetti precedenti.
- I valori dei dati sono codificati in HTML per impostazione predefinita
- Sempre ben formato
Quindi sto cercando strumenti su entrambi i lati, consigli o qualsiasi esperienza che faccia una scelta simile?