бинд типов в макросах
От: Ziaw Россия  
Дата: 12.04.10 05:12
Оценка:
Есть макрос, который должен нагенерить таких свойств в класс.

        public Persons : BLToolkit.Data.Linq.Table[ Nemerle.MVC.Models.Person ]
        {
            get { this.GetTable.[Nemerle.MVC.Models.Person]();}
        }


      foreach (modelType in modelTypes)
      {
        def typeName = modelType.Name;
        def propertyName = $"$(typeName)s";
        def typeFullName = modelType.FullName;
        def propType = $"BLToolkit.Data.Linq.Table[ $typeFullName ]";
        
        t.Define(<[decl:
            public $(propertyName : dyn) : $(propType : dyn)
            {
              get { this.GetTable.[$(typeFullName : dyn)](); }
            }
        ]>);
      }


При компиляции вылетают "Error: unbound type name 'BLToolkit.Data.Linq.Table[ Nemerle.MVC.Models.Person ]'" причем в двойном экземпляре. Как ему указать на тип? Кстати, когда я делал
        t.Define(<[decl:
            public $(propertyName : dyn) : BLToolkit.Data.Linq.Table[$(typeFullName : dyn)]
            {
              get { this.GetTable.[$(typeFullName : dyn)](); }
            }
        ]>);

unbound был тип Nemerle.MVC.Models.Person.
... << RSDN@Home 1.2.0 alpha 4 rev. 1468>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.