You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VB.net中如何动态向Object类型的rows集合添加元素?

在VB.NET中动态构建MiniExcel模板所需的rows数据

要动态向value("rows")添加元素,核心思路是先用**可变长度的集合(比如List(Of Object))**存储动态生成的条目,最后把集合转成数组赋值给rows即可,具体实现步骤如下:

1. 初始化基础结构

先创建字典和用于存储动态条目的列表:

Dim value As New Dictionary(Of String, Object)()
Dim rowsList As New List(Of Object)()

2. 遍历数据源并添加动态元素

假设你有实际的数据源(比如数据库查询结果、自定义集合),遍历它并逐个创建匹配模板字段的匿名类型对象,加入列表:

'' 替换成你的实际数据源遍历逻辑
For Each dataItem In YourActualDataSource
    '' 创建对应模板字段的匿名类型对象
    Dim templateItem = New With {
        .name = dataItem.EmployeeName,
        .department = dataItem.DepartmentName
    }
    rowsList.Add(templateItem)
Next

3. 将列表转为数组并赋值

把可变长度的列表转成Object()数组,赋值给字典的rows键:

value("rows") = rowsList.ToArray()

4. 执行模板保存

最后调用MiniExcel的保存方法:

MiniExcel.SaveAsByTemplate(path, templatepath, value)

完整可运行示例

'' 初始化字典和动态列表
Dim value As New Dictionary(Of String, Object)()
Dim rowsList As New List(Of Object)()

'' 模拟实际数据源(替换成你的业务数据)
Dim employeeData = New List(Of EmployeeInfo) From {
    New EmployeeInfo With {.EmpName = "Mike", .DeptName = "Finance"},
    New EmployeeInfo With {.EmpName = "Sarah", .DeptName = "IT"},
    New EmployeeInfo With {.EmpName = "Tom", .DeptName = "Operations"}
}

'' 遍历生成模板所需的条目
For Each emp In employeeData
    rowsList.Add(New With {
        .name = emp.EmpName,
        .department = emp.DeptName
    })
Next

'' 赋值并保存到模板
value("rows") = rowsList.ToArray()
MiniExcel.SaveAsByTemplate(path, templatepath, value)

'' 辅助类(仅示例用,实际根据你的数据源结构调整)
Public Class EmployeeInfo
    Public Property EmpName As String
    Public Property DeptName As String
End Class

内容的提问来源于stack exchange,提问作者Kit C

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 01:52:10