跨平台应用程序WPF,ASP.NET,Silverlight,WP7,XAML

J. *_*non 6 .net c# asp.net wpf design-patterns

考虑到所有应用程序都将与Web项目(将使用云或Web服务)进行交互这一事实.有没有办法在应用程序之间共享我的类模型?

如果是的话,最好的方法是什么?

关于从Webservice发送/接收数据,序列化和反序列化,如何以简单的方式执行此操作而无需手动填充对象?

有关此应用程序的任何信息都非常有用!

Tom*_*nes 6

一般来说,在这样的应用程序之间共享域模型并不是一个好主意,因为您在它们之间创建了硬依赖关系,即对域模型的任何更改都会影响所有应用程序,迫使您同步Web,电话和桌面应用程序的版本.

我建议创建针对每种应用程序类型的特定信息需求而定制的单独模型,这会增加当然的复杂性,但根据我的经验,与其他方案相比,这是可管理的.

不确定您的序列化问题,如果您使用WCF调用服务它是一个非问题,它是为您处理的.

为了填充您的域类,我建议使用AutoMapper,我在几个项目中成功使用了它.它可以根据名称自动从一个类映射到另一个类,你只需指定异常(即字段名称不映射,或者你需要某种类型的转换逻辑)github上的自动映射