title: Adding objects to an array in the constructor
body: <p>I am making a simple c# web service that takes in a name and returns the corresponding phone number.</p>
  
  <p>So I created a contact class with a name field and a number field</p>
  
  <p>Here</p>
  
  <pre><code>using System;
  using System.Collections.Generic;
  using System.Linq;
  using System.Text;
  
  namespace PhoneService
  {
      class Contact
      {
          String name;
          int number;
  
  
          //constructor to make new contact
          public Contact(String name, int number)
          {
              this.name = name;
              this.number = number;
          }
      }
  }
  </code></pre>
  
  <p>And here is my web service class</p>
  
  <pre><code>using System;
  using System.Collections.Generic;
  using System.Linq;
  using System.Text;
  
  namespace PhoneService
  {
  
      class PhoneBook : IPhoneBook
      {
  
          Contact[] contactList = new Contact[4];
  
          //constructor
          public PhoneBook () 
          {
              contactList[0] = new Contact("Mary Jones", 1800252525);
              contactList[1] = new Contact("Bob Smith", 1800343434);
              contactList[2] = new Contact("Martin Dunne", 1800797979);
              contactList[3] = new Contact("Sarah Mitchel", 1800898989);        
         }
  
          //method to look up name
          public string lookUpNumberByName(string name)
          {
  
              //variable to hold name entered
              String nameEntered = name; ;
  
              /**
               code to compare the name entered with the
               the names of the contact objects.
               If the name is a match with a contact name then return
               the associated number
               **/
  
              //return number corresponding to the name
              return null;  
          }
  
  
      }
  }
  </code></pre>
  
  <p>So I am trying to make 4 simple contact objects stored in an array then when I enter a name I can check if it matches one of them and return the relevant phone number.</p>
  
  <p>The problem is with the constructor</p>
  
  <p>My assignment says-
  "Have the service maintain a list of names and phone numbers in a collection in memory which is initialised in the constructor for the service class."</p>
  
  <p>So I don't know what parts I should have in the constructor and what should be outside in the main class.Hopefully someone can let me know the best way I can go ahead with this.
  Thanks in advance</p>
  
  <p>UPDATE</p>
  
  <p>I have redone my code and made it a bit more simple by removing the contact class.
  Here it is</p>
  
  <pre><code>using System;
  using System.Collections.Generic;
  using System.Linq;
  using System.Text;
  
  namespace PhoneService
  {
  
      class PhoneBook : IPhoneBook
      {
  
          static String[] nameList = new String[4];
          static String[] numberList = new String[4];
  
          //constructor
          public PhoneBook()
          {
              nameList[0] = ("Mary Jones");
              nameList[1] = ("Bob Smith");
              nameList[2] = ("Martin Dunne");
              nameList[3] = ("Martin Dunne");
  
              numberList[0] = ("1800252525");
              numberList[1] = ("1800343434");
              numberList[2] = ("1800797979");
              numberList[3] = ("1800898989");
  
          }
  
          //method to look up name
          public String lookUpNumberByName(String name)
          {
  
  
  
              try
              {
  
                  if (string.Equals(name, nameList[0],     StringComparison.CurrentCultureIgnoreCase))
              {
                  return numberList[0];
              }
  
              if (string.Equals(name, nameList[1], StringComparison.CurrentCultureIgnoreCase))
                  {
                      return numberList[1];
                  }
  
                  if (string.Equals(name, nameList[2], StringComparison.CurrentCultureIgnoreCase))
                  {
                      return numberList[2];
                  }
  
                  if (string.Equals(name, nameList[3], StringComparison.CurrentCultureIgnoreCase))
                  {
                      return numberList[3];
                  }
  
              }
  
              catch (System.Exception)
              {
                 return ("That name is not found");
              }
  
          }//end of lookUpNumberByName method
  
      }//end of class phonebook
  
  
  }// end of phoneservice
  </code></pre>
  
  <p>My lookUpNumberByName method is getting an error saying not all code paths return a value</p>