Получил случайный идентификатор тега в последовательном порту связи в ASP.NET MVC
Я пытаюсь извлечь правильный идентификатор RFID-метки в asp.net но вместо этого я получил случайный идентификатор тега.
Я ждал этот тег идентификатор данных, которые должны быть возвращены в мой AJAX-запроса
Ожидание:Tag UID: 0B A5 56 D3
но вместо этого у меня есть случайный идентификационный тег
Случайный идентификационный тег:D3 Tag UID: 0B A5 56 D
3 Tag UID: 0B A5 56
Что я уже пробовал:
Here is my code <pre>using System; using System.Collections.Generic; using System.Diagnostics; using System.IO.Ports; using System.Linq; using System.Threading; using System.Web; using System.Web.Mvc; public delegate void displayToView(String tagID); namespace read_rfid_example.Controllers { public class HomeController : Controller { SerialPort mySerialPort = new SerialPort("COM3"); // GET: Home public ActionResult Index() { return View(); } List<string> mlist = new List<string>(); private void DataReceivedHandler( object sender, SerialDataReceivedEventArgs e) { SerialPort sp = (SerialPort)sender; string indata = sp.ReadExisting(); displayToView display = new displayToView(pageReload); display.Invoke(indata); } string result = ""; [HttpGet] public JsonResult start() { mySerialPort.BaudRate = 9600; mySerialPort.Parity = Parity.None; mySerialPort.StopBits = StopBits.One; mySerialPort.DataBits = 8; mySerialPort.Handshake = Handshake.None; mySerialPort.RtsEnable = true; mySerialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler); try { mySerialPort.Open(); } catch { } while(mySerialPort.IsOpen) { Thread.Sleep(100); } return Json(result, JsonRequestBehavior.AllowGet); } string[] str = new string[10]; int count = 0; public void pageReload(String text) { mlist.Add(text); count++; str[mlist.Count] = mlist[mlist.Count - 1]; if (count == 5) { result = string.Join("", str); mySerialPort.Close(); } } } }
Как вернуть правильный идентификатор тега? Пожалуйста помочь
Dave Kreskowiak
Вы же понимаете, что ваш код будет работать только в том случае, если RFID-считыватель подключен непосредственно к серверу, не так ли?
Если вы развернете его в производство, этот код вообще не будет работать, если вы подключите RFID-считыватель к рабочей станции.
ASP.NET код выполняется полностью на стороне сервера, а не на стороне клиента.