важен порядок полей в автоматической инициализации анонимных типов?

У меня есть сценарий создания анонимного списка из анонимных типов, и я достиг этого, используя

    public static List<T> MakeList<T>(T itemOftype)
    {
        List<T> newList = new List<T>(); 
        return newList; 
    } 

    static void Main(string[] args)
    {
       //anonymos type
       var xx = new
       {                             
          offsetname = x.offName,
          RO = y.RO1
       };

       //anonymos list
       var customlist = MakeList(xx);

       //It throws an error because i have given the wrong order
       customlist.Add(new { RO = y.RO2, offsetname = x.offName });
       customlist.Add(new { RO = y.RO3, offsetname = x.offName });

       //but this works
       customlist.Add(new { offsetname = x.offName, RO = y.RO2 });
       customlist.Add(new { offsetname = x.offName, RO = y.RO3 });
    }

это сообщения об ошибках

System.Collections.Generic.List.Add (AnonymousType # 1) 'содержит недопустимые аргументы

Аргумент '1': невозможно преобразовать из 'AnonymousType # 2' в 'AnonymousType # 1'

в чем причина этого ??

Ответы на вопрос(3)

Ваш ответ на вопрос