Articles avec le tag ‘Programmation’

Raccourci vers un fichier dans Visual Studio

Dans un projet de Visual-Studio, il peut être utile de créer un raccourci vers un fichier situé dans un autre projet ou répertoire.

Cette fonctionnalité existe mais elle n’est pas très bien documentée et pas vraiment intuitive.

Voici comment procéder :

  1. Sur le l’icône du projet ou dans le menu Projet, sélectionner “Add Existing item”
  2. La boîte de dialogue d’ouverture de fichier apparait.
  3. Sélectionner le fichier en question
  4. Appuyer sur la flèche à droite du bouton “Add” pour choisir “Add as Link”
  5. Enfin, pour copier le fichier dans le répertoire de destination automatiquement, il suffit de régler les propriétés du fichier à “Copy always”sinon choisir “Do not copy”.
  6. Et voilà !

vs-shortcut3

 

vs-shortcut1

vs-shortcut2

 

 

Sources

Retirer des accents en C#

Voici une méthode à sauvegarder dans un coin, elle retourne une chaîne en remplaçant les caractères accentués par leur équivalent non accentué.

éèëàâùûîïôÿçÉÈËÀÂÙÛÎÏÔŸÇ devient eeeaauuiioycEEEAAUUIIOYC

        public static string RemoveAccents(string s) {
            string destEncoding = Encoding.GetEncoding("iso-8859-8");
            return destEncoding.GetString(Encoding.Convert(Encoding.UTF8, destEncoding, Encoding.UTF8.GetBytes(s)));
        }

Sites FAQ Programmation…

Pour trouver des réponses aux questions courantes concernant : C#, .Net, la programmation, ou l’informatique en général, voici une sélection de sites :

Remplissage de champs d’un site web

Comment remplir automatiquement des champs d’un formulaire d’une page web ?

Cette méthode marche pour un navigateur intégrer dans une application Winform.

Il faut récupérer l’objet Document du navigateur, ensuite récupérer les objets correspondants aux champs identifiant et mot de passe. On peut ensuite injecter les valeurs en utilisant la méthode SetAttribute. Les champs se remplissent automatiquement et visuellement !

            var document = webBrowser.Document;
            if (document == null) {
                return;
            }
            var loginElement = document.GetElementById(LOGIN_INPUT_NAME);
            if (loginElement != null) {
                loginElement.SetAttribute("value", textBoxLogin.Text);
            }
            var passwordElement = document.GetElementById(PASSWORD_INPUT_NAME);
            if (passwordElement != null) {
                passwordElement.SetAttribute("value", textBoxPassword.Text);
            }

Pour se connecter, cela équivaut à envoyer le formulaire parent des champs. Il faut pour cela récupérer l’objet correspondant au formulaire et invoquer la méthode submit.

            var form = GetForm(document.GetElementById(LOGIN_INPUT_NAME));
            if (form != null) {
                form.InvokeMember("submit");
            }

Autofill web page

Code Source AutoFillWebPage.zip

Valider des entités avec nHibernate Validator

nHibernate Validator est un sous projet de nHibernate, célèbre ORM pour environnement .Net.
Cette librairie gagnerait à être un peu plus connue tant elle est utile et simple à mettre en œuvre.
Elle permet de valider des entités (POCO : Plain Old CLR Object) en définissant des contraintes via des attributs ou fichier XML.

Il existe de nombreuses contraintes par défaut ex: NotNull, Max(x), Range (x,y)…
et l’utilisateur peut écrire ses propres contraintes.

Les objets sont validés en mémoire et nHibernate Validator retourne un tableau des contraintes non respectées avec le message d’erreur.

+ de détails ici : http://nhforge.org/wikis/validator/nhibernate-validator-1-0-0-documentation.aspx

Récupérer le nom de la méthode en cours d’exécution en .Net

Voici un bout de code bien pratique tracer le code qui pose problème

using NameSpace System.Diagnostics;
using System.Reflection;

// Récupère le nom de la méthode en cours d’exécution
StackFrame stackFrame1 = new StackFrame();
MethodBase methodBase1 = stackFrame1.GetMethod(); 

// Récupère le nom de la méthode qui a appelé la méthode en cours l’exécution.
StackTrace stackTrace = new StackTrace();
StackFrame stackFrame = stackTrace.GetFrame(1);
MethodBase methodBase = stackFrame.GetMethod();

Source : vsdotnet

Construire une requête XPath

Pour ceux, qui comme moi, oublient les syntaxes de langages qu’on n’utilise pas tous les jours, voici un petit utilitaire qui permet de construire une requête XPath de manière visuelle. C’est très simple, il suffit de charger le fichier XML, de sélectionner l’élément désiré et de copier-coller le code généré ! Il est également possible de charger le fichier saisir sa requête et voir le résultat des éléments sélectionnés.

VisualXPath

Voici le site de l’auteur : http://weblogs.asp.net/nleghari/articles/27951.aspx

Téléchargement Téléchargement

Ecrire un fichier temporaire

Pour écrire des données dans un fichier temporaire :

string tempFileName = Path.GetTempFileName();
File.WriteAllText(tempFileName, donnees, Encoding.Default);
donnees = File.ReadAllText(tempFileName);