Пытаясь расширить границы использования провайдера типов, я решил, что могу использовать:
//Does not work
let exceldatatype = MyExcelTypeProvider.ExcelFile<filename="Brokernet.xls">
let file = new exceldatatype()
let f1(elem:exceldatatype .Row) =
elem.BID
, хотя это работает:
//Works
let file= MyExcelTypeProvider.ExcelFile<filename="Brokernet.xls">()
let f1(elem:MyExcelTypeProvider.ExcelFile<filename="Brokernet.xls">.Row) =
elem.BID
Это тоже не работает:
//Does not work
let typealias = MyExcelTypeProvider.ExcelFile<filename="Brokernet.xls">.Row
Полагаю, там есть какой-то глубокий урок о свойствах времени выполнения и времени компиляции, но я не уверен, что.
ОБНОВЛЕНИЕ
Как указано всегда полезным kvb, следующие работы:
type typealias = MyExcelTypeProvider.ExcelFile<filename="Brokernet.xls">
let file2 = new typealias()