41 votes

Peut-on utiliser la syntaxe Razor dans ASP.NET Webforms (*.pages aspx)?

Je suis aimer la syntaxe Razor que Microsoft a mis en ligne de codage dans leur WebMatrix produit (http://en.wikipedia.org/wiki/Microsoft_WebMatrix).

Maintenant que Visual Studio SP1 RTM a d, est-il possible (et/ou prévue) pour permettre l'utilisation de la syntaxe Razor dans ASP.NET Webforms?

Merci!

51voto

marcind Points 38002

Nous (l'ASP.NET de l'équipe) n'ont actuellement aucun plan pour soutenir les Formulaires de la page de modèle à l'aide de la syntaxe Razor. En outre, il est peu probable que l'on aurait jamais envisager sérieusement de ce que les modèles sont trop différents pour faire les deux fonctionnent ensemble.

31voto

SLaks Points 391154

Vous pouvez utiliser de Rasoir pages sans MVC; cela s'appelle l'ASP.Net les Pages web.

Il suffit d'ajouter .CSHTML fichiers normal ASP.Net 4.0 projet.

J'ai expliqué comment cela fonctionne dans mon blog.

5voto

BuildStarted Points 15931

Vous pourriez peut-être l'intégrer à l'aide de la RazorEngine disponible à partir de Codeplex. Il vous permet de traiter le rasoir à l'extérieur de la MVC. Si vous n'obtenez pas toutes les fonctionnalités que vous obtenez à partir de la MVC version de Rasoir, comme @Html et @Url et les autres.

0voto

Mike Brind Points 11445

J'ose dire que Microsoft ont considéré qu'il était, mais il n'y a aucun mot officiel sur le sujet. Puisque vous n'êtes pas censé avoir de C# ou VB code dans le fichier ASPX, vous devez vous interroger sur le point de l'ajout de la prise en charge de Rasoir dans les Formulaires Web. Le code derrière serait encore une (partielle) de la classe file. Vous ne mettrais pas de Rasoir y a plus que vous, de le mettre dans un fichier de classe dans des Pages Web ou MVC. Et d'échanger sur les Contrôles Serveur et que toutes les bonnes déclarative des trucs pour Html Helpers supprime l'une des principales raisons pour aller sur le Web les Formes de l'itinéraire, de l'OMI.

0voto

wasabi Points 352

Ce n'est vraiment pas difficile à faire. Travailler sur ce droit maintenant. Prenez RazorEngine de CodePlex. Il vous permet de compiler Rasoir cshtml/vbhtml fichiers dans une classe au moment de l'exécution.

Vous pouvez alors prendre cette classe, et de l'utiliser à partir d'un ASP.Net contrôle de serveur, à l'intérieur de sa méthode de Rendu. C'est un excellent moyen pour obtenir de l'HTML du corps d'un serveur de contrôle. Beaucoup, beaucoup plus propre.

Maintenant, vous pouvez également ajouter quelques méthodes que vous pouvez appeler à partir de Rasoir. Par exemple, ajouter quelque chose comme RenderChild. En outre, vous pouvez définir le Serveur de Contrôle de lui-même comme le Modèle à la disposition de Rasoir. Vous pouvez alors invoquer dans le serveur de contrôle. Y compris en faisant quelque chose comme saisissant l'une de ses contrôles enfants et de l'invocation de Rendu.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X