VB.Net-vbNewLine在电子邮件中不起作用

VB.Net-vbNewLine在电子邮件中不起作用,vb.net,Vb.net,无法格式化我正在发送的电子邮件。我需要的所有数据都已返回,但有些VBNewline无法工作 这是密码。请注意,顶部的大块可以正常工作,包括末尾的&vbNewLine&vbNewLine双空格 Dim arErrors As Array = Array.CreateInstance(GetType(String), 1000) <<SQL select>> odbcCmd = New OdbcCommand(strSQL.ToString, odbcConn) odbc

无法格式化我正在发送的电子邮件。我需要的所有数据都已返回,但有些VBNewline无法工作

这是密码。请注意,顶部的大块可以正常工作,包括末尾的&vbNewLine&vbNewLine双空格

Dim arErrors As Array = Array.CreateInstance(GetType(String), 1000)

<<SQL select>>

odbcCmd = New OdbcCommand(strSQL.ToString, odbcConn)
odbcCmd.CommandTimeout = 100000
Rs = odbcCmd.ExecuteReader()
Do While Rs.Read
    If Len(Trim(Rs.Item("Cu_Rep_Id").ToString)) = 6 Then
        odbcCmd2 = New OdbcCommand(<<SQL Select>>)
        odbcCmd2.CommandTimeout = 100000
        Rs2 = odbcCmd2.ExecuteReader()
        If Rs2.HasRows Then
            If Trim(Rs2.Item("Rep_Job_Cd").ToString).IndexOf("SMIC REP,  SMIC - WAVERLY,  SALES REP - WAVERLY, SALES REP - MADISON") = -1 Then
                If CType(Rs2.Item("Rep_Term_Dt"), Date) < Now() Then
                    arErrors.SetValue("Difference for Rep: " & Trim(Rs.Item("Cu_Rep_Id").ToString) & " Navigator: " & FormatCurrency(CType(Rs.Item("Data_Vl_Nr"), Decimal), 2) & " TruComp: " & FormatCurrency(CType(Rs.Item("Data_Value"), Decimal), 2) & " Difference: " & FormatCurrency(CType(Rs.Item("Diff"), Decimal), 2) & " (Rep terminated on " & Rs2.Item("Rep_Term_Dt").ToString & ")", intMax)
                    intMax = intMax + 1
                Else
                    arErrors.SetValue("Difference for Rep: " & Trim(Rs.Item("Cu_Rep_Id").ToString) & " Navigator: " & FormatCurrency(CType(Rs.Item("Data_Vl_Nr"), Decimal), 2) & " TruComp: " & FormatCurrency(CType(Rs.Item("Data_Value"), Decimal), 2) & " Difference: " & FormatCurrency(CType(Rs.Item("Diff"), Decimal), 2), intMax)
                    intMax = intMax + 1
                End If
            Else
                arErrors.SetValue("Difference for SMIC Rep: " & Trim(Rs.Item("Cu_Rep_Id").ToString) & " Navigator: " & FormatCurrency(CType(Rs.Item("Data_Vl_Nr"), Decimal), 2) & " TruComp: " & FormatCurrency(CType(Rs.Item("Data_Value"), Decimal), 2) & " Difference: " & FormatCurrency(CType(Rs.Item("Diff"), Decimal), 2), intMax)
                intMax = intMax + 1
            End If
        Else
            arErrors.SetValue("Difference for Unknown Rep: " & Trim(Rs.Item("Cu_Rep_Id").ToString) & " Navigator: " & FormatCurrency(CType(Rs.Item("Data_Vl_Nr"), Decimal), 2) & " TruComp: " & FormatCurrency(CType(Rs.Item("Data_Value"), Decimal), 2) & " Difference: " & FormatCurrency(CType(Rs.Item("Diff"), Decimal), 2), intMax)
            intMax = intMax + 1
        End If
        Rs2.Close()

    ElseIf Len(Trim(Rs.Item("Cu_Rep_Id").ToString)) = 8 Then
        odbcCmd2 = New OdbcCommand(<<SQL Select>>)
        odbcCmd2.CommandTimeout = 100000
        Rs2 = odbcCmd2.ExecuteReader()
        If Rs2.HasRows Then
            If CType(Rs2.Item("Prog_End_Dt"), Date) < Now() Then
                arErrors.SetValue("Difference for CU: " & Trim(Rs.Item("Cu_Rep_Id").ToString) & " Navigator: " & FormatCurrency(CType(Rs.Item("Data_Vl_Nr"), Decimal), 2) & " TruComp: " & FormatCurrency(CType(Rs.Item("Data_Value"), Decimal), 2) & " Difference: " & FormatCurrency(CType(Rs.Item("Diff"), Decimal), 2) & " CU Status: " & Rs2.Item("Cu_Status").ToString & " (CU terminated on " & Rs2.Item("Prog_End_Dt").ToString & ")", intMax)
                intMax = intMax + 1
            Else
                arErrors.SetValue("Difference for CU: " & Trim(Rs.Item("Cu_Rep_Id").ToString) & " Navigator: " & FormatCurrency(CType(Rs.Item("Data_Vl_Nr"), Decimal), 2) & " TruComp: " & FormatCurrency(CType(Rs.Item("Data_Value"), Decimal), 2) & " Difference: " & FormatCurrency(CType(Rs.Item("Diff"), Decimal), 2) & " CU Status: " & Rs2.Item("Cu_Status").ToString, intMax)
                intMax = intMax + 1
            End If
        Else
            arErrors.SetValue("Difference for Unknown CU: " & Trim(Rs.Item("Cu_Rep_Id").ToString) & " Navigator: " & FormatCurrency(CType(Rs.Item("Data_Vl_Nr"), Decimal), 2) & " TruComp: " & FormatCurrency(CType(Rs.Item("Data_Value"), Decimal), 2) & " Difference: " & FormatCurrency(CType(Rs.Item("Diff"), Decimal), 2), intMax)
            intMax = intMax + 1
        End If
        Rs2.Close()
    Else
        If Trim(Rs.Item("Cu_Rep_Id").ToString) <> "" Then
            arErrors.SetValue("Invalid Ps_Nr or Contr_Nr: " & Trim(Rs.Item("Cu_Rep_Id").ToString), intMax)
            intMax = intMax + 1
        End If
    End If
Loop
Rs.Close()

If Dts.Variables("DeletedCount").Value <> "0" Then
    strBody = strBody & Dts.Variables("DeletedCount").Value & " records were removed from TruComp_Detail prior to load." & vbNewLine & vbNewLine
End If
Dim arErrors As Array=Array.CreateInstance(GetType(String),1000)
odbcCmd=新的OdbcCommand(strSQL.ToString,odbcConn)
odbcCmd.CommandTimeout=100000
Rs=odbcCmd.ExecuteReader()
边读边做
如果Len(修剪(Rs.Item(“Cu_Rep_Id”).ToString)=6,则
odbcCmd2=新的OdbcCommand()
odbcCmd2.CommandTimeout=100000
Rs2=odbcCmd2.ExecuteReader()
如果Rs2.HasRows,则
如果Trim(Rs2.Item(“Rep_Job_Cd”).ToString.IndexOf(“中芯国际代表、中芯国际-韦弗利、销售代表-韦弗利、销售代表-麦迪逊”)=1,则
如果CType(Rs2.Item(“Rep_Term_Dt”),Date)
同样,上面的vbNewLine和vbNewLine作为一个双空格完美地工作。下面是让我感到不舒服的循环。返回数据,但&vbNewLine不起作用

intCount = 0
Do While intCount < intMax
    strBody = strBody & arErrors.GetValue(intCount).ToString & vbNewLine
    intCount = intCount + 1
Loop

strBody = strBody & "Process complete."
intCount=0
在intCount
我最近也遇到了同样的问题。我通过使用StringBuilder和Append(System.Environment.Newline)方法而不是常规的字符串连接来解决这个问题

我不知道这是否有什么区别,但我用的是C


在我的应用程序中,切换到HTML格式是不可行的,因为该应用程序发送了许多其他电子邮件,都是文本格式的。

我最近遇到了同样的问题。我通过使用StringBuilder和Append(System.Environment.Newline)方法而不是常规的字符串连接来解决这个问题

我不知道这是否有什么区别,但我用的是C


在我的应用程序中,切换到HTML格式是不可行的,因为应用程序发送了许多其他电子邮件,都是文本格式。

电子邮件使用HTML格式,因此您希望改用

Do While intCount < intMax
    strBody = strBody & arErrors.GetValue(intCount).ToString & "<br/>"
    intCount = intCount + 1
Loop
Do While intCount