Ajouter l’intellisense pour jQuery dans Visual Studio 2010

2010-11-22 1 Min. lecture Javascript Visual Studio 2010

jQuery, la bibliothèque javascript créée par John Resig, choisie par Microsoft pour embellir ASP.NET est désormais intégrée à Visual Studio 2010 avec l’intellisense (auto-complétion).

Cette auto-complétion fonctionne avec les fichiers xxxx-vsdoc.js disponibles sur le site de jQuery.

Release note

Le lien “Visual Studio” pointe vers le fichier jquery-1.4.1-vsdoc.js correspondant au fichier javascript de la librairie jquery-1.4.1.js. Ces 2 fichiers doivent être placés dans le même dossier et respecter le même format comme décrit ci-dessous :

continuer la lecture

Réinitialiser les options de développement sous Visual Studio 2010

2010-11-15 1 Min. lecture Visual Studio 2010

Au 1er démarrage de Visual Studio 2010, un assistant propose de choisir quel type de développement vous allez pratiquer le plus souvent (C#, C++, Web, etc…).

VS settings Ce choix va notamment influer sur les propositions faites lors de la création d’un nouveau projet. Ici mon Visual Studio est configuré avec les options “Visual C#”. Lors de la création d’un nouveau projet, Visual Studio ne me propose que des projets en C# :

continuer la lecture

Imagine Cup 2001 un objectif pour cette année

2010-09-12 1 Min. lecture Imagine Cup 2011

Article un peu hors du commun, puisqu’il ne traite pas d’un sujet technique mais d’un événement : Imagine Cup.

C’est un objectif pour moi cette année et je suis à la recherche d’une équipe ultra motivée afin d’apprendre un maximum de choses et aller le plus loin possible dans la compétition. La catégorie qui m’intéresse est le Software Design, qui accepte les équipes d’une à quatre personnes.

La deadline pour le round 1 est fixée au 27 janvier 2011. Il est donc temps de s’y mettre.

continuer la lecture

Se connecter en remote shell sur Windows Serveur avec WinRM et .NET

2010-09-12 3 Min. lecture .NET C# Windows Server 2008

Windows Remote Management permet d’ouvrir à distance un shell sur Windows Server 2008 (WinRM existe depuis Windows Vista et Windows Server 2003 R2). Concrétement, il est possible d’exécuter des lignes de commandes sur un serveur à distance.

Pour des raisons évidentes de sécurité, certains pré-requis sont nécessaires. Si l’ordinateur client n’est pas sur le même domaine que le serveur, ou si l’authentification ne se fait pas par Kerberos alors les transmissions doivent être chiffrées. Concernant la ligne de commande, les droits sont respéctés. Un utilisateur qui ne présente pas les droits suffisants pour exécuter une commande sur le serveur se verra refuser l’exécution de la dite commande à distance.

continuer la lecture

Requêter Active Directory via .NET

2010-08-28 4 Min. lecture .NET C#

Active Directory, le service d’annuaire de Microsoft se repose sur le protocole LDAP. Pouvoir se connecter à l’Active Directory, y ajouter des utilisateurs, des groupes, etc… est possible avec le framework .NET grâce au namespace System.DirectoryServices.

Avant de commencer le code, il faut ajouter une référence dans votre projet vers System.DirectoryServices.

Se connecter à Active Directory

La connexion se fait en 2 temps. Premièrement, on créé un DirectoryEntry avec le serveur, nom d’utilisateur, mot de passe, etc… Si une correspondance est faite dans l’AD, on continue. Si le couple utilisateur/mot de passe, l’adresse du serveur n’est pas bonne, etc… une exception de type DirectoryServicesCOMException sera levée. Si la connexion est faite, on pourra tester que pour se connecter, l’utilisateur doit être dans le groupe administrateur. Cette recherche se fait à l’aide d’un DirectorySearcher. La syntaxe du filtre est celle propre à LDAP. Le filtre utilisé ci-dessous, vérifie que l’utilisateur a bien pour nom “Aymeric”, qu’il appartient au groupe administrateur et qu’il est bien de type “user”.

continuer la lecture

Activer les connexions à distance sur SQL Server 2008

2010-07-21 3 Min. lecture SQL Server

Par défaut, Windows Server 2008 n’accepte pas les connexions à distances. MSDN fournit un petit guide (ici) des quelques étapes à réaliser afin de les activer. Voici un résumé (en français) ainsi que quelques petites précisions :

  • L’utilisateur qui se connectera à la base de données doit avoir les droits de login et de lecture/écriture sur le serveur. Ces paramètres se trouvent dans les propriétés de l’utilisateur (dans Microsoft Management Studio 2008, dépliez Security puis Logins et cliquez droit sur l’utilisateur concerné : Properties) :
    1. L’autorisation du login est dans Status.
    2. Les droits sont dans User Mapping (db_datareader et db_datawriter).

Attention, si vous souhaitez utiliser l’authentification SQL Server plutôt que l’authentification Windows, il faut l’activer : Dans Microsoft Management Studio 2008, cliquez droit sur le serveur : Properties. Dans le menu Security, cliquez sur SQL Server and Windows Authentication mode.

continuer la lecture

Accélérer le temps de chargement d’Entity Framework 4 avec EFCachingProvider en ASP.NET

2010-07-11 3 Min. lecture .NET C# Entity Framework

Comme vu précédemment dans l’article : Reduire le temps de chargement d’une page ASP.NET avec le SQL Cache Dependency, il est possible de réduire le temps de chargement d’une page en mettant en cache les résultats récupérés dans la base de données.

L’article précédent traité du SQL Cache Dependency avec Linq To SQL. Avec Entity Framework 4, cette méthode n’est pas disponible, il faut donc se rabattre sur un provider personnalisé créé par Jaroslaw Kowalski : EFCachingProvider.

continuer la lecture

Utiliser des procédures stockées avec Entity Framework 4

2010-07-03 3 Min. lecture .NET C# Entity Framework

Pour des raisons de sécurité et de performance, il peut être judicieux d’utiliser des procédures stockées pour interagir avec la base de données. Cet article a pour but de démontrer comment utiliser les procédures stockées avec le framework Entity 4.

Le but de l’article est de créer 4 procédures stockées pour ajouter, modifier et récupérer des blogs dans la base de données :

Insert(nvarchar(max) name, nvarchar(max) url)

Pour ajouter un blog dans la base de données. Elle retourne l’ID du blog qui vient dêtre ajouté.

continuer la lecture

Documenter son code .NET avec GhostDoc

2010-06-30 3 Min. lecture .NET Visual Studio 2010

Bien documenter son code est important afin d’aider d’une part d’autres développeurs à comprendre le code le plus rapidement possible mais aussi à soi-même afin d’être le plus efficace possible lors de la maintenance du code.

Visual Studio utilise le XML pour ses commentaires, pour par exemple ajouter une description à une méthode.

/// <summary>
/// Tests the specified param1.
/// </summary>
/// <param name="param1">The param1.</param>
/// <param name="param2">The param2.</param>
/// <param name="param3">The param3.</param>
/// <param name="param4">The param4.</param>
/// <returns>This method return 1</returns>
public int Test(int param1, int param2, int param3, int param4)
{
    return 1;
}

Si l’application fait plusieurs milliers de lignes, il est long et fastidieux de documenter chaque méthode, classe, etc… Souvent la quantité se fait au détriment de la qualité. Pour remédier à cet obstacle et toujours garder un code correctement documenté, il est possible d’utiliser un outil nommé GhostDoc. **GhostDoc **s’intègre à Visual Studio (de 2005 à 2010) et génère via un raccourci clavier (Ctrl-Shift-D par défaut) la documentation d’une méthode, classe, etc… Seule condition, respecter quelques standards de nommage dans votre code. Par exemple “myParam” pour un paramètre et “DefineTheParam” pour une méthode. En effet GhostDoc va découper les noms de paramètres, méthodes, etc… afin de construire des phrases dans la documentation.

continuer la lecture

Corriger l’erreur « Cannot resolve the collation conflict between « xxx » and « yyy » in the equal to operation. » sur SQL Server

2010-06-04 1 Min. lecture Base De Données SQL Server

La comparaison de 2 chaines dans une requête est lourd mais parfois inévitable pour comparer 2 colonnes. Si ces 2 colonnes sont dans 2 bases de données diffèrentes, il peut y avoir des conflits de “collation” :

Cannot resolve the collation conflict between "French_CI_AS" and "SQL_Latin1_General_CP1_CI_AS" in the equal to operation.

pour la requête suivante :

SELECT table1.colonne1
FROM dbo.table1 AS t1
JOIN dbo.table2 AS t2 ON (t1.colonne1 = t2.colonne2 COLLATE collationTable1);

Ici la table1 a pour collation French_CI_AS et table2 a pour collation **SQL_Latin1_General_CP1_CI_AS. **

continuer la lecture
Articles plus anciens messages plus récents