【问题标题】:What type of columns would be created executing this code?执行此代码将创建什么类型的列?
【发布时间】:2018-10-02 11:22:17
【问题描述】:

我创建了一个函数,它读取制表符分隔的文本文件并根据其标题排列创建一个数据表。

下面是我的代码:

Private Function MakeDataTable(ByRef XSplitLine) As DataTable
    Dim AMZTable As New DataTable
    Dim i = 0
    For Each item In XSplitLine
        AMZTable.Columns.Add(XSplitLine(i).ToString)
        i += 1
    Next

    Return AMZTable
End Function

XSplitLine 是一个数组,其中包含来自文本文件的标题名称(该文本文件中的第一行)。如您所见,我在创建列时没有提及任何数据类型,但它仍然执行没有任何错误。

我的问题是这些列中可以存储什么类型的值,因为我在代码中没有提到它?

【问题讨论】:

  • 您应该使用Option Strict On,以便Visual Studio 可以为您指出代码中的一些问题。

标签: vb.net datatable datacolumn datacolumncollection


【解决方案1】:

列的数据类型为String

https://referencesource.microsoft.com 中可以看出,DataColumnCollection.Add 使用的重载调用DataColumn 的构造函数,该构造函数接受字符串作为参数。
这反过来又调用constructor which accepts four arguments 并设置第二个参数(数据类型)到typeof(string)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-18
    • 1970-01-01
    • 1970-01-01
    • 2015-07-13
    • 1970-01-01
    相关资源
    最近更新 更多