我应该用Silverlight或WPF启动新的基于浏览器的C#程序吗?

我应该用Silverlight或WPF启动新的基于浏览器的C#程序吗?,wpf,silverlight,Wpf,Silverlight,我应该用Silverlight或WPF启动新的基于浏览器的C#程序吗?它将基于浏览器,但将仅在我们的组织内使用,如果这有任何区别,我的程序将需要与Windows文件共享进行对话 到目前为止,我只做过Windows窗体应用和基本ASP.NET应用。如果Silverlight被丢弃,我不想在不久的将来重写它 对于Windows窗体程序员,为了便于学习和将来的验证,您会推荐什么 谢谢 史蒂夫没有未来的证明。当然不是在技术方面 我认为在不久的将来两者都不会被“抛弃”。WPF和Silverlight都有一

我应该用Silverlight或WPF启动新的基于浏览器的C#程序吗?它将基于浏览器,但将仅在我们的组织内使用,如果这有任何区别,我的程序将需要与Windows文件共享进行对话

到目前为止,我只做过Windows窗体应用和基本ASP.NET应用。如果Silverlight被丢弃,我不想在不久的将来重写它

对于Windows窗体程序员,为了便于学习和将来的验证,您会推荐什么

谢谢
史蒂夫

没有未来的证明。当然不是在技术方面

我认为在不久的将来两者都不会被“抛弃”。WPF和Silverlight都有一条陡峭的学习曲线(XAML,MVVM设计模式,并从过程模式转向声明模式)。如果你学一个,你基本上也在学另一个

也就是说,这取决于你的需要。我的想法通常是:

  • 如果是网站,请使用ASP.NET/HTML
  • 如果它是一个简单的web应用程序,请使用ASP.NET/HTML
  • 如果是不需要提升系统权限的LOB(业务线)应用程序,请使用Silverlight
  • 如果是需要完全系统访问和提升权限的LOB应用程序,请使用WPF
你可能会遇到WPF所没有的很多Silverlight难题(功能限制),所以除非你需要跨平台和轻量级,否则我通常倾向于WPF。也就是说,Silverlight的每个版本在功能上都更接近WPF


我应该补充一点——我讨厌基于web的LOB应用程序。我从来没有见过一个不是黑客的,或者不受技术带来的可用性问题的困扰。不,HTML5不能解决这些技术限制和问题。如果我正在开发一个LOB应用程序,我宁愿花时间让它成为具有竞争性功能集的最商业友好的应用程序,而不是专注于让它在不同的浏览器中正确显示,从而解决跨域安全问题,以及维护javascript代码库。

如果您使用Silverlight编写应用程序,那么它必须在浏览器内运行,除非您将其设置为浏览器外应用程序。如果您用WPF编写,它可以像桌面应用程序一样运行,但您必须将它部署到需要运行它的每个人的计算机上


如果您不确定Silverlight,请尝试改用Flash。

谢谢,什么是LOB应用程序?业务线。这是一个企业应用程序,需要丰富复杂的用户交互和复杂的业务规则。非常感谢您的回答,我想我会坚持使用ASP.NET和HTML。