title: Add to collection if not already available with linq
body: <p>I have a collection in C# which stores data of persons. 
  Now i want to update the collections list. 
  Before i update any object in the list i want to check if the person already exists. All persons have 9 proporties. I want to check by two properties if the stored data is already in the collection.  </p>
  
  <p>If the person already exist, i want to drop the old data and want to save all properties from the new one.<br>
  If the person not exist, i want to create a new object with the new data.<br>
  New data i read from a external file and save it to the collection list.<br>
  Old data is stored in a xml file and i load it to the collection list.  </p>
  
  <p>My approach so far:</p>
  
  <p>Add new person to list, even its available. Then delete duplicates and halt persons which are later added to list.</p>
  
  <p>or</p>
  
  <p>before adding select with linq by <code>person.name</code> and <code>person.sname</code> and set all properties by the new data, if not exists create new one.</p>
  
  <pre><code>List&lt;person&gt; with {name, sname, mobile, email, adress1, adress2, fone, age, gender}
  
   List&lt;person&gt; list = new List&lt;person&gt;;
   Person person = new Person();
   XDocument doc = XDocument.Load(XMLPath);
  
   // somethink like that
   list.Select(list.Name &amp;&amp; list.sName)
   where ...
  </code></pre>
  
  <p>I am new with linq so i had problems to realize it.</p>