oct

04

Posted by : oalessandri | On : 4 octobre 2011

 

L’utilisation de WriteFile pour l’enregistrement d’un fichier sur le serveur ou le téléchargement d’un fichier via une page web pose apparemment des problèmes lorsque le fichier est trop volumineux et que la connexion du client n’a pas un débit important.

WriteFile mets les données du fichier transmit au client dans un buffer (en mémoire) géré par le processus w3wp.exe, utilisé pour le site web. Dans ce cas un seul processus gère le site web et une limite de mémoire avant recyclage a été configurée pour éviter les saturations de mémoire et ainsi recycler régulièrement le processus. Mais cette configuration couplée à WriteFile coupe la connexion lors du téléchargement car la mémoire dépasse  la quantité de mémoire maximale autorisée. Et il est impossible au navigateur client de se recnnecter au serveur sur le même thread qui était occupé à transmettre le fichier

Continue Reading

sept

10

Posted by : oalessandri | On : 10 septembre 2011

Mon livre vient de paraitre ASP.NET 4.0 et C# sous Visual Studio 2010 – Conception et développement d’un service en ligne aux Editions ENI

 

Présentation

Ce livre s’adresse aux développeurs débutants en Asp.Net 4.0 et C# dans le but d’apprendre à utiliser les fonctionnalités et composants fournis avec Visual Studio 2010 tels que treeview, les formview, les listview et les Ajaxtoolkit,…

L’objectif est de développer complètement un service en ligne en s’appuyant sur un exemple concret : une gestion documentaire. La construction de cette GED pose les briques solides d’un service en détaillant sa conception, sa réalisation, son hébergement et toutes les évolutions imaginables pour finaliser ce service. J’ explique pourquoi j’ai choisi comme exemple une Gestion documentaire et les implications d‘un tel service dans une entreprise.  Les évolutions sont expliquées de façon précise dans le dernier chapitre tels que l’intégration du moteur de recherche Index Server, des idées sur le développement bibliothèque Jquery.

Les codes sources par palier sont en téléchargement sur le site www.editions-eni.fr.

Les chapitres du livre :
Introduction – Outils et environnement – Définition du projet – Mise en place de l’infrastructure – Gestion des rubriques – Gestion des droits et des accès – Gestion des documents – Connexion au service – Construction de la page de gestion documentaire – Construction de la partie éditeur – Pages statiques – Évolutions futures

Acheter ce livre aux Editions ENI : ASP.NET 4.0 et C# sous Visual Studio 2010

Accès en version numérique

avr

17

Posted by : oalessandri | On : 17 avril 2011

L’asp.net Web pages qui utilise le moteur Razor est la dernière technologie web sortie par Microsoft et je dois avouer que j’adhère parfaitement à sa syntaxe et à ses fonctionnalités. Etant habitué à développer avec l’Asp.net et C# depuis maintenant 10 ans, c’est un langage qui a été fait pour le web et intègre les dernières nouveautés comme des composants sociaux (Twitter, J’aime de Facebook, …), des composants pour ajouter des vidéos, télécharger et traiter des images, récupérer des morceaux d’url , utiliser des sortes de master page et des includes, webgrid, …

C’est un compromis entre le langage php et l’Asp.net. Code intégré dans la page. Plus d’AjaxToolkit et place au Jquery  et à la maitrise totale du code source ce qui entrevoit une préparation à la venue de l’html 5

La puissance vient aussi avec la possibilité d’utiliser pleinement le les classes du framework 4.0 et l’Entity framework pour accélérer la création de la couche données

mar

28

Posted by : oalessandri | On : 28 mars 2011

Enfin presque un an de labeur et enfin presque au bout, la construction d’un service en ligne par l’exemple : gestion documentaire et des différents espaces : administrateur, utilisateur et éditeur.

Il est bien de préciser que la construction de cette gestion documentaire est utilisée pour illustrer la conception d’un service en ligne dans un cadre pédagogique. Il est entendu qu’une gestion documentaire peut être très complète dans sa gestion des flux, des versions et des cycles de vies des documents et qu’il est difficile de tout intégrer dans un ouvrage. ces éléments sont donc évoqués et ainsi que toutes les évolutions possibles pour compléter le service et en faire un vrai service en ligne.

Sortie prévue en septembre 2011.

Mise à jour le  08/09/2011 voilà l’ouvrage est sortie aux éditions ENI

juin

09

Posted by : oalessandri | On : 9 juin 2010

Je commence à écrire un livre dans lequel je mettrais en place de façon pédagogique un service en ligne en prenant comme exemple une gestion documentaire. C’est un énorme chantier mais qui me tiens à cœur et qui me permettra d’expliquer ma façon de travailler au quotidien.

mar

22

Posted by : oalessandri | On : 22 mars 2010

Le composant Treeview de Visual studio est très complet car on peut suffisamment le customiser pour changer toute son apparence. On peut également l’utiliser avec des méthodes POST ou GET ce qui est très utile. Il a une fonction collapse qui permet d’ouvrir tous les nœud sans aller-retour serveur. Sans écrire une seul ligne de code javascript en déposant seulement le composant et en travaillant sur le code c# il se suffit à lui-même.

Mais il a 2 défauts :

- Le 1er est de ne pas pouvoir fermer les nœuds précédent après avoir cliqué sur le dernier nœud ce qui provoque un manque de clarté de l’arborescence.

- Son 2ème défaut est qu’il se construit à l’ancienne avec des tables imbriquées ce qui le rend – inutilisable – lorsque les rubriques sont trop nombreuses sur un Intranet par exemple.

Donc à chaque problème sa solution

1. Il faut utiliser l’adapter friendly css

a. http://www.asp.net/cssadapters/ et http://www.asp.net/cssadapters/TreeView.aspx

b. http://www.techheadbrothers.com/Astuces.aspx/activer-css-friendly-control-adapters-code

2. Pour le 2ème point charger les nœuds filles au fil des ouvertures manuelles par les utilisateurs.

La dernière solution est de prendre des composants payants qui sont plus aboutis que les composants de bases comme ceux d’ Obout

fév

04

Posted by : oalessandri | On : 4 février 2010

Après avoir développé énormément sur Asp.net et sql serveur, je m’aperçois qu’il y a un défaut d’optimisation au niveau du système de gestion des membres sur la base de données sql : Des sessions anonymes engorgent la base de données qui gonfle à vue d’œil. Plus il y a de trafic plus la base croit c’est un vrai problème car rien n’a été prévu pour remédier à cela. On peut effectivement supprimer des profils non utilisés depuis un certain temps mais la base une fois qu’elle a prise une certaine taille elle la conserve. Comme il y a une solution à tout il faut prendre aussi  la casquette d’administrateur SQL Serveur et prévoir des tâches de travail de maintenance en supprimant régulièrement ces profils anonymes inutiles.

Voici un lien qui explique de façon précise le problème et donne une solution (Omar al Zabir s’attache particulièrement à la performance) : solution

Je ne vais pas vous donner ma solution car c’est finalement à peu près la même que celle d’Omar.

L’autre point qui peut altérer la performance est l’utilisation à outrance des Unique identifier dans le système SQL de gestion des membres mais là malheureusement on ne peut rien y faire (enfin à ma connaissance).

jan

21

Posted by : oalessandri | On : 21 janvier 2010

Après avoir passé beaucoup de temps à découvrir l’ADAM, le protocole Ldap et l’installation de la liaison de l’Active Directory avec Asp.Net, je vous transmets un bref retour d’expérience. Je dois mettre en place un Active Directory avec Asp.Net.

Pour cela je vais décrire brièvement les difficultés rencontrées Le plus simple est d’installer l’ADAM (Active Directory Application Mode) de préférence sur un serveur mais fonctionne très bien sur une station de travail. Viens ensuite le paramètre de l’AD. Une fois finie vous passez au paramétrage de votre site en mode Active Directory cela se passe surtout dans le web.config. Ensuite dans le code tout le système de gestion de membre se gèrent comme d’habitude c’est là tout l’intérêt. Attention car certaine données ne sont pas accessible via l’AD comme la date d’activité. Vous pouvez tester si le mode AD est activé pour basculer sur un autre système si nécessaire.

 

Voici quelques liens qui pourront vous servir :

Utiliser C# et Active Directory

How to: Enable or Disable User Accounts in Active Directory Domain Services

Authentification Active Directory depuis ASP .NET

Introduction à Active Directory Federation Services à destination des développeurs

 

Je prendrais plus de temps à vous expliquer en détail le paramétrage pas à pas mais pour le moment je manque de temps.

oct

05

Posted by : oalessandri | On : 5 octobre 2008

Il détecte un fichier dans Visual Studio .licx incohérent

aller dans My Project, supprimer le fichier licenses.licx ou son contenu

et l’ erreur devrait disparaître.
Cela se produit en général à la suite de l’ ajout d’ un composant

oct

03

Posted by : oalessandri | On : 3 octobre 2008

Cette fonction peut-être très utile, elle permet tout simplement après avoir cliqué

sur un LinkButton ou ImageButton ou dans une méthode d’ appliquer une redirection sur une

nouvelle fenêtre, chose impossible avec Response.Redirection

En anglais mais avec code C# ou Vb.Net

http://weblogs.asp.net/infinitiesloop/archive/2007/09/25/response-redirect-into-a-new-window-with-extension-methods.aspx

juil

23

Posted by : oalessandri | On : 23 juillet 2008

Vous trouverez ce symbole rss sur beaucoup de sites et quand vous cliquez dessus une page de texte, avec ce que l’ on appelle des balises, apparaît.

Cette page présente vos informations dans un format structuré de données qui peux être lu par un programme informatique tel qu’ un site web ou un logiciel sur votre PC.

Ces informations que vous publiez sont accessibles par d’ autres et le principe est que la source de l’ information n’ est modifiable que par celui qui l’ a créée. Cela permet de centraliser les informations à un seul endroit et de faciliter sa mise à jour.

Pour lire ces informations il vous suffit soit d’ utiliser un lecteur de flux RSS que vous installez sur votre PC, soit des scripts php ou code ASP.NET pour les afficher sur votre site.

Vous avez directement l’ information d’ un site sans avoir besoin d’ aller sur le site.

Pour les internautes :

Les logiciels : utiliser un lecteur RSS, Google Reader peut également lire des flux.

Les navigateurs : ils mettent en forme ces flux et vous donnent la possibilité de vous y abonner, gratuitement bien sûr. C’ est vous qui choisissez votre source d’ information. Par contre il faut aller régulièrement vérifier les informations si elles ont changées au contraire du ping service.

Voir la liste des lecteurs RSS

Pour les webmaster :

utiliser des scripts ou code pour afficher ces flux et également pour écrire des flux et les mettre à disposition.

Format d’ un flux Rss : un fichier texte avec une extension rss, xml ou autre c’ est le contenu qui est important!

<?xml version="1.0" encoding="US-ASCII"?>
<rss version="2.0" xmlns:im="http://purl.org/rss/1.0/item-images/" >
<channel>
<docs>http://www.emploi-en-ligne.com/</docs>
<description>Destin&#233; &#224; favoriser la diffusion d&#039;information sur l&#039;emploi, ...</description>
<link>http://www.emploi-en-ligne.com/</link>
<title>Emploi-en-ligne.com : Annuaire sur l&#039;emploi et le monde du travail</title>
<image>
<title>Emploi-en-ligne.com : Annuaire sur l&#039;emploi et le monde du travail</title>
<url>http://emploi-en-ligne.com/ressources/images/rss/logoeelpetit.gif</url>
<link>http://www.emploi-en-ligne.com/</link>
<description>Destin&#233; &#224; favoriser la diffusion d&#039;information sur l&#039;emploi, le travail, </description>
</image>
<category>Emploi</category>
<item>
<title>ICC Executive Search</title>
<link>http://www.emploi-en-ligne.com/sites/agences/cadre/fiches/52/detail/</link>
<description>ICC Executive Search, recherche et recrutement de cadres et dirigeants par approche direct en Europe.</description>
<guid>http://www.emploi-en-ligne.com/sites/agences/cadre/fiches/52/detail/</guid>
<author>rss@emploi-en-ligne.com</author>
</item>
</channel>
</rss>

mai

28

Posted by : oalessandri | On : 28 mai 2008

Depuis peu, je me suis aperçu, qu’ un "Sys is undefined" apparaissait comme erreur JavaScript ce qui apparemment n’ empêche pas les pages de fonctionner! Mais laisser traîner une erreur de ce type est toujours gênant et peut avoir des conséquences.

La solution a été résolue par Didier Danse qui donne une explication très clair : Solution

nov

03

Posted by : oalessandri | On : 3 novembre 2005

Voici comment implémenter une boite de dialogue sur une page web. En Asp.Net c’ est assez simple
pour qu’ il suffit d’ ajouter à un attribut d’ une balise du Javascript comme ce qui suit :

BntOuvrir.Attributes.Add(« onclick », « alert(Attention …?’); »)
BntSupprimer.Attributes.Add(« onclick », « if(confirm(‘Etes vous sur de vouloir supprimer cet élément?’)){}else{return false} »)

Pour plus de renseignements

oct

18

Posted by : oalessandri | On : 18 octobre 2005

Voici un article qui vous sera utile pour intégrer sur chaque ligne un numéro
unique dans un datagrid. permet de comprendre comment un datagrid fonctionne.

Pour plus de renseignements

sept

08

Posted by : oalessandri | On : 8 septembre 2005

Pour un client j’ ai eu besoin d’ un calendrier dans un DataGrid. Le Calendrier en PopUp

récupère une date et la place dans un champ.

Voici un très bon article vous donnant cette solution (en anglais):
Using a Pop-Up Calendar and a List Control

Partly powered by CleverPlugins.com