2009-04-05 5 views
0

je searcing quelques informations, et j'ai trouvé une méthode comme ceci:Comment puis-je faire classe dans un tableau?

public partial class Customer {   
    private string customerIDField; 

    private string companyNameField; 

    private string contactNameField; 

    private string contactTitleField; 

    private string addressField; 

    private string cityField; 

    private string regionField; 

    private string postalCodeField; 

    private string countryField; 

    private string phoneField; 

    private string faxField; 
    // Other properties 
} 

Ensuite le codeur utilisé cette classe comme celui-ci. Comment? Je veux vraiment apprendre comment ce codeur utilise "Client -----> Model.Customer []". Y a-t-il une méthode qui fait cela?

Répondre

2

Demandez-vous comment convertir un objet Customer en un tableau?

Il y a deux façons de le faire - l'exemple que vous montriez dans le deuxième morceau de code construit une List en ajoutant Customers, puis converti le List à un tableau. Cela fonctionne bien quand vous ne savez pas combien de clients vous avez, vous continuez à ajouter à la liste et créer et tableau à la fin et le tableau aura la taille correcte.

Si vous avez juste un objet customer vous pouvez également créer un tableau appelé customers avec un élément et ajouter un objet customer à elle comme ceci:

Model.Customer[] customers = new Model.Customer[1]; 
customers[0] = customer; 

ou, d'une manière encore plus courte:

Model.Customer[] customers = new Model.Customer[] {customer}; 
1

Votre confusion sur la façon dont la méthode retourne un tableau? Il utilise juste List<T>.ToArray(). La liste est créée un client à la fois, puis ToArray() est appelée à la fin.

0

Je ne sais pas ce que vous aimeriez faire ici.

Voulez-vous un tableau de client? Ou voulez-vous accéder aux propriétés dans Customer Class en utilisant une syntaxe de type tableau?

à passer par l'exemple de code (2ème)

le code fait une liste des clients,

crée un seul client qui est peuplé par un DataReader (ce repersents les données de base de données, qui permet un accès via son index de colonne ou le nom)

le nouveau cusomter est ajouté à la liste des clients

enfin la liste est convertie en un tableau (comme une liste (générique) il prend en charge la conversion à un client [] esprit h dehors le besoin de lancer).

HTH Bones

1

Comme le dit Jason, vous êtes juste retourne un tableau de Model.Customers de la liste <Model.Customer>. Il est possible d'accéder à une classe comme un tableau, et c'est d'utiliser un indexeur.

par exemple:

class Foo 
{ 
    public string this [int index] 
    { 
      get { return new string; } 
    } 
} 

Il est ensuite utilisé comme ceci:

Foo foo = new Foo(); 
string s = foo[0]; 

Il est évident que vous voulez faire quelque chose pour Foo revenir quelques valeurs en fonction de l'indice, mais c'est la méthode de base pour le faire.

+0

Y a-t-il une réponse ponctuelle? Votre solution me donne une idée mais pas exactement .... – Penguen

+0

Je ne comprends pas votre question. Qu'entendez-vous par "réponse ponctuelle"? –

Questions connexes