Bonjour,
J'ai le code suivant dans un webservice :
Le webservice contient d'autres objets "blablaDescriptor" qui héritent de RequestedData.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 public partial class RequestStatus { private RequestedData[] resultsField; [System.Xml.Serialization.XmlArrayAttribute(IsNullable=true)] public RequestedData[] Results { get { return this.resultsField; } set { this.resultsField = value; } } } public partial class RequestedData { } public partial class RiskModelDescriptor : RequestedData { private int idField; private string nameField; public int Id { get { return this.idField; } set { this.idField = value; } } [System.Xml.Serialization.XmlElementAttribute(IsNullable=true)] public string Name { get { return this.nameField; } set { this.nameField = value; } } }
Je fais appel au webservice comme cela ensuite :Cela ne compile pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 static void Main(string[] args) { OService webService = new OService(); RequestStatus rs1 = new RequestStatus(); rs1 = webService.GetTotos(); List<RiskModelDescriptor> rds1 = new List<RiskModelDescriptor>(); rds1 = rs1.Results.ToList<RiskModelDescriptor>(); for (int i = 0; i < rds1.Count; i++) { Console.WriteLine("rds1 : " + rds1.ElementAt(i).Name); } }
1/ Instance argument: cannot convert from 'OServiceConsumer.OWebService.RequestedData[]' to 'System.Collections.Generic.IEnumerable<OServiceConsumer.OWebService.RiskModelDescriptor>'
2/ 'OServiceConsumer.OWebService.RequestedData[]' does not contain a definition for 'ToList' and the best extension method overload 'System.Linq.Enumerable.ToList<TSource>(System.Collections.Generic.IEnumerable<TSource>)' has some invalid arguments
Voyez-vous comment convertir correctement le tableau de RequestedData en tableau de RiskModelDescriptor pour résoudre le problème n°1?
Pour résoudre le problème n°2, est-ce que je dois absolument me passer de List<> et passer par des tableaux [] ??? Ou alors quand le 1er problème sera résolu ce problème disparaîtra?
D'avance merci,
Partager