简体   繁体   English

我应该使用哪种技术堆栈:WPF,Silverlight 5或Web应用程序

[英]Which Technology Stack should I use: WPF, Silverlight 5, or Web Application

I've got a project coming down the line, and I've been tasked to do a little R&D to figure out which technology is the best fit. 我有一个即将完成的项目,我受命做一些研发工作,以找出最适合的技术。 Here's a little background on the app in its current state: 以下是应用程序当前状态的一些背景信息:

  • Web application; Web应用程序; accessible only to our internal users 仅内部用户可访问
  • The web app prints to local printers (Zebra), print jobs are sent to the printers via the server on a postback 该Web应用程序将打印到本地打印机(Zebra),打印作业通过回发通过服务器发送到打印机

The new incarnation of this is functionally similar to the old, but introduces some new functionality: 新版本的功能与旧版本相似,但是引入了一些新功能:

  • Addition of a new desktop printer. 添加新的台式打印机。 We're going to be printing out some additional paperwork, in addition to the labels generated from the Zebra printers, we're also generating two new documents. 除了要从Zebra打印机生成的标签之外,我们还将打印一些其他文件,我们还将生成两个新文档。
  • The application must support tray printing. 该应用程序必须支持纸盘打印。 For example, one document has to be printed from Tray 1, and the other must print from Tray 2. 例如,一个文档必须从纸盘1打印,而另一个文档必须从纸盘2打印。

Does anyone have suggestions on which path I should go down: 是否有人对我应该走哪条道路提出建议:

  • Keep as a web application 保留为网络应用程序
  • Convert to WPF 转换为WPF
  • Convert to Silverlight 5 转换为Silverlight 5

Presently, I'm leaning towards WPF since it seems to have better printing support. 目前,我倾向于WPF,因为它似乎具有更好的打印支持。 Silverlight doesn't seem to be the right fit since we can control the platform, and it needs to integrate with some hardware (printers). Silverlight似乎不合适,因为我们可以控制平台,它需要与某些硬件(打印机)集成。 Keeping it as a web app is still on the table, but I'm not entirely sure that it is the best fit for the tray printing requirements. 仍然将其作为Web应用程序保留在桌面上,但是我不确定它是否最适合纸盘打印要求。 (this all needs to happen in the background, we don't want the user to have to select print configurations. Think along the lines of Scan Barcode -> Labels print on Zebra printers, Product documentation prints from tray 1, packing slip from tray 2) (所有这些操作都需要在后台进行,我们不希望用户选择打印配置。请按照“扫描条形码”->在Zebra打印机上打印标签,产品文档从纸盘1打印,装箱单从纸盘打印的思路2)

Almost all my experience so far has been on the web application side of things, so I'm relatively new to the whole WPF/Silverlight stuff. 到目前为止,我几乎所有的经验都来自于Web应用程序方面,因此,我对WPF / Silverlight整个工作还比较陌生。

Can anybody either confirm my assumptions above, or possibly point out where I've made some mistakes? 谁能证实我的上述假设,或者可能指出我犯了一些错误?

I will suggest to keep your application as web, so that in future integrating with tablets and non windows devices could be easier. 我建议将您的应用程序保留为网络,以便将来与平板电脑和非Windows设备集成变得更加容易。

You can create a container WPF application, and host a web browser control within WPF App, so you can write custom JavaScript bridge using window.external interface and access native components easily. 您可以创建一个容器WPF应用程序,并在WPF App中托管一个Web浏览器控件,因此您可以使用window.external接口编写自定义JavaScript桥并轻松访问本机组件。 WPF will be better than silverlight as you will have full control of native APIs. WPF将比Silverlight更好,因为您将完全控制本机API。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM