Tôi biết rằng có rất nhiều chủ đề nói về chủ đề này nhưng hãy để tôi thảo luận về vấn đề của tôi trong một số chi tiết.Lựa chọn thay thế cho ActiveX trong .NET
Trong dự án, chúng tôi đang sử dụng rất nhiều thiết bị (Máy ảnh, Máy in, Thiết bị vân tay, Đầu đọc thẻ thông minh) trong ứng dụng dành cho máy tính để bàn và chúng tôi đã phát triển các thành phần C# để xử lý các thiết bị này bằng SDK của họ.
Vấn đề bây giờ là chúng ta đang chuyển sang phát triển web và chúng ta phải chuyển đổi các ứng dụng máy tính để bàn WPF thành các ứng dụng web ASP.NET MVC và cũng nên sử dụng các thành phần hiện có của chúng ta cho các thiết bị.
Các giải pháp khả thi để đối phó với các thiết bị từ web ứng dụng Net là:
- Sử dụng ActiveX (nào là chết hoặc sẽ chết sớm và nó đòi hỏi một số kinh nghiệm COM và rất khó để phát triển).
- Sử dụng Silverlight (Ngoài ra, đã chết hoặc sẽ sớm chết và rất hạn chế để chúng tôi không thể thêm tham chiếu đến các thành phần C# hiện có).
- Sử dụng Java Applet (yêu cầu một số trải nghiệm Java và chúng tôi sẽ viết lại các thành phần C# hiện có trong Java).
Có giải pháp nào khác để chúng tôi có thể xử lý các thiết bị từ ứng dụng ASP.NET MVC qua mạng nội bộ không?
Java Applet trong trình duyệt cũng tốt như đã chết. – Snarf
Câu trả lời được chấp nhận tại http://stackoverflow.com/questions/13021723/can-html5-communicate-with-peripherals-like-scanners-and-credit-card-readers có thể hữu ích. –
'Vấn đề bây giờ là chúng ta đang chuyển sang phát triển web '- chính xác. Web "ứng dụng" không phù hợp khi bạn yêu cầu truy cập phần cứng như thế. Giữ ứng dụng dành cho máy tính để bàn của bạn và sử dụng web cho những gì web dự định. –