Rasoir/CSHTML - aucun avantage par rapport à ce que nous avons ?
- Demandé le 6 de Août, 2010
- Quand la question a-t-elle été
- 82348 affichage
- Nombre de visites la question a
- 4 Réponses
- Nombre de réponses aux questions
- Résolu
- Situation réelle de la question
Réponses
Trop de publicités?L'un des avantages est que le Rasoir points de vue peuvent être rendus à l'intérieur de tests unitaires, c'est quelque chose qui n'était pas facile avec la précédente ASP.Net moteur de rendu.
De ScottGu l'annonce de ce est répertorié comme l'un des objectifs de la conception:
Unité Vérifiable: Le nouveau moteur d'affichage de la mise en œuvre permettra de soutenir la capacité de test de l'unité de vues (sans avoir besoin d'un contrôleur ou d'un serveur web, et peuvent être hébergés dans tout projet de tests unitaires – n ° spécial-domaines d'application obligatoire).
Pour donner de l'arrière-plan de l'opinion: je suis un ex-développeur de Microsoft qui a travaillé sur une équipe de base pour le site web MSDN. Maintenant, j'utilise c# rasoir pour les sites e-commerce avec mon équipe de programmation et nous mettons l'accent lourd sur jQuery frontal avec c# rasoir pages et LINQ-Entité de la mémoire de la base de données de sorte que les pages sont 1-2 millisecondes de temps de réponse, même sur des boucles for imbriquées avec les requêtes et pas de cache de la page. Nous n'utilisons pas de MVC, tout simplement ASP.NET avec rasoir pages mappé avec le module de Réécriture d'URL pour IIS 7, pas de pages ASPX ou ViewState ou côté serveur, la programmation des événements. Il n'a pas la supplémentaires (inutile) des couches MVC met dans des constructions de code pour l'expression rationnelle contestée. Le moins est le mieux pour nous. Son tout maigre et moyenne, mais je donne accessoires MVC pour sa testabilité, mais c'est tout.
Rasoir pages n'ont aucun événement de cycle de vie comme les pages ASPX. Son juste rendu comme une page demandée. C# est un langage et Rasoir sort de sa façon bien à laisser faire son travail. L'anonyme de taper avec les génériques et linq faciliter la vie avec c# et rasoir pages. À l'aide de Rasoir pages va vous aider à penser et code plus léger.
L'un des inconvénient de Rasoir et MVC est il n'y a pas de ViewState-comme la persistance. J'avais besoin de mettre en place une solution pour que j'ai donc fini par l'écriture d'un plugin jQuery pour qu'ici -> http://www.jasonsebring.com/dumbFormState ce qui est HTML 5 de stockage hors connexion pris en charge plugin pour l'état du formulaire qui fonctionne dans tous les principaux navigateurs maintenant. C'est juste pour la forme de l'état actuellement, mais vous pouvez utiliser la fenêtre.sessionStorage ou d'une fenêtre.localStorage très simplement à stocker n'importe quel type de l'état à travers les publications ou encore les demandes de page, j'ai juste pris la peine de faire la sauvegarde automatique et de l'espace de noms sur la base de l'URL et de la forme de l'indice de sorte que vous n'avez pas à y penser.
** EDIT **
En fait je m'éloigne du Microsoft tech au total aujourd'hui et a déménagé dans Linux et node.js. Je sais que j'aurais pu continuer à Windows + node.js mais il y avait trop de pièges. J'ai encore beaucoup de clients .NET, mais je suis en se concentrant sur node.js fortement pour tous les nouveaux projets. La performance, la facilité de code et le coût est vraiment le facteur déterminant. Fondamentalement, c'est juste mieux.
Le plus grand avantage est que le code est plus succinct. Le VS éditeur aurez également la itellesense soutien que certains de l'autre point de vue, les moteurs n'ont pas.
Déclarative HTML Helpers également look assez cool comme faisant HTML helpers dans le code C# me rappelle de contrôles personnalisés dans ASP.NET. Je pense qu'ils ont pris une page de partiels, mais avec le code en ligne.
De sorte que certains des avantages certains sur le asp.net moteur d'affichage.
Avec un contraste de vue moteur, comme spark bien que:
La Spark est encore plus succincte, vous pouvez garder le si et les boucles à l'intérieur d'une balise html lui-même. Le balisage encore juste une sensation plus naturelle pour moi.
Vous pouvez code partiels exactement comment vous feriez un déclarative helper, vous devriez juste de transmettre les variables à l'partielle et que vous avez la même chose. Cela a été autour avec spark pour un certain temps.
Questions connexes
- Téléchargement de fichier ASP.NET MVC 3.0
- Est il possible de faire un itinéraire ASP.NET MVC basé sur un sous-domaine ?
- Faire les opérations asynchrones dans ASP.NET MVC utiliser un thread du pool de threads .NET 4
- Paramètre Access-Control-Allow-Origin dans ASP.Net MVC - méthode la plus simple possible
- Comment ajouter la propriété ID à Html.BeginForm() dans asp.net mvc ?
- Personnalisé ASP.NET MVC Page d'Erreur 404
- ASP.NET MVC - logique métier doit exister dans les contrôleurs ?
- Comment faire fonctionner ELMAH avec l'attribut ASP.NET MVC [HandleError]?
- ASP.NET MVC - Set IIdentity ou IPrincipal personnalisé
- Comment gérez-vous plusieurs boutons d'envoi dans ASP.NET MVC Framework?
- Injecter le contenu dans des sections spécifiques d’une vue partielle ASP.NET MVC 3 avec moteur d’affichage Razor
Questions en vedette
- Le SynchronizationContext actuel ne peut pas servir de TaskScheduler
- NuGet upgrade question
- Création macro C avec ## et __LINE__ (jeton concaténation avec positionnement macro)
- Comment cela fonctionne-t-il ?
- Elasticsearch en tant que base de données?
- différences entre l’utilisation de wmode = « transparent », « opaque » ou « fenêtre » pour un objet incorporé sur une page Web