I have a normal list based in model like:
Model:
public class ProjectHistoryModel
{
    public int  JobNumber { get; set; }
    public int DesignKey { get; set; }
    public string ProjectName { get; set; }
}
In class I have a list of this model like:
public List<ProjectHistoryModel> ProjectHistoryModel = new List<ProjectHistoryModel>();
Then I save that list into xml file as:
Serialize list:
public static string SerializeObject<T>(this T value)
{
    if (value == null)
    {
        return string.Empty;
    }
    try
    {
        var xmlserializer = new XmlSerializer(typeof(T));
        var stringWriter = new StringWriter();
        using (var writer = XmlWriter.Create(stringWriter))
        {
            xmlserializer.Serialize(writer, value);
            return stringWriter.ToString();
        }
    }
    catch (Exception ex)
    {
        throw new Exception("An error occurred", ex);
    }
}
So I save list just sending it to that method as:
var historyXml = ProjectHistoryModel.SerializeObject();
XML.HistoryProjects = historyXml;
XML.SaveXML();
Now my question is: How can I deserialize this xml and convert to a list again? I try it something like this but I get stuck:
  public static List<string> Load()
        {
            var xmlList = XML.HistoryProjects;
            using (var stream = System.IO.File.OpenRead(FileName))
            {
                var serializer = new XmlSerializer(xmlList));
                return serializer.Deserialize(stream) as [xmlList];
            }
        }
Regards
 
    