Delphi ASP.NET Portal Starter Kit version 1.0  

Une infrastructure entièrement dynamique !

 Présentation du projet
 Pré requis, Installation, FAQs   
 Intégration avec Delphi .NET    
 Pourquoi ce produit Delphi ?   
 Portal White Paper Microsoft   
 Téléchargement DPSK 1.0   
 Démonstration en ligne 
 Article sur Developpez.com
 Formation Delphi ASP.NET

 Démonstration en ligne de Delphi Portal Starter Kit...
Portails de Démonstration

Compatible Microsoft SQL Serveur et FireBird


  • 10 modules intégrables pour les types standards de contenu
  • administration en ligne de la présentation, du contenu et de la sécurité
  • sécurité basée sur les rôles pour l'administration du portail et pour voir/maj le contenu
  • prise en charge des périphériques mobiles via les contrôles "ASP.NET Mobiles" 
  • un framework "pluggable" extensible grâce aux modules personnalisés
  • une définition XML de la présentation 

Technologies et modèles de conception :

  • Contrôles ASP.NET Mobiles
  • Architecture 3 tiers avec ASP.NET
  • Sécurité basée sur les rôles

 Présentation du projet

 La description avancée de l'application est disponible sur le site de Microsoft dédié à ce projet. Seule l'aspect intégration à Delphi est proposée ici. 

 DPSK est la "stricte" traduction du projet ASP.NET Starter Kit de Microsoft. Ce projet Delphi .NET correspond au code C# livré par Microsoft. Toutes les classes, les contrôles et les pages sont traduits en Delphi et assemblés dans le projet. Seul le nom de quelques classes et unités a été changé pour des raisons de spécificité du langage Delphi (mots clés,casse...).

 La taille de ce projet (23 pages aspx, 25 contrôles ascx, environs 16 000 lignes de code compilées) est plus importante que celle de l'exemple "Octane" livré avec Delphi. Portal Starter Kit couvre plus particuliérement les exigences avancées de la gestion de contenu. L'accés au portail via les périphériques mobiles (html32,Chtml,Wml) est intégré.

 Avec Delphi Portal Starter Kit les développeurs Delphi disposent du même projet que les développeurs C#. Zarko Gajic sur le site aspxDelphi.net offre la traduction des différents "Starter Kits" disponibles sur le portail Microsoft Asp.Net.
 

 Intégration à Delphi

 

 Le passage d'un projet ASP.NET écrit en C# dans un environnement Microsoft Web Matrix vers l'EDI Borland Delphi peut sembler trivial connaissant les principes de .NET et CLR. Cependant à l'heure actuelle les réflectors et/ou l'utilisation de CodeDOM ne sont pas totalement efficaces. La traduction de C# vers Delphi produit un code "indigeste" pour le compilateur Delphi en raison de plusieurs facteurs... La traduction automatique de l'ensemble du projet ASP.NET est actuellement impossible. Heureusement, l'usage intensive de .NET rend le portage vers Delphi plus aisé.



 Développement d'un  module additionnel avec Delphi

 En Delphi, via l'héritage de la classe C#, il est simplement possible de créer un nouveau module intégrable à l'ensemble. Voici un exemple simple de contrôle utilisateur type calendrier écrit en Delphi et pluggable dans le framework C# de l'exemple Microsoft :

<%@ Control Language="c#" AutoEventWireup="false"
            Codebehind="CalendarDelphi.pas"
            Inherits="calendarDelphi.TWebUserDelphiCalendrier"%>
<table title="Calendrier avec Delphi 8 for .NET"
style="WIDTH: 300px; HEIGHT: 290px" width="300" border="0">
 <tbody>
  <tr>
   <td style="HEIGHT: 30px"> calendrier en Delphi 8 pour MS .NET</td>
  </tr>
  <tbody>
   <tr>
    <td style="HEIGHT: 260px">
      <ASP:CALENDAR id="Calendar1"
      style="Z-INDEX: 101; LEFT: 14px; TOP: 22px"
      runat="server" width="291px" height="231px">
      </ASP:CALENDAR>
    </td>
   </tr>
  </tbody>
 </tbody>
</table>

Codebehind Delphi (héritage de la classe C#) :

unit CalendarDelphi;

interface

uses System.Data, System.Drawing, System.Web, System.Web.UI,
     System.Web.UI.WebControls, System.Web.UI.HtmlControls,
     System.ComponentModel,
     System.Globalization,
     // DesktopControls, // implémentation TPortalModuleControl/Delphi
     ASPNET.StarterKit.Portal; //  namespace PortalModuleControl/C#

type

  TWebUserDelphiCalendrier = class(PortalModuleControl) //  héritage
        ....
                    

 Dans le cas où les fonctionnalités du moteur du projet C# couvrent vos exigences, l'héritage est alors une solution idéale. Dans l'autre cas le namespace "ASPNET.StarterKit.Portal" devra être étendu ou modifié. 

 Pourquoi essayer Delphi ASP.NET Portal Starter Kit ?

 Microsoft éditeur du framework .NET est l'initiateur de ce projet. C'est un exemple "académique" de mise en oeuvre du nouveau framework. Cet exemple constitue aussi une base solide pour l'architecture modulable d'un site web intégrant la gestion de contenu et l'accés pour les périphériques mobiles.

Quelques raisons supplémentaires pour vous convaincre d'essayer de ce projet :

© Pascal Chapuis - ChapsAndChips 2005