我從三個不同來源獲取推文,每個來源都有或多或少的數據,每個來源都給我一個記錄類型的序列。比方說:F#中來自不同來源的統一(tweets/recordtypes)
type Tweet1 = { id:int64; text:string;}
type Tweet2 = { id:int64; text:string; user_name:string}
type Tweet3 = { id:int64; text:string; user_name:string; date:DateTime}
一個人如何去統一三個序列,seq<Tweet1>, seq<Tweet2>, seq<Tweet3>
?
我想使用:
- 一個接口,但再上溯造型時,我西港島線丟失數據(我也不能似乎得到一個記錄類型來實施intertface)
- 創建automaticaly有記錄類型反射與所有proprietes選項類型,除了那些共享,然後映射所有記錄類型到這一個,但這似乎並不很自然
任何想法?
感謝
您可以使用'Seq.map'將Tweet1和Tweet2記錄映射到Tweet3類型,因爲它似乎保存了「最」信息。 – vcsjones 2011-05-22 16:53:46
您還可以將'user_name'和'date'更改爲Options,因爲並非所有數據源都提供這些字段。 – 2011-05-22 17:42:52