我有一个函数会解析DataReader的结果,我不知道返回了多少项目,所以我想用一个while..do
循环来遍历阅读器,结果应该是某种类型的列表。
(fun(reader) ->
[
while reader.Read() do
new CityType(Id=(reader.GetInt32 0), Name=(reader.GetString 1), StateName=(reader.GetString 2))
])
这是我尝试过的,但我得到的警告是:
This expression should have type 'unit', but has type 'CityType'. Use 'ignore' to discard the result of the expression, or 'let'
to bind the result to a name.
那么迭代 DataReader 并创建列表的最佳方法是什么?