2013-08-07 5 views
3

J'ai cherché quelques sujets à ce sujet, mais je suis toujours coincé, je suis assez nouveau à C# et cette erreur commence à me donner un mal de tête. J'essaye d'Initiliser une liste mais je reçois toujours ce message d'erreur. Toute aide est la bienvenue.ne contient pas un constructeur qui prend '1' arguments

public static List<BookOperator> CreateBookOperators()  
    { 
     List<BookOperator> ops = new List<BookOperator>(); 

     BookOperator op = new BookOperator(ops); 
     ops.Add(op); 

     return ops; 
    } 
+0

Avez-vous débogué? Où est l'erreur lancée? Il pourrait s'agir de votre classe BookOperator qui n'a pas de constructeur prenant 1 argument –

+5

@ MaximeR.C qui est une erreur de compilation, donc vous ne pouvez pas le "déboguer" dans le débogueur ... –

+0

Pouvez-vous inclure les signatures (' public BookOperator (...) ') pour tous les constructeurs de votre classe BookOperator? – Michelle

Répondre

1

Il me semble que il n'y a aucune raison d'essayer de passer la liste au livre-opérateur. Même l'argent dit:

public static List<BookOperator> CreateBookOperators()  
{ 
    List<BookOperator> ops = new List<BookOperator>(); 
    BookOperator op = new BookOperator(); 
    ops.Add(op); 
    return ops; 
} 

ou plus laconiquement:

public static List<BookOperator> CreateBookOperators() { 
    return new List<BookOperator> { 
     new BookOperator() 
    }; 
} 
5

cela signifie que votre classe BookOperator n'a pas de constructeur qui prend un arguement. Si vous pouvez montrer le code pour BookOperator, ce serait utile. Je suppose que vous en avez besoin, je le dis parce que votre code actuel n'a aucun sens. Vous passez une liste en tant que paramètre à la classe et ajoutez votre même classe à la liste. Boucle ne me paraît logique

BookOperator op = new BookOperator(); 
ops.Add(op) 
2

Si l'objet BookOperator besoin de connaître son propriétaire alors le BookOperator a besoin d'au moins 1 argument dans son constructeur.

public class BookOperator 
{ 
    public List<BookOperator> BookOperators { get; private set; } 
    public BookOperator(List<BookOperator> bookOperators) 
    { 
     BookOperators = bookOperators; 
    } 
} 
Questions connexes