我们正在开发一个新的基于.NET的商业应用程序,它将在Windows服务器(可选Azure)上作为服务运行后端。 为此,我们正在考虑使用Silverlight作为 only 前端/ GUI来访问应用程序 - 主要是因为这将允许从各种客户端OS平台轻松访问。 该应用程序的用户(公司授权)将自己运行后端服务 - 我们不会将其作为服务出售 - 它将是一个“老式”收缩包装应用程序。
你会认为Silverlight足够成熟吗?
您知道任何现有的商业应用程序吗?
任何具体的建议/事情要注意实施这样的事情?
答案 0 :(得分:4)
是的,Silverlight足够成熟。
我于2008年7月开始使用它,并在8个月后发布了第一版可部署客户端/服务器农业遥测监控系统。尽管有一些打嗝和欠发达的区域(更多的是2.0而不是3.0),我发现它比Windows Forms更好地开发了一个快速,交互式的客户端用户界面 - 甚至没有让我开始与通常的www技术进行比较。 ..
我强烈推荐它,特别是与WCF数据服务或商业应用程序的RIA服务结合使用。
答案 1 :(得分:2)
我使用Silverlight作为医疗行业商业应用程序的前端。没有严重的缺陷,只需确保生成线程来处理时间密集型工作,这样UI就不会冻结你,并确保在访问Web服务时使用clientaccesspolicy.xml文件。
Silverlight 3中解决的两个“业务”问题是缺少错误处理(半解析)和对基于消息的安全性的支持。解决这些问题对于Silverlight试图将自己作为商业就绪技术进行销售做了很多工作。我的意见是,这已经足够了。
使用SL2时,有两个限制可以防止错误处理。首先,服务器异常作为响应代码500出现,浏览器插件无法处理。其次,SL2中没有例外支持。 SL3通过添加ExceptionDetail和FaultException类来解决第二个问题。第一个问题仍然存在。响应代码500可防止silverlight访问响应内容,但作为解决方法,您可以发回200而不是500的响应代码。
SL2仅支持基于浏览器的安全性。使用该安全模型开发的应用程序可能容易受到访问缓存浏览器凭据的恶意应用程序的跨域伪造攻击。基于消息的安全性通过在每条消息中包含凭据来解决该问题。