从条形码扫描仪获取数据

时间:2020-09-03 11:49:41

标签: c# asp.net-mvc barcode barcode-scanner

我正在为健身中心构建Web应用程序,它们具有条形码扫描仪,您可以在其中扫描健身卡。我要完成的工作是以某种方式获取扫描程序提供给他们的数据(名称,姓氏和每月订阅时间)。我的Web应用程序是用ASP.NET C#构建的,这是我第一次处理此类问题。 谢谢您的帮助或任何其他建议,随时提出更详细的问题。

4 个答案:

答案 0 :(得分:0)

您可能无法从MVC(Core或Framework)访问条形码扫描器。为此,您可能必须在扫描成员卡的计算机或电话上运行某些软件。但是,由于条形码扫描仪可能能够复制ID,因此可能存在解决方案。这样,您可以将其输入到MVC应用程序的输入字段中,然后从那里发布到后端。

答案 1 :(得分:0)

如果健身房有这样的条形码扫描器enter image description here
,它在系统中被视为键盘。
这样的扫描器还应该能够设置结束字符TabEnter。然后,您无需确认扫描的代码。
具有上述条形码的卡将返回与数据库中给定人员相关联的卡号。

答案 2 :(得分:0)

如果我正确理解您的问题,则可能需要一个SerialPort。

实际上非常简单。

SerialPort serPort = new SerialPort("COM7"); // thats the USB port on which the scanner is connected
serial.DataReceived += new SerialDataReceivedEventHandler(serial_DataReceived);
serPort.Open();

现在您将收到扫描仪打开的所有信息:

private void serial_DataReceived(object sender, SerialDataReceivedEventArgs e){
   
   string response = serPort.ReadExisting();

   //do work
}

如果您不知道使用时连接的是哪个端口,

 foreach (string sp in SerialPort.GetPortNames())
        {
            port = new SerialPort(sp)
            {
                Encoding = Encoding.GetEncoding("Windows-1252")
            };
            port.DataReceived += new 
            SerialDataReceivedEventHandler(Port_DataReceived);
            port.Open();
        }   

这将监视您看到的每个端口是否已连接并打开连接,显然,如果您连接了诸如手机之类的端口,它也会打开一个端口。但是您可以检查一下,如果您扫描u只会占用该端口,依此类推。

如果我确实正确理解了您的问题,即您想知道如何与扫描仪进行通讯,那就是您的操作方式。

如果这不是您的问题,请发表评论并澄清我正在与全天候使用移动扫描仪读取条形码的工作,以便我可以为您提供帮助。

答案 3 :(得分:0)

几乎所有手持式条码扫描器的手册中都有一个条码,可以将扫描器更改为键盘楔子。这样,扫描仪的功能就像键盘设备一样。您将扫描条码并将键码发送到光标位置。

因此,只需查找扫描仪的品牌/型号并下载其手册,然后查找可以扫描以更改其仿真模式的条形码。

相关问题