我们有一些.NET客户端代码,我们希望将其移植到Silverlight。但是,当前的.NET代码根本无法在Silverlight平台上编译。除了一些细微的问题,还有许多简单的问题,例如:
-SL中的某些异常的构造函数较少
-SL中不存在Debug.Fail
-SL中不存在BindingList
-严格限制 private 反射Reflection
等等...
这些差异中的一些可以应用于纯.NET代码,以最小化.NET和SL代码库之间的差异。就像我不介意在我的.NET代码中使用Debug.Assert
而不是false
来调用Debug.Fail
,如果它使该代码对#if SILVERLIGHT
的污染程度降低了。将BindingList
替换为ObservableCollection
也是一样。
我的问题是是否存在一个工具,给定的.NET程序集可以呈现某种Silverlight兼容性报告,该报告将指出必须对.NET代码库进行的更改才能使其尽可能接近Silverlight平台?
谢谢。
编辑:
该工具执行的工作稍微复杂一些,只是在SL中编译代码并显示错误。这与SL和.NET中存在的代码有关,但是在SL中,常规(透明)代码不可用。调用它会导致SL发生异常。
编辑2 :
以下是进一步澄清的几句话:
最佳答案
您确实意识到您的业务逻辑不必符合Silverlight吗?您为什么不只是通过某些Web服务公开您的业务逻辑(这是一个相对琐碎的任务),然后从Silverlight代码中调用它呢? Silverlight代码和Web服务甚至可以驻留在同一台计算机上,并且各自使用自己的框架版本,您不必将Web服务托管在另一台计算机上。通过这种方式进行操作意味着您可以编写漂亮的精简Silverlight UI,并在业务层上进行最少的工作。
(此答案取代了我以前的答案,是对已澄清的问题的答复)
关于.net - 是否有任何工具可以简化.NET代码向Silverlight的移植?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1733741/