begin process at 2010 02 10 06:54:51
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Mono

 > 

Général

 > 

[debutant C#] désire un petit coup de main..


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[debutant C#] désire un petit coup de main..

lundi 23 avril 2007 à 11:39:27 | [debutant C#] désire un petit coup de main..

Cyriusix

Bonjours à tous,

je dois réaliser un service web en C# qui devrait générer un fichier XML afin de fournir des informations à un client que je créerais plus tard, et malheureusement pour moi, la tâche m'est un peu trop ardue, moi qui suis un petit étudiant cherchant a faire des progrès en programation... c'est pourquoi, je me suis dis que peut'être quelqu'un ici pourait me donner un coup de main.

Concrétement, il s'agirait d'annalyser le code C# que j'ai déja réalisé et de me donner deux-trois petits trucs concernant les requêtes et méthodes que j'y ai fais, voir même m'aider dans mes démarches...

Si je ne l'affiche pas directement ici, c'est uniquement car il y a plusieurs pages.. mais si vous le désirez, je pourai très bien le faire..

Yaurait-il une personne disponnible à me donner un coup de main? Je lui en serais très très reconnaissant.

En éspèrant une réponse positive de l'un ou plusieurs d'entre vous, je vous salue.

amicalement, Cyriusix.
mardi 24 avril 2007 à 20:46:55 | Re : [debutant C#] désire un petit coup de main..

Cyriusix

Aïe... n'y a-t-il vraiment personne qui puisse me donner un petit coup de main?
mercredi 25 avril 2007 à 20:19:29 | Re : [debutant C#] désire un petit coup de main..

bloodi_eye

Salut donne ton code source
jeudi 26 avril 2007 à 08:12:34 | Re : [debutant C#] désire un petit coup de main..

Cyriusix

Salut bloodi_eye, merci de ta réponse et voici une partie de mon code:
_______________________________________________________
using System;
using System.Collections.Generic;
using System.Text;
using System.Data.OleDb;
using System.Diagnostics;
using System.Xml;

namespace OpenDotNet3600
{


    public class ReleveMeteo
    {
        private string strLocation;
        private DateTime dtmTime;
        private double lfWind;
        private string strVisibility;
        private string strSkyConditions;
        private double lfTemperature;
        private double lfDewPoint;
        private double lfRelativeHumidity;
        private double lfPressure;
        private string strStatus;

        public ReleveMeteo()
        {
        }

        public ReleveMeteo(string _strLocation, DateTime _dtmTime, double _lfWind, string _strVisibility, string _strSkyConditions, double _lfTemperature, double _lfDewPoint, double _lfRelativeHumidity, double _lfPressure, string _strStatus)
        {
            strLocation = _strLocation;
            dtmTime = _dtmTime;
            lfWind = _lfWind;
            strVisibility = _strVisibility;
            strSkyConditions = _strSkyConditions;
            lfTemperature = _lfTemperature;
            lfDewPoint = _lfTemperature;
            lfRelativeHumidity = _lfRelativeHumidity;
            lfPressure = _lfPressure;
            strStatus = _strStatus;
        }
...
        public static ReleveMeteo LireDernierReleve()
        {

            //déclaration des variables globales
            OleDbConnection connBD = null; // connexion sur la base de données
            OleDbCommand commSQL; // commande SQL à exécuter sur la source de données
            OleDbDataReader drCurseur; // Flux de lignes de données avant uniquement à partir d'une source de données
            ReleveMeteo DernierReleve;
            try
            {
                connBD = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + ("3600.mdb")); // création de la connexion sur la base de données
                connBD.Open(); // Ouverture de la connexion

                //Requete SQL à executer
                commSQL = new OleDbCommand("SELECT Last(Data.rec_date) AS rec_date, Last(Data.rec_time) AS rec_time, Last(Data.temp_out) AS temp_out, Last(Data.dewpoint) AS dewpoint, Last(Data.rel_hum_out) AS rel_hum_out, Last(Data.windspeed) AS windspeed, Last(Data.abs_pressure) AS abs_pressure FROM Data;", connBD);
                drCurseur = commSQL.ExecuteReader(); // Execute la requete
                drCurseur.Read();
                DernierReleve = new ReleveMeteo("Le Locle - CIFOM - Ecole Technique", DateTime.Parse(Convert.ToString(drCurseur["rec_date"]).Substring(0, 10) + " " + Convert.ToString(drCurseur["rec_time"]).Substring(11, 8)), Convert.ToDouble(drCurseur["windspeed"]), Convert.ToDouble(drCurseur["temp_out"]), Convert.ToDouble(drCurseur["dewpoint"]), Convert.ToDouble(drCurseur["rel_hum_out"]), Convert.ToDouble(drCurseur["abs_pressure"]));


                connBD.Close();
                return DernierReleve;
            }
            catch (Exception ex)    //Gère les erreurs du Try
            {
                if ((int)connBD.State == 1) // Connexion ouverte?
                    connBD.Close();    // Fermeture de la connexion sur la source de donnée

                Console.Write(ex);    // Affichage de l'erreur
                //Console.End(); // Arret du traitement de la page
                return null;
            }

        }
        public static ReleveMeteo LireReleveDateHeure(DateTime Date, DateTime Heure)
        {

            //déclaration des variables globales
            OleDbConnection connBD = null; // connexion sur la base de données
            OleDbCommand commSQL; // commande SQL à exécuter sur la source de données
            OleDbDataReader drCurseur; // Flux de lignes de données avant uniquement à partir d'une source de données
            ReleveMeteo ReleveDateHeure = new ReleveMeteo();
            int i;
            DateTime dtmTampHeure;
            for (i = -5; i < 11; i++)
            {
                dtmTampHeure = Convert.ToDateTime(Convert.ToInt32(Heure.Hour) + i);

                try
                {
                    connBD = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + ("3600.mdb")); // création de la connexion sur la base de données
                    connBD.Open(); // Ouverture de la connexion

                    //Requete SQL à executer
                    commSQL = new OleDbCommand("SELECT Data.rec_date, Data.rec_time FROM Data WHERE (((Data.rec_date)=dtmDate) AND ((Data.rec_time)>dtmDate dtmHeure) AND ((Data.rec_time)<dtmDate dtmHeure));", connBD);
                    drCurseur = commSQL.ExecuteReader(); // Execute la requete
                    drCurseur.Read();

                    if (drCurseur != null)
                        ReleveDateHeure.dtmTime = DateTime.Parse(Convert.ToString(drCurseur["rec_date"]).Substring(0, 10) + " " + Convert.ToString(drCurseur["rec_time"]).Substring(11, 8));

                    connBD.Close();
                    return ReleveDateHeure;
                }
                catch (Exception ex)    //Gère les erreurs du Try
                {
                    if ((int)connBD.State == 1) // Connexion ouverte?
                        connBD.Close();    // Fermeture de la connexion sur la source de donnée

                    Console.Write(ex);    // Affichage de l'erreur
                    //Console.End(); // Arret du traitement de la page
                    return null;
                }
            }
        }
....
___________________________________________________
voila déjà ca.. il s'agit en fait d'aller chercher des informations stockées dans la BD 3600.mbd, lesquelles viennent d'une petite station météo. Ces informations, sont triées par une ou plusieurs requêtes et pour l'instant, seule la méthode "LireDernierReleve" fonctionne. la secconde, LireReleveDateHeure, devrait prendre toutes les informations récoltées entre 2 dates et en faire des moyennes. Le problème est que les relevés de la station sont fait toutes les 10 minutes et donc si on dit une heure qui n'est pas correcte, il faudra aller chercher le relevé le plus près de cette heure.
Est-ce que c'est compréhensif? Penses-tu pouvoir m'aider et voudrais tu mon code complet avec la BD en .zip?

Merci  encor..
jeudi 26 avril 2007 à 09:40:51 | Re : [debutant C#] désire un petit coup de main..

rony4

qu'est ce que tu entend par "une heure n'est pas correcte"
Pourquoi tes méthodes sont static ??? Les méthodes statiques sont utilisés, en général, pour faire des calcul qui sont independant du comportement de l'objet. Peut-être as tu une idée derriere la tête?
A moins que tu ais un schema de conception bien définit qui t'obliges à procéder  de la sorte,
tu devrais :
- enlever le modificateur static
- à la contruction de ton objet initialiser la connection à la base de donnée ce qui t'éviteras de réecrire à chaque ce code dans tes méthode
- ecride une méthode dispose pour fermer la connexion à la base de donnée

Au fait c'est bloodi_eye j'ai changé de pseudo
jeudi 26 avril 2007 à 09:58:32 | Re : [debutant C#] désire un petit coup de main..

Cyriusix

alors ce que j'entend par une heure n'est pas correcte: Toutes les dix minutes, une information supplémentaire s'enregistre sur ma base de donnée. Cette information concerne la météo actuelle et ce classe dans la BD selon sa date et son heure d'enregistrement. Lorsque le client choisira l'heure a laquelle il désire voir le relevé, il y a de forte chance que cette heure ne soit pas repertoriée avec exactement les mêmes minutes demandées par le client. C'est pourquoi, il me faut faire une boucle qui ira chercher l'heure d'enregistrement la plus proche de l'heure choisie par le client, ce que je ne sais pas comment faire.. ;-)

Pour ce qui est des modificateur static, je comprend pas exactement ce que tu entends par "faire des calcul independant du comportement de l'objet".. Si je les enlèves, il faudrait que je les déclare quelque part non? et qu'est ce que ca apporterait a mon code?


jeudi 26 avril 2007 à 11:48:28 | Re : [debutant C#] désire un petit coup de main..

rony4

Ce n'est pas nécessaire de faire une boucle. Une requete du type
Select date
from table
where date <= aUneDate
order by date DESC

te retournera toutes de la table qui seront inférieures ou egales à aUneDate par ordre décroissant. Si aUneDate n'est pas enregistrée dans table c'est une date plus récente qui sortira en premier sinon c'est aUneDate.

le mot clé "static" permet de rendre un membre d'une classe indépendant de la vie d'un objet
Ainsi, en déclarant une varible static ou une methode static, tu n'a plus besoin d'instancier ta classe pour les utiliser.
Dans ton cas au lieu de faire :
ReleveMeteo obj = new ReleveMeteo(..)
obj.LireReleveDateHeure(...)
on fait  :
ReleveMeteo.LireReleveDateHeure(...)
Est ce vraiment ce que tu veux?

jeudi 26 avril 2007 à 13:08:58 | Re : [debutant C#] désire un petit coup de main..

Cyriusix

Merci pour la requête, je n'avais pas pensé à ca.. ;-)

pour le reste, je vais voir ce qui convient le mieu.




Cette discussion est classée dans : debutant, donner, main, désire, coup


Répondre à ce message

Sujets en rapport avec ce message

donner la main à l'utilisateur d'afficher dans listview les infomations qu'il désir [ par kobeyoussef ] salut tout le monde,    pour résumer j'ai une application de gestion en c#,bon il m'y ai demandé de donner la main à l'utilisateur la main à l'utilisa besoin d'un coup de main [ par LeNeutrino ] salut à tous,j'ai une appli windows fromet lorsque je lance mon opération d'export excel (derriere mon bouton j'appelle une classe qui ouvre une appli textBox à partir de main() [ par benjeddi ] salut aide moi svp g une form qui contient un textBox et je veux sauvegarder le contenu de  ce textBox  dans une variable à partir de la methode main( cour pour debutant en C# [ par benjeddi ] salut j suis entrain de faire mon projet de fin d'etude qui peux m'aider à touver un cour comment remplire les table d'une base de donnée à partir d'u debutant+dataset [ par benjeddi ] salut j'ai cré un datsetavec le designer puis j'ai inseré dans le tableadapter mes données jusqu'a ici tous va bien mais le probleme quand j'ai essaye Utiliser un contrôle à partir d'un autre .CS [ par jlf_2007 ] Bonjour,   Le "Form" principal "Main.cs" contient divers objets (boutons, barre de progression, cases à cocher, listbox...) auxquels je voudrais accéd Debutant en csharp [ par CicinhoRaul ] Bonjour a tous , j'aurai besoin de vos conseils.En effet je ne vais pas tarder à apprendre le C# et j'aimerai savoir par ou où par quoi commencer.Merc Debutant [ par Jideone ] SALut tout le monde,J ai 2 Programmes et je veux les reunir en un seul!-Le premier lit un fichier  comprenant des usernames et des numeros de telephon Recherche de tutorial pour grand debutant dans le C# [ par benito16 ] Bonjour,Je suis un debutant en C#. En fait, je m'y met. Je voudrai savoir s'il existe des liens où je pourrai trouver des cours sur les bases de la pr Empreintes digitales [ par olivierbalagizi ] Bonjour!Je dois développer un logiciel d'identification des personnes et intégrer la gestion des photos et empreintes digitales (sur les 10 doigts , m


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,920 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales