繁体   English   中英

将ASP.NET应用程序转换为Silverlight应用程序

[英]Convert an ASP.NET application to a Silverlight application

我正在使用C#和Visual Studio 2008 SP1开发一个三层ASP.NET应用程序。 我正在使用WebForms。

我想将那个应用程序转换为Silverlight应用程序。 也许我可以重用许多ASP.NET层的代码。

你有什么想法?

假设您具有典型的表示,业务逻辑和数据层,并假设已将代码勤奋地分为这些层,则应该能够用Silverlight界面替换Web窗体,并保持BL和DAL不变。

实际的项目往往有些混乱,但是使这种过渡更加困难。 如果您使用的是SqlDataSource,则可能会遇到问题。

这些是@Andy的一些优点,并在他说的内容上作了扩展:

我现在正在做同样的事情。 因为我有一个相当全面的业务层,所以我能够做很多工作(价值几个星期),并且在那段时间我只需要向该业务层添加一个功能。 这很重要,因为它减少了所需的测试量。 这也使任何剩余的测试更加容易,因为更容易将应用程序的旧版本的输出与新版本的输出进行比较。

真正有助于实现这一目标的一种模式是立面模式。 我建立了一个位于业务层之上的WCF层,通过使用立面模式,我可以返回更适合新的Silverlight接口的结果,而不会干扰业务层。

尽管您的新UI最有可能具有与ASP.NET版本完全不同的体系结构。 您将能够在UI,代码和数据之间实现更加清晰的分离。 我非常引以为傲的一些ASP.NET代码在等效的Silverlight代码旁边看起来非常笨拙。 准备砍掉旧代码,并从后面的直接代码中消除那些业务规则:)

如果您的目标只是复制ASP.NET提供的UI行为,则可以,假设分区良好,您可以重复使用大量代码。 您会问为什么要这么做。

另一方面,如果目标是向用户提供更丰富的交互体验,那么您可能会发现,即使设计良好的业务层也无法像这样完全不同的UI那样行事。

暂无
暂无

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

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