c# - 在浏览器中与称重秤进行串行/并行通信

标签 c# javascript asp.net asp.net-mvc-4

我目前正在开发一个 ASP.Net MVC4 应用程序来自动化生产工作流程。 我的客户希望解决方案是“零足迹”,因此完全在浏览器中运行。

我无法想象如何处理的问题之一是从页面内连接到客户端串行/并行端口的体重秤获取数据。 (显然这不能从网络后端完成...)

我一直在研究,假设这可以通过 javascript/jquery 实现,但由于这是在浏览器中运行的沙盒,我假设会被卡住......

我考虑过的一种方法是编写一个自托管的 WCF Web 服务,在客户端上运行,该客户端具有附加的秤(由 Windows 服务或控制台应用程序等托管),可公开秤读数。从理论上讲,这将允许我在我的 MVC C# 代码中使用 IIS 后端中的 Web 服务并将其返回给客户端。

这种方法的唯一问题是,这需要在本地托管应用程序,而我们更希望由外部提供商托管它。

有没有办法专门在客户端处理这个问题? 我无法想象我是第一个遇到这个问题的人,但我似乎无法通过在网上四处挖掘来找到我正在寻找的东西......

有什么想法吗?

提前致谢!比利时斯蒂恩

最佳答案

您绝对必须在系统上运行一个进程,该进程可以访问硬件以支持从任何硬件接口(interface)读取数据。你有很多选择——它可以是一个运行的本地服务,可以读取串行端口并向浏览器公开一个简单的 HTTP 端点。您还可以为 IE 或 Chrome 的浏览器扩展做 ActiveX 风格的控制:

http://developer.chrome.com/apps/app_usb.html

关于c# - 在浏览器中与称重秤进行串行/并行通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19661203/

相关文章:

c# - ASP.NET 错误 : Unable to cast object of type 'System.DateTime' to type 'System.String'

javascript - Imbrication promise 上传文件 angularJS

javascript - 正则表达式匹配包含此顺序字母的整个单词(空格之间的字符)

c# - 获取设置属性从日期时间中删除时间

c# - 链接到多个目标的转换 block 的谓词未按预期工作

c# - 找不到与请求 URI 匹配的 HTTP 资源 - Web API + Angular

javascript - 将 $state.go() 与 onResume() 一起使用

c# - 如何更改 Telerik ASP.NET 网格的文本颜色

c# - 如何向标签添加加减号

c# - 如何以 DateTime 格式显示双倍 (HH :mm:ss)?