sb.AppendLine($" Private fieldName As dataType") sb.AppendLine($" Public Property propName() As dataType") sb.AppendLine(" Get") sb.AppendLine($" Return fieldName") sb.AppendLine(" End Get") sb.AppendLine(" Set(value As dataType)") sb.AppendLine($" fieldName = value") sb.AppendLine(" End Set") sb.AppendLine(" End Property") sb.AppendLine() Next
' --- Public API --- Public Shared Function GenerateDataClass(className As String, properties As Dictionary(Of String, String)) As String ' properties: Key = PropertyName, Value = DataType (e.g., "Id", "Integer") Dim sb As New StringBuilder() sb.AppendLine($"Public Class className") sb.AppendLine() vb code generator
Public Shared Function GenerateSqlInsertBuilder(tableName As String, columnNames As List(Of String)) As String Dim sb As New StringBuilder() sb.AppendLine("Imports System.Data.SqlClient") sb.AppendLine() sb.AppendLine($"Public Class tableNameSqlBuilder") sb.AppendLine(" Public Shared Function BuildInsertCommand(conn As SqlConnection, parameters As Dictionary(Of String, Object)) As SqlCommand") sb.AppendLine($" Dim columns As String = String.Join(" & "","" & ", columnNames.Select(Function(c) $""""c""""))") sb.AppendLine($" Dim valuesPlaceholders As String = String.Join(" & "","" & ", columnNames.Select(Function(c) $"@""c"))") sb.AppendLine($" Dim sql As String = $""INSERT INTO tableName (columns) VALUES (valuesPlaceholders)""") sb.AppendLine(" Dim cmd As New SqlCommand(sql, conn)") sb.AppendLine(" For Each kvp In parameters") sb.AppendLine(" cmd.Parameters.AddWithValue(kvp.Key, kvp.Value)") sb.AppendLine(" Next") sb.AppendLine(" Return cmd") sb.AppendLine(" End Function") sb.AppendLine("End Class") Return sb.ToString() End Function properties As Dictionary(Of String
Public Shared Function GenerateCsvReader(className As String, delimiter As String) As String Dim sb As New StringBuilder() sb.AppendLine("Imports System.IO") sb.AppendLine("Imports System.Text") sb.AppendLine() sb.AppendLine($"Public Class classNameCsvReader") sb.AppendLine(" Public Shared Function ReadCsv(filePath As String) As List(Of Dictionary(Of String, String))") sb.AppendLine(" Dim results As New List(Of Dictionary(Of String, String))()") sb.AppendLine(" Dim lines As String() = File.ReadAllLines(filePath, Encoding.UTF8)") sb.AppendLine(" If lines.Length = 0 Then Return results") sb.AppendLine($" Dim headers As String() = lines(0).Split(delimiter)") sb.AppendLine(" For i As Integer = 1 To lines.Length - 1") sb.AppendLine(" Dim values As String() = lines(i).Split(delimiter)") sb.AppendLine(" Dim row As New Dictionary(Of String, String)()") sb.AppendLine(" For j As Integer = 0 To headers.Length - 1") sb.AppendLine(" If j < values.Length Then") sb.AppendLine(" row(headers(j)) = values(j)") sb.AppendLine(" Else") sb.AppendLine(" row(headers(j)) = String.Empty") sb.AppendLine(" End If") sb.AppendLine(" Next") sb.AppendLine(" results.Add(row)") sb.AppendLine(" Next") sb.AppendLine(" Return results") sb.AppendLine(" End Function") sb.AppendLine("End Class") Return sb.ToString() End Function Value = DataType (e.g.