Мне нужно объединить некоторые данные из моей базы данных и отправить их в строку. Моя строка, в свою очередь, отправит его в код на ардуино, и он зажжет несколько светодиодов в соответствии с [Line]
, [Location]
и [Qtd]
. Моя база данных состоит из:
[TrackCode] [Pn] [Location] [Line] [Qtd]
---------------------------------------------------------
[GP6JLG2] [JNKWD] [HI-K01-A01] [LL1] [01]
[GP6JLG2] [RDJJH] [HI-K01-A02] [LL1] [03]
[GP6JLG2] [1H92N] [HI-K01-A03] [LL1] [03]
[GP6JLG2] [CMNM0] [HI-K01-B01] [LL1] [05]
[GP6JLG2] [VCYYW] [HI-K01-B02] [LL1] [01]
[GP6JLG2] [K3Y7X] [HI-K01-B03] [LL1] [01]
[GP6JLG2] [329N0] [HI-K01-C01] [LL1] [11]
[GP6JLG2] [R37F7] [HI-K01-C02] [LL1] [02]
[GP6JLG2] [3659V] [HI-K01-C03] [LL1] [09]
В моем Arduino мне понадобится строка, объединенная следующим образом: HIK01C01LL101
.
Может быть, мне нужно будет использовать for в коде Arduino, чтобы включить все светодиоды, которые я хочу, потому что у меня будет более одного [Location]
для моего [TrackCode]
.
Это правильно?
Мой код Asp.NET:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Search.aspx.cs" Inherits="Search.Search" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<style type="text/css">
.auto-style1 {
color: #3366FF;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div style="text-align: center">
<h1><span class="auto-style1"><strong>LED TEST</strong></span></h1>
<br />
<asp:TextBox ID="TextBox1" runat="server" style="height: 22px; width: 128px"></asp:TextBox>
<br />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" style="text-align: center; height: 26px; width: 56px" Text="Read" />
<br />
<br />
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="ItemPosition" Height="133px" Width="198px">
<Columns>
<asp:BoundField DataField="TrackCode" HeaderText="TrackCode" SortExpression="TrackCode" />
<asp:BoundField DataField="Pn" HeaderText="Pn" SortExpression="Pn" />
<asp:BoundField DataField="Location" HeaderText="Location" SortExpression="Location" />
<asp:BoundField DataField="Line" HeaderText="Line" SortExpression="Line" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="ItemPosition" runat="server" ConnectionString="<%$ ConnectionStrings:TravelerConnectionString %>" SelectCommand="SELECT [TrackCode], [Pn], [Location], [Line] FROM [ItemPosition] WHERE ([TrackCode] = @TrackCode)">
<SelectParameters>
<asp:FormParameter FormField="TextBox1" Name="TrackCode" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
</div>
</form>
</body>
</html>
Мой код С#:
using System;
using System.Data.SqlClient;
using System.IO.Ports;
namespace Search
{
public partial class Search : System.Web.UI.Page
{
SerialPort ardo;
protected void Page_Load(object sender, EventArgs e)
{
ardo = new SerialPort();
ardo.PortName = "COM3";
ardo.BaudRate = 9600;
}
protected void Button1_Click(object sender, EventArgs e)
{
ardo.Open();
ardo.Write(TextBox1.Text);
ardo.Close();
//At here I need to use the information from "TextBox1.Text" (always a TrackCode), access my database and return only the columns containing some datas.
//In this case, I just need the following columns: [Line], [Location], [Qtd] (Obviously, concatenated how I showed in Note1 above).
}
}
}
Как я могу это сделать?