Différence entre ASP.NET MVC 3 et 4?
Est-il une liste complète qui explique toutes les nouvelles fonctionnalités de MVC4 et ce que tout a changé à partir de MVC3?
(Le notes de version ne sont pas très utiles)
- Regardez les notes de version: asp.net/whitepapers/mvc4-release-notes#_Toc303253808
- "Les notes de version ne sont pas...utile" ... "Regardez les notes de version.." ???
Vous devez vous connecter pour publier un commentaire.
Copié et collé à partir MVC4 Notes de Version:
•Moderne HTTP modèle de programmation: Directement accéder et manipuler des requêtes et des réponses HTTP de votre site Web Api à l'aide de une nouvelle, fortement typé HTTP objet modèle. Le même modèle de programmation et HTTP pipeline est symétriquement disponible sur le client par le biais de la nouvelle HttpClient type.
•Support complet pour les routes: ASP.NET l'API Web prennent en charge l'ensemble de l'itinéraire capacités de ASP.NET de Routage, y compris les paramètres de la route et des contraintes. En outre, l'utilisation de simples conventions d'actions sur la carte de méthodes HTTP.
•La négociation de contenu: Le client et le serveur peuvent travailler ensemble afin de choisir le bon format pour les données renvoyées à partir d'une API web. ASP.NET Web API fournit par défaut pour XML, JSON, et la Forme de l'URL-encodé formats et vous pouvez étendre ce soutien par l'ajout de vos propres formateurs, ou même remplacer le contenu par défaut de stratégie de négociation.
•La liaison du modèle et validation: les classeurs de Modèle de fournir un moyen facile d'extraire des données à partir de différentes parties d'une requête HTTP et de convertir ces parties de message dans .NET objets qui peuvent être utilisés par le Web API actions. La Validation est effectuée sur les paramètres de l'action basée sur les données des annotations.
•Filtres: ASP.NET Web API supporte les filtres, y compris le bien-connu des filtres tels que l'attribut [Authorize]. Vous pouvez auteur et de brancher vos propres filtres pour les actions, l'autorisation et la gestion des exceptions.
•Requête composition: l'Utilisation de la [Queryable] filtre d'attribut sur une action qui renvoie IQueryable pour activer le support de l'interrogation de l'API web via la requête OData conventions.
•L'amélioration de la testabilité: Plutôt que de fixer HTTP détails dans le contexte statique des objets, web API actions de travailler avec des instances de HttpRequestMessage et HttpResponseMessage. Créer un projet de test d'unité avec votre site Web API projet pour commencer rapidement à écrire des tests unitaires pour votre site Web des fonctionnalités de l'API.
•À base de Code de configuration: ASP.NET l'API Web de configuration s'effectue uniquement par le biais de code, en laissant vos fichiers de configuration propre. Utiliser le fournir le service localisateur de modèle pour configurer les points d'extensibilité.
•Support amélioré pour l'Inversion de Contrôle (IoC) les conteneurs: ASP.NET l'API Web fournit un grand soutien pour les Cio de conteneurs à travers une amélioration de la résolution de dépendances abstraction
•Auto-hôte: Api Web peuvent être hébergés dans votre propre processus, en plus de IIS, tout en utilisant toute la puissance de routes et d'autres fonctions de l'API Web.
•Créer de l'aide personnalisée et des pages de test: Vous pouvez désormais créer facilement de l'aide personnalisée et de tester vos pages de web de l'Api à l'aide de la nouvelle IApiExplorer service pour obtenir une exécution description de votre site web Api.
•La surveillance et le diagnostic: ASP.NET l'API Web offre maintenant un poids léger infrastructure de suivi qui le rend facile à intégrer avec existant solutions d'enregistrement de ce Système.Diagnostics, ETW et la troisième partie de la journalisation des cadres. Vous pouvez activer le suivi par la fourniture d'un ITraceWriter mise en œuvre et de l'ajouter à votre site web de l'API de configuration.
•De la génération de liens: Utilisation de l'ASP.NET l'API Web UrlHelper à générer des liens vers des ressources connexes dans la même application.
•Web API de modèle de projet: Sélectionnez le nouveau site Web de l'API du projet de la Nouvelle MVC 4 assistant de Projet d'obtenir rapidement et en cours d'exécution avec ASP.NET l'API Web.
•Échafaudage: Utilisation de l'Ajouter Contrôleur de dialogue rapidement échafaudage d'une API web du contrôleur de base sur un Cadre de l'Entité en fonction du type de modèle.
Copier et coller à partir Quoi de nouveau dans MVC4 - MVC3 Vs MVC4
Des améliorations aux Modèles de Projet par Défaut
Le modèle est utilisé pour créer de nouveaux ASP.NET MVC 4 projets a été mis à jour pour créer un plus moderne-site web à la recherche
Mobile Modèle De Projet
Si vous êtes le démarrage d'un nouveau projet et que vous souhaitez créer un site pour mobile et tablette navigateurs, vous pouvez utiliser la nouvelle Application Mobile de modèle de projet. Ceci est basé sur jQuery Mobile, une bibliothèque libre pour la construction optimisée pour l'interaction tactile de l'INTERFACE utilisateur
Modes D'Affichage
Le nouveau mode d'Affichage fonctionnalité permet à une application de sélectionner les vues selon le navigateur que fait la demande. Par exemple, si un navigateur de bureau, les demandes de la page d'Accueil, l'application peut utiliser le
Views\Home\Index.cshtml
modèle. Si un mobile navigateur demande la page d'Accueil, l'application peut retourner leViews\Home\Index.mobile.cshtml
modèle.jQuery Mobile, le point de Vue de l'Aiguilleur, et le Navigateur Primordial
jQuery Mobile est une bibliothèque open source pour la construction optimisée pour l'interaction tactile de l'INTERFACE utilisateur web. Si vous souhaitez utiliser jQuery Mobile avec un ASP.NET MVC 4 application, vous pouvez télécharger et installer un package NuGet qui vous aide à démarrer. Pour l'installer à partir de Visual Studio Manager Console, tapez la commande suivante:
Install-Package jQuery.Mobile.MVC
Il installe jQuery Mobile et certains fichiers d'assistance, y compris les suivantes:
Views/Shared/Mise En Page.Mobile.cshtml, qui est un jQuery Mobile-mise en fonction.
Une vue de commutateur de composant, qui se compose de l'Views/Shared/ViewSwitcher.cshtml vue partielle et la ViewSwitcherController.cs contrôleur.
Après avoir installé le paquet, lancez votre application à l'aide d'un navigateur mobile (ou équivalent, à l'instar de Firefox User Agent Switcher add-on). Vous verrez que vos pages ont l'air tout à fait différent, parce que jQuery Mobile poignées de mise en page et le style. Pour bénéficier de cette fonction, vous pouvez effectuer les opérations suivantes
Si le visiteur clique sur le lien, ils sont passés à la version de bureau de la même page.
Parce que votre aménagement de bureau ne comprendra pas une vue de l'aiguilleur par défaut, les visiteurs ne seront pas avoir un moyen d'obtenir de mode mobile. Pour ce faire, ajoutez la référence suivante à
_ViewSwitcher à votre disposition de bureau, juste à l'intérieur de l'élément:
...
Navigateur Primordial est une caractéristique fondamentale de ASP.NET MVC 4 et est disponible même si vous n'installez pas le jQuery.Mobile.MVC paquet. Cependant, il affecte seulement la vue, mise en page, et partielle de sélection de la vue — il n'affecte pas les autres ASP.NET fonction qui dépend de la Demande.L'objet de navigateur.
Recettes pour la Génération de Code dans Visual Studio
Les nouvelles Recettes fonctionnalité permet à Visual Studio pour générer une solution spécifique du code en fonction de paquets que vous pouvez installer à l'aide de NuGet. Les Recettes framework permet aux développeurs d'écrire du code de la génération des plugins, que vous pouvez également l'utiliser pour remplacer le haut-générateurs de code pour Ajouter, Ajouter un Contrôleur, et Ajouter une Vue. Parce que les recettes sont déployés en tant que packages NuGet, ils peuvent facilement être vérifié dans le contrôle de source et partagé avec tous les développeurs sur le projet automatiquement. Ils sont également disponibles sur une base par solution.
Tâche de Support pour les Contrôleurs Asynchrones
Vous pouvez maintenant écrire asynchrone des méthodes d'action unique de méthodes qui retournent un objet de type Tâche ou une Tâche.
Par exemple, si vous utilisez Visual C# 5 (ou à l'aide de la Async CTP), vous pouvez créer une action asynchrone de la méthode qui se présente comme suit:
Dans la précédente méthode d'action, les appels à newsService.GetHeadlinesAsync et sportsService.GetScoresAsync sont appelés de manière asynchrone et ne pas bloquer un thread du pool de threads.
Action asynchrone des méthodes qui renvoient des Tâches instances peuvent aussi soutenir les délais d'attente. Pour faire de votre méthode d'action résiliable, ajouter un paramètre de type CancellationToken à l'action de la signature de la méthode. L'exemple suivant montre une action asynchrone de la méthode qui a un délai d'attente de 2 500 millisecondes et qui affiche une TimedOut vue du client si un délai d'attente se produit.
Espère que cette aide. Grâce
S'il vous plaît aller à travers l'URL pour tous MVC 4 nouvelles fonctionnalités
MVC 3
Moteur
L'Action Mondiale Des Filtres
MVC 4
modèles
Ref : http://dotnet-developers-cafe.blogspot.in/2013/09/difference-between-aspnet-mvc-3-and-mvc.html
Veuillez consulter les liens ci-dessous pour trouver les différences.
http://forums.asp.net/t/1753017.aspx
http://www.askamoeba.com/Answer/130/Whats-new-in-MVC4-MVC3-Vs-MVC4
http://forums.asp.net/t/1918539.aspx?Main+différence+entre+régulier+webapplication+mvc3+et+mvc4+
L'un des plus importants fonctionnalité introduite dans MVC 4.0 a été de contrôleurs Asynchrones qui permet d'écrire l'asynchrone méthodes d'action. Contrôleur asynchrone permet pour avoir effectué sans faire le thread de travail inactif.
Lorsqu'une action asynchrone est invoquée, les étapes suivantes se produisent:
Le serveur Web reçoit un fil de la piscine (le thread de travail) et les horaires pour traiter une demande entrante. Ce thread lance une opération asynchrone.
Le thread de travail est retourné pour le pool de threads pour le service Web d'un autre demande.
Lors de l'opération asynchrone est terminée, il en informe ASP.NET.
Le serveur Web reçoit un travailleur fil de la piscine (ce qui pourrait être un thread différent du thread qui a commencé l'opération asynchrone) pour traiter le reste de la demande, y compris le rendu de la réponse.
La conversion de l'Action Synchrone Méthodes Asynchrones Méthodes d'Action
Voici l'exemple de l'action synchrone de la méthode et de ses asynchrone version équivalente.
Synchrone Contrôleur:
Asynchrone variante de l'opération ci-dessus:
Suit:
Synchrone Contrôleurs sont les classes dérivées à partir du Contrôleur
classe pour mettre en œuvre un AsyncController au lieu de dériver le
contrôleur de Contrôleur, le dériver de AsyncController classe.
Les contrôleurs qui dérivent de AsyncController permettre ASP.NET pour
processus de demandes asynchrones, et ils peuvent toujours service synchrone
les méthodes d'action.
Correspondant à l'action synchrone méthode Synchrone
contrôleur, vous devez créer deux méthodes pour l'action dans
contrôleur asynchrone.Première méthode qui initie l'asynchrone
le processus doit avoir un nom qui se compose de l'action et du suffixe
"Async". L'autre méthode qui est appelée lorsque l'asynchrone
le processus se termine (la méthode de rappel) doit avoir un nom qui se compose
de l'action et du suffixe "Terminé".
Dans l'exemple ci-dessus exemple, l'Index de l'action a été transformé en
deux méthodes de contrôleur asynchrone: IndexAsync et
IndexCompleted.
La IndexAsync méthode retourne vide, alors que la méthode IndexCompleted
retourne un ActionResult instance. Bien que l'action se compose de deux
méthodes, il est accessible en utilisant la même URL, comme pour un synchrones
méthode d'action (par exemple, un Contrôleur/Index).
Notez les points suivants concernant asynchrone méthodes d'action:
Si le nom de l'action est de l'Échantillon, le cadre va chercher SampleAsync et SampleCompleted méthodes.
Afficher les pages doivent être nommés de l'Échantillon.aspx plutôt que SampleAsync.aspx ou SampleCompleted.aspx. (Le nom de l'action est de l'Échantillon, pas SampleAsync)
Un contrôleur ne peut pas contenir une méthode asynchrone nommé SampleAsync et une méthode synchrone nommé Exemple. Si elle le fait, un AmbiguousMatchException exception est levée, car SampleAsync méthode d'action et l'Exemple de méthode d'action ont la même demande et la signature.
Pour plus de détails, cliquez ici : http://www.counsellingbyabhi.com/2014/05/asynchronous-controllers-in-aspnet-mvc.html