Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 用于WCF的结构独立WPF_.net_Wcf - Fatal编程技术网

.net 用于WCF的结构独立WPF

.net 用于WCF的结构独立WPF,.net,wcf,.net,Wcf,构建使用MSSQL后端的独立WPF应用程序。我想对它进行结构化,以便以后可以通过WCF将其转换为客户机服务器。有一组由客户端和服务器共享的类。我如何构造它,以便稍后可以通过WCF将服务器部件移动到真正的服务器,并保持单个类的完整性(或尽可能完整)。现在,我在single.CS中拥有业务和数据层,其中包含一个服务器类、一个客户端类和一组共享类。我觉得应该是3.CS,但不确定 因为我没有收到任何回复,所以我构建了一个测试WCF应用程序来尝试回答自己的问题 很明显,我是WCF的新手 客户端和服务器之间

构建使用MSSQL后端的独立WPF应用程序。我想对它进行结构化,以便以后可以通过WCF将其转换为客户机服务器。有一组由客户端和服务器共享的类。我如何构造它,以便稍后可以通过WCF将服务器部件移动到真正的服务器,并保持单个类的完整性(或尽可能完整)。现在,我在single.CS中拥有业务和数据层,其中包含一个服务器类、一个客户端类和一组共享类。我觉得应该是3.CS,但不确定

因为我没有收到任何回复,所以我构建了一个测试WCF应用程序来尝试回答自己的问题

很明显,我是WCF的新手

客户端和服务器之间的WCF是ServiceContracts和DataContracts。这些是在服务器端定义的。客户机发现这些合同并将其作为类型公开

ServiceContract是一种方法。DataContract是一个只有属性的类(好吧,它可以做更多的事情,这只是一个简化)

所以在回答我的问题时

使用表示服务器端的方法创建一个类

创建一些仅具有公共属性的简单类来表示DataContacts

对于表示服务器端的方法的输入和输出,只传递这些简单类

使用这些简单类作为工作客户端类的构造函数的输入

试金石测试是没有一个客户端类连接到SQL

在备用应用程序中,有些情况下,我们让客户端类连接到SQL,其中有一个循环并保持连接,但请注意,需要为WCF重新考虑。我知道我会在这里得到一些安全评论。目前,客户端托管在Citrix中,端口1433不对公众开放。我们的想法是将该产品定位于放弃Citrix

服务器方法是公开的接口,因此您可以在不更改契约的情况下更新实现

DataContract将支持继承。

如果有人有更好的答案,我很乐意接受