gridview 대신 HTML 표를 사용하여 데이터를 처리하고 싶습니다. 왜 HTML 테이블인가? 왜냐하면 전자 메일을 보낼 때 출력을 사용하므로 gridview 대신 HTML 표를 사용하는 편이 낫습니다. 또한 시스템이 서버에서만 실행되므로 객체를 사용하고 싶지 않습니다. 자동으로 이메일을 보냅니다. 아무도 내 문제를 도와 줄 수 있습니까? 고맙습니다.Gridview 대신 HTML 표 사용
여기까지 제가 지금까지 있습니다. 아래 예제에서는 Append를 사용하여 HTML Table을 사용하는 방법을 모르기 때문에 gridview를 사용하고 있습니다.
Vb.Net
이것은 내 함수를 호출하는 방법입니다
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
SendEmail()
End Sub
이 내가 추가하여 HTML 테이블로 변환 할 내 이메일 기능입니다.
Protects Sub SendEmail()
For Each dt As System.Data.DataTable In prod3()
Dim i As Integer = i + 1
Dim dv As New System.Data.DataView(dt)
Dim dt2 As System.Data.DataTable = dv.ToTable(False, {"Name", "Product", "Expiry"})
Dim y As Date = dt.Rows(0)("pdate")
Dim dte1, dte2, dte3 As String
Select Case i
Case 1
dte1 = dt.Rows(0)("pdate").ToString
dte1 = y.Date.ToString("MM/dd/yyyy")
dte1 = y
GridView11.DataSource = dt2
GridView11.DataBind()
Case 2
dte2 = dt.Rows(0)("pdate").ToString
dte2 = y.Date.ToString("MM/dd/yyyy")
dte2 = y
GridView12.DataSource = dt2
GridView12.DataBind()
Case 3
dte2 = dt.Rows(0)("pdate").ToString
dte2 = y.Date.ToString("MM/dd/yyyy")
dte2 = y
GridView13.DataSource = dt2
GridView13.DataBind()
End Select
Next
End SUb
Public Function prod3() As List(Of DataTable)
Dim ds As New DataSet
Dim cmd As New SqlCommand
Dim ldt As New List(Of DataTable)
Dim adp As SqlDataAdapter = New SqlDataAdapter
Dim c As New SqlConnection("myconnection")
cmd.Connection = c
cmd.CommandText = "storedprocname"
cmd.Parameters.AddWithValue("@name", "%")
cmd.Parameters.AddWithValue("@product", "%")
cmd.Parameters.AddWithValue("@expiry", "%")
cmd.Parameters.AddWithValue("@datefrom", DateTime.Today.AddDays(1))
cmd.Parameters.AddWithValue("@dateto", DateTime.Today.AddDays(3))
cmd.Parameters.AddWithValue("@cost", "%")
cmd.CommandType = CommandType.StoredProcedure
adp.SelectCommand = cmd
adp.Fill(ds)
Dim dv As New DataView(ds.Tables(0))
Dim dvfilter As DataTable = dv.ToTable(True, {"pdate"})
For Each dtrow As DataRow In dvfilter.Rows
Dim dt2 As New DataTable
dv.RowFilter = "date =#" + dtrow("pdate") + "#"
dt2 = dv.ToTable(False, {"DATE", "Name", "Product", "Expiry"})
ldt.Add(dt2)
Next
Return ldt
End Function
코드는 작동하지만 원하는 방식이 아닙니다. 나는 gridview를 사용하고 싶지 않다. html 표에 다음과 같이 입력하십시오 :
어떤 도움을 주실 수 있나요? :) 고맙습니다.
이 거짓 반대입니다. GridView는 HTML 테이블을 렌더링 할 수있는 서버 측 컨트롤입니다. 즉, HTML을 작성하지 않고도 원하는 것을 할 수 있습니다.모든 멋진 옵션 (예 : 페이지 매김)을 끄고, 열 정의를 지정하고, 잘 읽습니다. –