Как отобразить данные для просмотра с контроллера в asp.net MVC (Serial Communication) - PullRequest
0 голосов
/ 16 апреля 2019

Я пытаюсь создать систему входа в систему, используя Arduino и RFID-ридер в asp.net MVC c #.

Моя цель - обновлять мой взгляд с контроллера каждый раз, когда клиент подключает свой RFID-тег к RFID-ридеру.,Всякий раз, когда клиент подключает свою метку RFID к считывателю RFID, я хочу обновить представление для отображения информации о клиенте.

На данный момент я могу прочитать идентификатор метки из Arduino, используя приведенный ниже код, но яне знаю, как отобразить мои данные для просмотра.Я выполнил поиск этой проблемы в Google, но не получил ответ для asp.net.

Контроллер

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;

namespace read_rfid_example.Controllers
{
    public class HomeController : Controller
    {
        // GET: Home
        public ActionResult Index()
        {

            SerialPort mySerialPort = new SerialPort("COM3");

            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);

            if(!mySerialPort.IsOpen)
                 mySerialPort.Open();


            return View();
        }

        private static void DataReceivedHandler(
                         object sender,
                         SerialDataReceivedEventArgs e)
        {
            SerialPort sp = (SerialPort)sender;
            string indata = sp.ReadExisting();
            Console.WriteLine("Data Received:");
            Console.Write(indata);

            Debug.WriteLine(indata); //  TAG ID: 03 0e 03 06 (output example and want to pass this data to view)
        }
      }
    }

Простой просмотр

@{
    ViewBag.Title = "Index";
}

<h3>@ViewBag.TagId</h3>

Моя проблема и мой вопрос: как я могу обновлять свой тег каждый раз, когда считыватель RFID обнаруживает тег RFID?Мне нужна помощь с этой проблемой.Кто-нибудь может дать мне правильный способ сделать это как в реальном времени?

1 Ответ

0 голосов
/ 17 апреля 2019

, если вы хотите увидеть, может быть, что-то вроде

private static void DataReceivedHandler(
                     object sender,
                     SerialDataReceivedEventArgs e)
    {
        SerialPort sp = (SerialPort)sender;
        string indata = sp.ReadExisting();
        Console.WriteLine("Data Received:");
        Console.Write(indata);
        Session["RfidCurrent"] = indata;
        Debug.WriteLine(indata); //  TAG ID: 03 0e 03 06 (output example and want to pass this data to view)
    }


    [HttpGet] 
    public ActionResult Index()
    {
        ViewBag.TagId = Session["RfidCurrent"]
        return View();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...