我是网络开发的新手,我正在学习Asp.net。 我前几天在想,我想出了这个问题。 我搜索了网络,但我找到的所有答案都是旧的
所以我的问题是,silverlight4可以取代Asp.net吗?
我知道这个问题听起来很疯狂。但是让我们想一想 我们使用ASP.net与服务器通信。在那里创建文件,与数据库交谈等.... SilverLight可以做同样的事情,对吗?
好的,您可能会说如果我使用SilverLight构建了一个网站,那么并非所有用户都可以访问它。但显然SilverLight支持IE,FireFox Safari和googleChrome,所以我想这不再是问题了。
所以你怎么想,silverlight可以取代asp.net吗?
答案 0 :(得分:3)
可能不会,就像flash替换php一样,不会发生因为Silverlight更多的是图形吸引力而不是加载速度快,今天非常重要,因为如果我要等待超过5秒钟才能查看某些东西,我可能会回击并尝试另一页。
答案 1 :(得分:2)
实际答案是: Silverlight可以取代Asp.net,但不会。这就像是说:卡车/公共汽车可以取代汽车,但他们不会。它们都有不同的用途。
这两项技术将永远幸福地生活在一起。它们用于不同的目的,它们很可能会保持这种状态。将改变/塑造它们的东西是浏览器。随着即将推出的HTML5甚至微软承认Silverlight可能无法生存。
还要考虑SEO和内容索引。据我所知,Silverlight内容并没有真正编入索引。所以现在没有闪存的索引。 Silverlight可能也会达到同样的程度,但搜索提供商索引此类动态内容要困难得多。
Silverlight比Asp.net更适合这些用途。在Asp.net中提供或使用Ajax。 HTML5会让事情变得更好,但它仍然只是HTML。所以不要指望整个网站作为Silverlight应用程序运行(想想网络连接游戏,视频/图像编辑/操作解决方案,在线赌场,用户控制的动画内容等)。这就是Silverlight。想象一下使用HTML做同样的事情。那将是一个挑战!
Microsft(我的个人意见)在宣传Silverlight方面做得非常糟糕,因为他们试图让它与Flash视频播放器等完全相同。尝试向开发人员询问当有人提到Silverlight时他们会想到什么。他们中的很多人并不真正了解它的用途。这就是微软在这方面没有说清楚的错误。
答案 2 :(得分:2)
不,Silverlight无法像ASP.NET那样与服务器上的资源进行通信。当ASP.NET在服务器上运行时,Silverlight在客户端上运行。要拥有一个与服务器交互的网页,您仍然需要一个可以访问接口可以与之通信的服务器上的资源的平台。
问题在于Silverlight是否可以将HTML替换为用户界面。 HTML可能会在未来被其他东西取代,但这还不会持续一段时间。如果/当发生这种情况时,Silverlight可能甚至不再存在。
答案 3 :(得分:1)
Silverlight也在浏览器中运行,而ASP.Net正在服务器上运行, Flash和PHP是一个非常好的类比。因此,如果您必须在服务器上工作,则无法使用Silverlight。如果你想要良好的图形和交互性(没有Ajax和JS),你将不得不采用Silverlight。
答案 4 :(得分:1)
对于Silverlight来说,SEO仍然是一个重大问题。解决方案通常围绕使用ASP.Net站点以及为搜索引擎提供可索引的信息。
您现在可以选择在Silverlight和ASP.Net中使用/共享RIA服务,因此我认为它将继续作为更多的协作而不是很快取代ASP.Net。
如果您在Silverlight.Net上尝试大多数展示应用程序,大多数都加载缓慢且运行缓慢,因此还需要Silverlight开发人员认真对待可用性并开始实施增量下载(通过Prism,MEF或其他)。
答案 5 :(得分:0)
可以用silverlight取代asp.net吗?
是
但是你需要用这个来回答这个问题:用Silverlight替换ASP.NET并不总是最好的解决方案。他们有不同的积极和消极。
如果您想构建一个面向Web的图形丰富的UI(即使用WCF来获取其数据或与服务提供商进行通信),那么Silverlight就是您的答案。如果你想要一个直接的web 站点(而不是web app ),那么ASP.NET绝对是两者中更好的选择。它也可以用于复杂的Web应用程序,但它需要很多努力(我已经构建了其中的几个,如果你想要大量的用户交互,数据刷新等,它可能非常棘手)。如果您打算使用ASP.NET,那么您还需要使用第三方库(如jQuery)来协助UI交互并与服务器通信。