Exécution planifiée de code c#

Ant8386 Messages postés 36 Date d'inscription jeudi 9 juin 2005 Statut Membre Dernière intervention 16 mai 2006 - 16 mai 2006 à 14:29
 Utilisateur anonyme - 17 mai 2006 à 04:17
Bonjour à tous,

Voici une description détaillée de mon problème :

I - Environnement Technologique
Je fais actuellement une application asp.NET reposant sur une base ORACLE (que l'on appellera base1). J'utilise c# comme langage et ADO.NET (avec ODP.NET) comme modèle de connection à ma base oracle.

II - Besoin
Mettre à jour les utilisateurs de mon application (table USER de base1) à l'aide d'informations se trouvant dans une seconde base oracle (que l'on appellera base2). Et ce de façon quotidienne et automatique..

III - Solution envisagée
1) Créer un fichier de code c# (code.cs par exemple) qui va faire la mise à jour de base1 à l'aide base2
2) Construire un exécutable (code.exe) à l'aide de l'outil csc.exe du Framework .NET
3) Planifier l'exécution de code.exe avec le planificateur de tache windows

IV - Mes questions
1) Est-ce la bonne façon de faire ?
2) Pourquoi ai-je l'erreur suivante : "error CS0246 : The type or namespace name 'Oracle' could not be found (are you missing a using directive or an assembly reference ?)". Sachant que j'ai bien rajouté Oracle.DataAccess.Client dans le dossier BIN de mon application...

V - Code c# utilisé

using System;
using Oracle.DataAccess.Client;
using Oracle.DataAccess.Types;


namespace CSharpFriends
{
class Class1
{
static void Main(string[] args)
{


OracleConnection con = new OracleConnection();
con.ConnectionString = "Data Source=...D;User ID=...; password=...;";
con.Open();

Console.WriteLine("Connected to Oracle");

con.Close();
con.Dispose();

Console.WriteLine("Disconnected");
}
}
}

Désolé d'être un peu long et formel mais plus c'est clair, mieux on pourra m'aider je pense

Merci d'avance

Ant

4 réponses

MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
16 mai 2006 à 15:09
Salut

D'autres solutions t'on été données dans tonautre thread, donc je vois que tu as retenu l'option de planificateur de tache

Tu n'utilises pas d'IDE pour developper ton appli ?
En ligne de commande, utilises /reference: pour ajouter des references a ton appli (en l'occurence, vers tes assembly pour la connexion Oracle) ( voir ici pour les options du compilateur)

Conseil pour ton code :


<HR>

public static
void Main(
string[] args)
{
OracleConnection con =
new OracleConnection();
con.ConnectionString =
"Data Source=...D;User ID=...; password=...;";

try
{
con.Open();

Console.WriteLine(
"Connected to Oracle");
con.Close();

Console.WriteLine(
"Disconnected");
}

catch (
Exception e)
{

// Gestion de l'exception
}

finally
{
con.Dispose();
con =
null;
}

}

<HR>



Mx
MVP C#
0
Ant8386 Messages postés 36 Date d'inscription jeudi 9 juin 2005 Statut Membre Dernière intervention 16 mai 2006
16 mai 2006 à 15:32
Salut Morpion,

Merci pour ta réponse pour commencer. Je prend en note tes conseils pour le c#

Par contre sur le reste c'est encore un peu flou.. Qu'entends tu par IDE ? Microsoft Visual Web Developer c'est ça ?

En fait j'ai mon application asp.net qui a une architecture classique (App_Themes+App_Code+Bin+Fichiers aspx+Fichiers aspx.cs+Web.config...) et je voudrai y coupler mon fameux exécutable de code cs.. Sachant que mes assemblies sont définies dans mon web.config.. Et là j'avoue je bloque un poco...

Si tu as des conseils à me donner, je suis preneur !

Ant
0
fregolo52 Messages postés 1114 Date d'inscription mercredi 15 juin 2011 Statut Membre Dernière intervention 6 mai 2021 4
16 mai 2006 à 15:40
salut,

Oui l'IDE, c'est ca, mais on pense plutot à Visual Studio .NET
Tu parles encore d'aspx, mais fait comme t'as dit Nikoui, crée une appli (console) complètement à part de ton serveur ASP et tu l'exécute dans le planificateur de Windows.
Je ne sais pas si tu es en 1.1 ou 2.0, mais si tu es en 2.0, télécharge Visual Studio C# Express pour développer ton appli.
0
Utilisateur anonyme
17 mai 2006 à 04:17
Pour ce qui est de l'execution quotidienne, si ton programme tourne en permanence, voici une aide
qui m'a ete tres utile lorsque j'ai ete confronte au meme probleme
(plus qu'une aide, c'est une solution). Tout est explique, c'est
vraiment tres simple d'utilisation.


En esperant avoir pu etre utile.
0
Rejoignez-nous