MVC. C# /.Net / ASP.NET Core 1.0 Hervé PHILIPPE Promotion

Documents pareils
INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Notre processus d embauche

ASP.NET MVC 4 Développement d'applications Web en C# - Concepts et bonnes pratiques

21 mars Simulations et Méthodes de Monte Carlo. DADI Charles-Abner. Objectifs et intérêt de ce T.E.R. Générer l'aléatoire.

Devenez un véritable développeur web en 3 mois!

Gestion d identités PSL Exploitation IdP Authentic

Développement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS

< Atelier 1 /> Démarrer une application web

Bien aborder un projet SharePoint 2013

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

CHEF DE PROJET & ARCHITECTE.NET SAMIR BENFARES FORMATION LANGUE COMPÉTENCES TECHNIQUES CERTIFICATION

Programmation Web. Madalina Croitoru IUT Montpellier

Master1 ère année. Réseaux avancés I. TP nº5 filière ISICG

Mise en œuvre des serveurs d application

OpenPaaS Le réseau social d'entreprise

Point sur les solutions de développement d apps pour les périphériques mobiles

Urbanisation des SI Conduite du changement IT 20/03/09. Patrick CHAMBET

DotNet. Plan. Les outils de développement

La base de données XML exist. A. Belaïd

Architecte de Systèmes d Information, Ingénieur Logiciel, Chef de projet

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

Cisco Certified Network Associate

les techniques d'extraction, les formulaires et intégration dans un site WEB

Alfstore workflow framework Spécification technique

Collaborateur GdP Leader Technique/Architecte

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Utiliser Java sans BlueJ

Environnements de développement (intégrés)

Olivier Deheurles Ingénieur conception et développement.net

10. Base de données et Web. OlivierCuré

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Consultant.NET / SharePoint

Zeus V3.XX :: PRE-REQUIS TECHNIQUES

ACTIVITÉ DE PROGRAMMATION

Compétences fonctionnelles et techniques

Web Tier : déploiement de servlets

La persistance des données dans les applications : DAO, JPA, Hibernate... COMPIL 2010 francois.jannin@inp-toulouse.fr 1

Formations qualifiantes pour demandeurs d emploi

Sécurisation d une application ASP.NET

Recommandations techniques

TP1 : Initiation à Java et Eclipse

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Introduction à HTTP. Chapitre HTTP 0.9

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Serveur d Applications Web : WebObjects

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

Configurer le Serveur avec une adresse IP Statique (INTERFACE :FastEthernet) : et un masque

MERMET Sébastien Ingénieur Informatique INSA Analyste Développeur Senior Business & Data Analyste Senior 11 ans d expérience

Alexandru V. Vlad RADIAN Solution Architect, Lead IT developer

Plan du cours. Historique du langage Nouveautés de Java 7

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

Module.NET 3 Les Assemblys.NET

Développement d une application ASP.NET avec Base de données SQL Server

Programmation en Java IUT GEII (MC-II1) 1

RN2-Programmation Orientée Objet - JAVA CH 1 Introduction à la POO et Java

Introduction MOSS 2007

BES WEBDEVELOPER ACTIVITÉ RÔLE

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour

Remote Method Invocation (RMI)

Développement des Systèmes d Information

Package Java.util Classe générique

Rapport de stage. Titre : Aide à la conception d interfaces et déploiement d un site d administration de tables SQL Stagiaire : Julien LE GALL

Tp 1 correction. Structures de données (IF2)

Java Licence Professionnelle CISII,

3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures

Projet de programmation (IK3) : TP n 1 Correction

Datalift. + + Architecture Modularité Déploiements. d j = 09/04/2015 Laurent BIHANIC

RMI le langage Java XII-1 JMF

Formation en Logiciels Libres. Fiche d inscription

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Auto-évaluation Programmation en Java

API04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture

Programmation Web. Introduction

Programme Compte bancaire (code)

Installation de SCCM 2012 (v2)

Le MSMQ. Version 1.0. Pierre-Franck Chauvet

Ronan EZANNO. 20 ans d'expérience PowerBuilder.NET

HTML5. Développement d applications Web. Visual Studio 2015 et TFS. L art et la manière. avec. Philippe DIDIERGEORGES

Assurances & Mutuelles, Industrie, Santé, Énergie, Transport, Médias / Multimédias, Télécoms, Services

Ce document décrit une solution de single sign-on (SSO) sécurisée permettant d accéder à Microsoft Exchange avec des tablettes ou smartphones.

OWASP Code Review Guide Revue de code. Paris The OWASP Foundation. Victor Vuillard

JOnAS 5. Serveur d application d

Technologies Web avancées. ING1 SIGL Technologies Web avancées

Corrigé des exercices sur les références

SYSTÈMES D INFORMATIONS

Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

Java DataBaseConnectivity

Java Licence Professionnelle CISII,

1.2 - Définition Web 2.0 ( wikipedia )

AngularJS pour une application d'entreprise

TP1 : Initiation à Java et Eclipse

25 mars. Tutoriel sur Laravel. Préparé par : Lydiane Beaulne-Bélisle. Ceci est un tutorial qui montre comment débuter avec le Framework PHP Laravel.

Cadrage fonctionnel et technique des sites Visa Premier et Infinite. Réalisation des déploiements pour l hébergeur.

Sql Server 2000, 2005, 2008 R2 o T-SQL o Création d'un modèle de données o Full text search o Administration Oracle 9i, Oracle 11g

ECLIPSE ET PDT (Php development tools)

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki

Résumé DOMAINES DE COMPETENCES

La Latecion protection anti-intrusion Web Web Le concept «Zero effort Security» La protection des applications Extranet

Android et le Cloud Computing

Transcription:

MVC C# /.Net / ASP.NET Core 1.0 Hervé PHILIPPE Promotion 2015-2016

Plan Rappels Introduction Technologies intégrées Fichiers d un projet Fichier Startup.cs Pattern MVC

Rappels - Historique Microsoft : ASP / ASP.NET 1996 : ASP 1.0 (Active Server Page) 2002 : ASP.NET 1.0 2009 : MVC 1.0 (Model View Controler) 2011 : Razor (+ MVC 3.0) Web Pages = Fichiers.cshtml /.vbhtml Syntaxe plus intuitive 2016 : ASP.NET Core 1.0 Changement de nom : ASP.NET 5 -> ASP.NET Core 1.0 MVC 6 -> ASP.NET Core MVC EF 7 -> Entity Framework Core (EF Core)

Rappels ASP.NET

Rappels ASP.NET

Introduction Convention plutôt que Configuration Conventions à respecter pour : Noms des dossiers Noms des fichiers Noms des classes Noms des méthodes Les «attributs» du C# sont beaucoup utilisés Les attributs (= annotations = décorateurs) servent à ajouter des métadonnées à toutes sortes de déclarations Exemple d attributs pour une propriété : Documentation officielle http://www.asp.net/vnext/overview/aspnet-vnext [Required] [EmailAddress] [Display(Name = "Email")] public string Email { get; set; }

Technologies intégrées MVC 6 (Model-View-Controller) Architecture logicielle d une application ASP.NET (avant : possibilité de choisir une autre logique : «WebForms» basée sur les événements) Web Pages 4 Pages HTML contenant du code.net (C# ou VB.NET) Entity Framework 6 Permettre d accéder aux données ASP.NET Identity 3 Gérer les authentifications des utilisateurs WebAPI Faciliter la création des Web Services SignalR 3 Simplifier la façon de créer des fonctionnalités temps-réel à un site web

Fichiers d un projet Fichier basé sur C#.cs -> fichier source Fichier basé sur VisualBasic.NET.vb -> fichier source.cshtml -> fichier source «Web Pages».vbhtml -> fichier source «Web Pages» Autres types de fichiers.json,.ini,.xml : fichiers de données (notamment pour la configuration).aspx : fichier source «WebForms» (HTML avec code C# ou VB.NET) Fichiers importants : project.json : fichier de configuration générale du projet appsettings.json : fichier de configuration optionnel Startup.cs : point d entrée de l application

Fichier Startup.cs Fichier «Startup.cs» : point d entrée de l application web Classe «Startup» utilisée à l exécution Constructeur (optionnel) par exemple pour lire les configurations Méthode «Main» : public static void Main(string[] args) { WebApplication.Run<Startup>(args); } Méthode «ConfigureServices» : Configuration des services pouvant être utilisés par l application web Configuration des conteneurs pour des services («Dependency Injection») Méthode «Configure» : Etapes de construction de la réponse à la requête HTTP

Fichier Startup.cs / Configure Etapes de construction de la réponse à la requête HTTP L ordre des instructions est très important Principales instructions : «app.usestaticfiles();» : Pour utiliser des fichiers statiques (HTML/CSS/JS) «app.useidentity();» Pour utiliser l authentification des utilisateurs «app.usemvc» : Pour définir la «route» app.usemvc(routes => { routes.maproute( name: "default", template: "{controller=home}/{action=index}/{id?}"); }); Utilisation par défaut de la classe «Home» Utilisation par défaut de la méthode «Index» Paramètre optionnel : «id»

Pattern MVC Pattern MVC = modèle d architecture logicielle Plan de construction à suivre pour le développement (création et organisation des classes, des méthodes, des propriétés ) Model Données et gestion des données de l application View Afficher les données Controller Gérer l interaction avec l utilisateur (requête/réponse du navigateur) Donner à la vue, les données venant du modèle