Delphi ASP.NET Portal Starter Kit version
1.0
Une infrastructure entièrement dynamique !
|
|
|
|
|
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 :
-
Une bonne solution est bien souvent celle dont on dispose du code source.
-
Ce projet constitue un excellent exemple pour l'apprentissage de Delphi avec
ASP.NET.
-
Le projet initial est important et la traduction fastidieuse.
© Pascal Chapuis - ChapsAndChips 2005