Compatibilité C# 4.0 vers 3.5
Bonjour,
J'ai un code qui fonctionne parfaitement lorsque mon projet est compilé avec le Framework .NET 4.0 Client Profile (sur SharpDevelop).
Mais je dois l'exécuter sur un Windows Server qui ne va que jusqu'au Framework .NET 3.5
Je recompile donc mon projet avec le Framework .NET 3.5 Client Profile mais mon code ne fonctionne plus.
L'erreur ne me parle pas du tout :
Impossible d'intercepter l'exception. Le programme en cours de débogguage ne peut pas continuer et les propriétés ne peuvent pas être évaluées.
System.BadImageFormatException: Impossible de charger le fichier ou l'assembly 'sophie.exe' ou une de ses dépendances. Le module était censé contenir un manifeste de l'assembly.
J'ai l'avertissement suivant remonté par SharpDevelop :
Found conflicts between different versions of the same dependent assembly. (MSB3247)
Mon code (au cas où cela peut aider à la résolution) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121
| using System;
using System.IO;
using System.Xml;
using System.Text;
namespace sophie
{
class Program
{
public static void Main(string[] args)
{
////////////////// initialisation des variables ////////////////////////////////////
// variables de texte
string aaa = "";
string bbb = "";
string ccc = "";
string ddd = "";
string eee = "";
string fff = "";
string ggg = "";
string hhh = "";
string iii = "";
// variables de travail
string txtlog = "";
int countRequest = 0;
// variables fichier
string logPath = "C:/Users/xxx/Desktop/flux_xml.xml";
string logPath2 = "C:/Users/xxx/Desktop/logSave.log";
string logPath3 = "C:/Users/xxx/Desktop/logModifiee.log";
/////////////////////////////////////////////////////////////////////////////////////
// Choix du XML et parcours
XmlReader xmlReader = XmlReader.Create(logPath);
while(xmlReader.Read())
{
// condition pour éviter les doublons dans la log
if(countRequest==0)
{
//conditions pour récupérer les informations intéressantes
if((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "aaa"))
{
if(xmlReader.HasAttributes)
{
txtlog += xmlReader.GetAttribute("bbb")+";";
}
}
if((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "ccc"))
{
txtlog += "toto"+";";
}
if((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "ddd"))
{
txtlog += "toto"+";";
}
if((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "eee"))
{
xmlReader.Read();
txtlog += xmlReader.Value+";";
}
if((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "fff"))
{
xmlReader.Read();
aaa = xmlReader.Value;
}
if((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "ggg"))
{
xmlReader.Read();
bbb = xmlReader.Value;
}
if((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "hhh"))
{
xmlReader.Read();
ccc = xmlReader.Value;
}
if((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "iii"))
{
xmlReader.Read();
ddd = xmlReader.Value;
}
if((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "jjj"))
{
xmlReader.Read();
eee = xmlReader.Value;
}
if((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "kkk"))
{
xmlReader.Read();
fff = xmlReader.Value;
}
if((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "lll"))
{
xmlReader.Read();
ggg = xmlReader.Value;
}
if((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "mmm"))
{
xmlReader.Read();
hhh = xmlReader.Value;
}
if((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "nnn"))
{
xmlReader.Read();
iii = xmlReader.Value;
}
// éviter les doublons
if((xmlReader.NodeType == XmlNodeType.EndElement) && (xmlReader.Name == "ooo"))
{
countRequest++;
}
}
}
// ajouter les variables
txtlog += aaa + ";" + bbb + "|" + ccc + "|" + ddd + "|" + eee + "|" + fff + "|"
+ ggg + "|" + hhh + "|" + iii + "|" + jjj + ";;;;;;";
// sauvegarder l'ancienne log
string txtXML = File.ReadAllText(logPath);
File.WriteAllText(logPath2, txtXML);
// remplir le nouveau fichier de log
File.WriteAllText(logPath3, txtlog);
}
}
} |
Merci d'avance pour vos réponses face à cette exception dont les réponses de Google ne m'aident pas vraiment (niveau compréhension)