使用Access数据库将WPF应用程序转换为Silverlight的方法

3
我想知道是否有可能在不花费数天的时间的情况下将WPF应用程序转换为Silverlight。
是的,我知道有一个类似的帖子,但是它的日期是2008年,所以我认为它已经过时了,因为Silverlight取得了快速进展。
我有一个使用2003 Access数据库(订单:)的WPF应用程序,我的客户也想要一个Silverlight版本。
有什么关于时间和精力的想法吗? 提前致谢。
3个回答

3
除非您不使用任何重要的WPF视觉功能,否则我认为您无法避免大量的努力。即使只是触发器和操作也显著缺少功能。即使在Silverlight 4下,XAML支持的内容仍然存在巨大差异,并且您仍将寻找服务器端数据源(可能通过WCF),因此您必须构建一组服务等。
使用诸如WCF数据服务之类的东西可能会使后端转换更加容易,但即使仅控件集中的差异也会在UI上创建大量工作。
虽然有可能限制自己使用子集并获得一些功能(如果您在控件的跨平台工具包中使用其中一个),但将其改装为完整应用程序与在Silverlight中重新开发它一样困难。

好的,这不是一个WCF服务或类似的东西,只是一个简单的桌面程序,但有一个MS Access数据库。我使用itextsharp创建PDF和amcharts制作图表,所以这些可能会有点麻烦...尽管如此,感谢您的快速回复。 - Terry
如果它将成为桌面应用程序,那么为什么要将应用程序迁移到Silverlight? - funwithcoding
您将无法直接通过Silverlight连接到Access数据库。除非您在完全信任的情况下使用Silverlight 4/COM互操作,否则是无法访问JET引擎的。您需要构建一个WCF服务来获取数据,或者使用WCF RIA服务或WCF数据服务。根据您的需求,使用RIA服务或数据服务可能相对容易一些,也可能需要大量自定义编码。不管怎样,在其他组件的帮助下,我认为该过程可能会比较困难。 - Ben Von Handorf

1

您将能够使用Silverlight RIA服务并连接到Access数据库,除非您使用了大量不可移植的WPF功能,否则它将是相对容易的端口。


0
感谢所有的回复。
我有一个需要用wpf完成的项目。我花了大约3周的时间来完成它。每周,我都需要展示我的进度。当在最后3天进行咨询和演示时,我说我已经完成了除了一些小bug修复之外的所有工作。我的大学老师给了我赚取额外积分的机会。所以他问我是否能将我的wpf应用程序转换为silverlight。我只有2天的时间来完成这个任务。
当我展示我的wpf项目时,他对结果很满意。然后他问我关于silverlight的事情。我提出了你们发表的一些论点,他完全同意。他知道这不是真的会在两天内完成的(至少不是真正的完成)。
所以感谢你们的发帖,让我不必在那两天里拼命工作。

1
那么这个作业是一个陷阱?我喜欢你的教授!如果他有邪恶的笑声,就可以得到额外的分数。 :) - Ben Von Handorf

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接