请教在wcf中,服务端的model如
public class Person()
{
string name;
public string Name(){get; set;}
}
客户端中用wpf实现,在wpf中想在model中应用
public class Person()
{
string name;
public string Name()
{get;
set value;
RaisePropertyChanged("Name");}
}
是怎么实现呢?
另外差不多的问题是在devexpres中的xpo能简化很多开发编码,但xpo的model中加了更多的内容,在wcf模式中服务器中如果使用xpo,在客户端用wpf或winform,怎么应用xpo中的model呢,是不是重新定义一个model呢?
------解决思路----------------------
WPF中的你所谓的Model,是ViewModel,跟后台使用的Model不是一回事。
例如一个“学员档案”界面,它有学员编号、姓名、年龄、照片(jpeg或者png图片)等资料,也有入住的宿舍(包括一位或者多位宿舍管理员)、购买饭卡(一个或者多个种类)、应缴学费、申请奖学金、学校最近给他推送的通知信息(未阅读)资料,还有一条”个人的网上钱包的基本汇总情况“.....所有这些都集成在一个学员个人管理界面上,成为一个 ViewModel 的内容。这个ViewModel可能对应着后台的6、7种Model,并且ViewModel中还包含着8、9种客户端数据操作。
因此 ViewModel 是需要前端工程师去设计开发的。而不是你弄个后台Model来充当的。
------解决思路----------------------
在ViewModel中根本顾不上你说的那种改造 Model 而 RaisePropertyChanged("Name"); 之类的事情。你首先需要抛开 Model,而专门设计开发更加复杂多倍的 ViewModel。它比 Model 肯定复杂10倍以上!然后你的 ViewModel 里边的属性、方法、事件可以跟 View 进行绑定。这时候那些调用后台数据服务的功能,是你的 ViewModel 编程开发里的一些比教普通的调用操作了,不太需要纠结什么模式。