Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
WCF»ù´¡£¨Ï£©
 
×÷ÕߣºgameWYD À´Ô´£ºCSDN ·¢²¼ÓÚ£º2015-12-18
  2871  次浏览      28
 

WCF(Èý) Message pattern

ÉÏ´ÎÔÛÃÇÉÔÉÔÌÖÂÛÁËWCFÖеÄcontract,Õâ´ÎÔÛÃÇÌÖÂÛMessage Pattern.

WCFÖÐΪºÎ»áÓÐmessage patternÄØ?

ÎÒÃÇÖªµÀWCFµÄServer¶ËÓëclient¶ËÊÇͨ¹ýxml À´½øÐн»»¥µÄ.message patternÆäʵ¾ÍÊÇÖ¸server¶ËÓëclient¶Ë½»»¥xmlµÄ·½Ê½.

wcfÌṩÒÔÏÂÈýÖÖpattern:

1.Request-reply:client¶Ëµ÷ÓÃserver¶ËµÄ¹«¿ªµÄmethodºó,client¶ËÐèµÈserver¶Ëmethod·µ»Ø½á¹û(¼´:replyÏìÓ¦)ÒÔºó,²ÅÄÜ×ö¼ÌÐøclient¶ËµÄÏÂÒ»²½²Ù×÷.(Èç:clientµ÷ÓÃserver¶ËµÄmethodÍùÊý¾Ý¿âÖвåÈëÒ»ÌõÊý¾Ý.server¶Ë²åÈëÊý¾Ý³É¹¦ÒÔºó,·µ»ØÏàÓ¦µÄÊý¾Ý¿â²åÈë³É¹¦ÐÅÏ¢.ºÜ¶àÇé¿öÏÂʹÓõÄÊÇÕâÖÖ.

2.one-way:client¶Ëµ÷ÓÃserver¶ËµÄ¹«¿ªµÄmethodºó,client¶Ë²»ÐèµÈserver¶ËµÄmethod·µ»Ø½á¹û,±ã¿É¼ÌÐøclient¶ËÏÂÒ»²½²Ù×÷.(Èç:server¶Ë¼Ç¼client¶ËµÄÈÕÖ¾(log)ÐÅÏ¢).±êʶΪOne-wayµÄoperation(º¯Êý)µÄ·µ»ØÖµÖ»ÄÜÊÇvoid. µ±clientÏòserver ·¢ÆðÁËrequestºó,²»ÐèÒªserver×ö³ö»ØÓ¦µÄÇé¿öʹÓÃone-way message pattern.

3.duplicate:Request-Reply ºÍOne-way¶¼ÊÇÏÈÓÉclient¶Ë·¢ÆðµÄrequest(ÇëÇó);duplicateÔòÔÊÐíÓÐserver¶Ë·¢Æðrequest.

Á½ÖÖ·½Ê½ÊµÏÖduplicate:Ò»ÖÖÊÇtcp(ÕâÀïÏȲ»½²tcpµÄ·½Ê½,ÏȽ²httpµÄ·½Ê½).Ò»ÖÖÊÇhttp. Http·½Ê½µÄ»°:ÊÇÏÈÓÉclient¶Ë·¢ÆðÒ»´Îone-way µÄrequest,È»ºóclient²»µÈ´ýserver¶Ë·µ»Ø½á¹û,¶øÊǶ˼ÌÐøÍùÏÂÖ´ÐÐ.µ±server¶ËÓнá¹û·µ»ØÊ±,ÔÙÓÐserver¶Ë·¢ÆðÒ»´Îone-wayµÄrequest.ËùÒÔduplicateÒ²½Ðcallback. ÎÒÃÇÖªµÀµ±Ò»¸ö²Ù×÷ºÜ·ÑʱµÄ»°,ΪÁ˼õÉÙUIµÄÎÞÏìÓ¦,ÓиüºÃµÄÓû§ÌåÑé,»áʹÓÃcallback.wcfÒ²ÊÇ:µ±serverµÄÖ´ÐкܺÄʱµÄ»°,ÎÒÃÇ¿ÉÒÔʹÓÃduplicateµÄmessage pattern.

4.ʵÏÖ:

4.1:Requst-Reply:ÊÇ×î¼òµ¥µÄ

[ServiceContract(CallbackContract = typeof(IDuplicateDemoCallback))]
2 public interface IService1
3 {
4 // ÔÚº¯ÊýÖÐ,ÎÒÃÇÈÃÏß³ÌÔÝÍ£,Ä£ÄâºÄʱµÄ²Ù×÷.
5 // ²ÎÊý:intervalΪÔÝÍ£µÄºÁÃëÊý,Óɵ÷ÓøÃmethodµÄclient¶ËÉ趨.
6 [OperationContract]
7 void RequestReply(int interval);
8
9 [OperationContract]
10 void DuplicateCommunicate(int interval);
11
12 }

4.2:One-Way:(Ö»ÐèÒªÔÚrequst-replyµÄ»ù´¡ÉÏ,ʹoperationContract µÄIsOneWay=true¼´¿É)

[ServiceContract(CallbackContract = typeof(IDuplicateDemoCallback))]
2 public interface IService1
3 {
4 // ÔÚº¯ÊýÖÐ,ÎÒÃÇÈÃÏß³ÌÔÝÍ£,Ä£ÄâºÄʱµÄ²Ù×÷.
5 // ²ÎÊý:intervalΪÔÝÍ£µÄºÁÃëÊý,Óɵ÷ÓøÃmethodµÄclient¶ËÉ趨.
6 [OperationContract(IsOneWay = true)]
7 void RequestReply(int interval);
8
9 [OperationContract(IsOneWay = true)]
10 void DuplicateCommunicate(int interval);
11
12 }

4.3Duplicate:(ÓÐЩ¸´ÔÓ)ÓÐÒÔϲ½Öè:

4.3.1:ÔÚserver¶ËIService.csÎļþÖÐÌí¼Ó´úÂë:

// NOTE: You can use the "Rename" command on the "Refactor" menu to 
change the interface name "IService1" in both code and config file together.
2 [ServiceContract(CallbackContract = typeof(IDuplicateDemoCallback))]
3 public interface IService1
4 {
5 // ÔÚº¯ÊýÖÐ,ÎÒÃÇÈÃÏß³ÌÔÝÍ£,Ä£ÄâºÄʱµÄ²Ù×÷.
6 // ²ÎÊý:intervalΪÔÝÍ£µÄºÁÃëÊý,Óɵ÷ÓøÃmethodµÄclient¶ËÉ趨.
7 [OperationContract(IsOneWay=true)]
8 void RequestReply(int interval);
9
10 [OperationContract(IsOneWay=true)]
11 void DuplicateCommunicate(int interval);
12
13
14 }
15
16 public interface IDuplicateDemoCallback
17 {
18 [OperationContract(IsOneWay=true)]
19 void DuplicateCommunicateCallback(string callbackMessage);
20 }

4.3.2:ÔÚweb siteÏîĿϵÄweb.configÎļþ:ʹÆäÖ§³ÖwsDua

<?xml version="1.0"?>
2 <configuration>
3
4 <system.web>
5 <compilation debug="false" targetFramework="4.0" />
6 </system.web>
7 <system.serviceModel>
8 <behaviors>
9 <serviceBehaviors>
10 <behavior>
11 <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
12 <serviceMetadata httpGetEnabled="true"/>
13 <!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
14 <serviceDebug includeExceptionDetailInFaults="false"/>
15 </behavior>
16 </serviceBehaviors>
17 </behaviors>
18 <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
19
20 <services>
21 <service name="WcfMessagePatternLib.Service1" behaviorConfiguration="">
22 <!-- Service Endpoints -->
23 <endpoint address="" binding="wsDualHttpBinding" contract="WcfMessagePatternLib.IService1">
24 <identity>
25 <dns value="localhost"/>
26 </identity>
27 </endpoint>
28 <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
29 </service>
30 </services>
31
32
33 </system.serviceModel>
34 <system.webServer>
35 <modules runAllManagedModulesForAllRequests="true"/>
36 </system.webServer>
37
38 </configuration>

4.3.3ÔÚclient¶ËÌí¼ÓÒ»¸öÀàÎļþÃüÃûΪCallback.cs:

ʹÆäʵÏÖIDuplicateDemoCallback½Ó¿Ú.

class Callback:ServiceReference1.IService1Callback
2 {
3 public void DuplicateCommunicateCallback(string callbackMessage)
4 {
5 MessageBox.Show(callbackMessage);
6 }
7 }
¸´ÖÆ´úÂë
1 private void Form1_Load(object sender, EventArgs e)
2 {
3 var context = new InstanceContext(new Callback());
4 proxy = new Service1Client(context);
5 }

4.3.4ÐÞ¸ÄclientÏîĿϵÄapp.configÎļþ:ʹÆäÖ§³Öwsdualhttp

<?xml version="1.0" encoding="utf-8" ?>
2 <configuration>
3 <system.serviceModel>
4 <bindings>
5 <wsDualHttpBinding>
6 <binding name="WSDualHttpBinding_IService1" closeTimeout="00:01:00"
7 openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
8 bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard"
9 maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
10 messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true">
11 <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
12 maxBytesPerRead="4096" maxNameTableCharCount="16384" />
13 <reliableSession ordered="true" inactivityTimeout="00:10:00" />
14 <security mode="Message">
15 <message clientCredentialType="Windows" negotiateServiceCredential="true"
16 algorithmSuite="Default" />
17 </security>
18 </binding>
19 </wsDualHttpBinding>
20 </bindings>
21 <client>
22 <endpoint address="http://localhost:8167/WebHost/Service.svc"
23 binding="wsDualHttpBinding" bindingConfiguration="WSDualHttpBinding_IService1"
24 contract="ServiceReference1.IService1" name="WSDualHttpBinding_IService1">
25 <identity>
26 <dns value="localhost" />
27 </identity>
28 </endpoint>
29 </client>
30 </system.serviceModel>
31 </configuration>

WCF(ËÄ) Configuration file (ÅäÖÃÎļþ)

Ç°Ãæ´óÖ½éÉÜÁ˵ãwcfµÄ¼¸¸öССµÄ»ù±¾¸ÅÄî. ÈκÎÒ»¸öм¼Êõ,¶¼ÄܸøÎÒÃÇ´øÀ´Ò»´ó¶ÑµÄ»ù±¾¸ÅÄî. µ±È»WCFÒ²²»ÀýÍâ. ¹ØÓÚWCF¸ü¶àµÄ¸ÅÄî,ÔÚÒÔºóÔÙÌÖÂÛ.ÎÒÃÇÏÈÌÖÂÛÈçºÎÔÚ²»ÉîÈëÁ˽âÕâÒ»´ó¶ÑѧÊõ¶¨ÒåµÄǰÌáÏÂ,ʹÓÃÕâÏî¼¼Êõ.

ÔÚ¿ª·¢¹ý³ÌÖÐ,ʹÓÃconfiguration file (ÅäÖÃÎļþ)¾ßÓкÜÁé»îµÄºÃ´¦:ÒÔºóÓйØÓÚÅäÖõĸıä,²»±ØÖØÐ±àÒë´úÂë,Ö»Ðè´ò¿ªconfiguration file ¸ÄһϾÍÐÐÁË,ʡʱʡÁ¦.

WCFÖÐconfiguration fileµÄµØÎ»²»¿ÉºöÊÓ.µ±È»ÎÒÃÇ¿ÉÒÔʹÓÃcodeµÄ·½Ê½,ʵÏÖWCFµÄ·þÎñµÄÿ¸ö½×¶Î. µ«ÎÒÃǵÄÈí¼þ²úÆ·ÊÇÐèÒª¸ø¿Í»§ÔÚʵ¼Ê¹¤×÷ÖÐʹÓõÄ. ÎÒÃÇÒªÈÃÈí¼þ²úÆ·µÄºóÆÚά»¤¾¡¿ÉÄܵļòµ¥,ʡʱʡÁ¦.

WCFµÄºËÐÄÊÇService. Ò»¸öserviceÓаüº¬¶à¸öendpoint, ÈçÏÂͼ:

´ò¿ªVS2010,File-->New project. Ñ¡ÔñWCF Service Library Ä£°å. Solution Name ºÍproject NameÎÒÃǶ¼ÓÃĬÈϵÄ. µã»÷OK.

´Ëʱ´´½¨ÁËÒ»¸öWCF Library project. ´ò¿ªApp.config Îļþ,Äã»á¿´µ½ÒÔÏÂÄÚÈÝ:

<?xml version="1.0" encoding="utf-8" ?>
2 <configuration>
3
4 <system.web>
5 <compilation debug="true" />
6 </system.web>
7 <system.serviceModel>
8 <services>
9 <service name="WcfServiceLibrary4.Service1">
10 <host>
11 <baseAddresses>
12 <add baseAddress = "http://localhost:8732/Design_Time_Addresses/WcfServiceLibrary4/Service1/" />
13 </baseAddresses>
14 </host>
15 <endpoint address ="" binding="wsHttpBinding" contract="WcfServiceLibrary4.IService1">
16 <identity>
17 <dns value="localhost"/>
18 </identity>
19 </endpoint>
20 <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
21 </service>
22 </services>
23 <behaviors>
24 <serviceBehaviors>
25 <behavior>
26 <serviceMetadata httpGetEnabled="True"/>
27 <serviceDebug includeExceptionDetailInFaults="False" />
28 </behavior>
29 </serviceBehaviors>
30 </behaviors>
31 </system.serviceModel>
32
33 </configuration>

×¢:

µÚ1ÐÐ,¶¨Òå¸Ãxml fileµÄ°æ±¾ºÍʹÓõÄ×Ö·û¼¯. ÊǹØÓÚ¸ÃÅäÖÃÎļþµÄ»ù±¾ÐÅÏ¢,Óë³ÌÐòÅäÖÃÎÞ¹Ø,Ö»¹Ü±£³ÖĬÈϼ´¿É.

µÚ2ÐÐ,<configuration> node,¹ØÓÚ³ÌÐòÄÚµÄÅäÖÃ,¶¼±ØÐë°üº¬ÔÚ´ËnodeÀïÃæ.

µÚ5ÐÐ,ÊǹØÓÚdebugÅäÖÃ. Èç¹ûÊÇÔÚ¿ª·¢½×¶Î,°ÑËüÉèΪtrue,ÕâÑùµ÷ÊÔÆðÀ´·½±ã.

µÚ7--31ÐÐ,ÊÇ<system.serviceModel> node, ¹ØÓÚwcf serviceµÄºËÐÄÅäÖö¼ÔÚÕâ¸önodeÀïÃæ. ¸ÃnodeÏÂÃæÓÐÁ½¸ö×Ónode:Ò»¸öÊÇ<services>,ÁíÒ»¸öÊÇ<behaviors>. ³ý´ËÒÔÍâ,»¹¿ÉÒÔÓÐ<bindings>µÈ.<services>ÊÇ<service>µÄ¼¯ºÏ;<behaviors>ÊÇ<behavior>µÄ¼¯ºÏ;<bindings>ÊÇ<binding>µÄ¼¯ºÏ.

¶à˵һ¾ä: WCF³ÌÐòÉè¼ÆÐèҪעÒâÁ½·½ÃæµÄÄ£ÐÍ:Ò»ÊDZà³ÌÄ£ÐÍ;¶þÊÇͨÐÅÄ£ÐÍ. Ò»°ãÎÒÃÇ×öweb¿ª·¢Ö»ÐèÒª±à³ÌÄ£ÐÍ,ͨОͽ»¸øhttpÁË. µ«ÊÇwcfÔÊÐíÎÒÃÇʹÓÃhttpÒÔÍâµÄÆäËûͨÐÅЭÒé.ËùÒÔ,ÎÒÃÇ¿¼ÂÇÁ˱à³Ì»¹±ØÐ뿼ÂÇͨÐÅÄ£ÐÍ.ºÃÔÚwcf¸øÎÒÃÇÌṩÁË·½±ãÖ®´¦:ËüÆÁ±ÎÁË¿ª·¢ÈËÔ±¶ÔͨÐÅÄ£Ð͵Ĵ¦Àí,Ö»ÐèÒªÎÒÃÇͨ¹ýbindings API´´½¨Í¨ÐÅÄ£Ðͼ´¿É. ËùÒÔ,ÎÒÃǶÔbindingsµÄÖ¸¶¨,¾ÍÊÇÔÚ´¦ÀíͨÐÅÄ£ÐÍ.

µÚ8--22ÐÐ,ÊÇ<services>node,¸ÃnodeÏÂÃæÓжà¸ö<service>node.

µÚ9--21ÐÐ,ÊÇ<service>node,ËüµÄnameÖ¸¶¨ÁËʵÏÖÕâ¸öserviceµÄÀàÃû(È«Ãû,°üÀ¨namespace).¸Ã<services>ÏÂÃæÓÐÒ»¸ö<host>node,ºÍ¶à¸ö<endpoint>node.(ÈçÉÏÃæÎÒÃÇÌáµ½µÄÄÇÕÅͼ) .

µÚ10ÐÐ,ÊÇ<host>node, <host>ÏÂÃæÓÐ<baseAddress>.

µÚ11-13ÐÐ,<baseAddress> node, <add>Ôö¼ÓÒ»¸ö¸ÃserviceµÄ»ùÖ·,<endpoint>ÀïÃæµÄaddress¾ÍÏà¶ÔÓÚÕâ¸öbaseAddressµÄ. Èç¹ûÓжà¸öbaseAddressµÄ»°ÊǸù¾Ý<endpoint>ËùÖ¸¶¨µÄbinding·½Ê½ÓëbaseAddressµÄÐÎʽƥÅäµÄ.(Èç,<endpoint>ËùÖ¸¶¨µÄbinding·½Ê½ÊÇnetTcpBinding,¾Í»áÆ¥ÅäÒÔnet.tcp://´òÍ·µÄbaseAddress.)

µÚ15ÐÐ,<endpoint>node,<endpoint>³ýÁËnameÒÔÍâ,»¹ÓÐ×îÖØÒªµÄÈý²¿·Ö×é³É,¼ò³Æ:ABC. AÊÇAddress,BÊÇBinding,CÊÇContract. Address¿ÉÒÔÊÇÒ»¸öÍêÕûµÄURL,»òÊÇÒ»¸öÏà¶ÔÓÚ»ùÖ·µÄURL,Èç¹ûΪ¿Õ,ÔòʹÓûùÖ·.BindingÖ¸¶¨Í¨ÐÅÄ£ÐͱÈÈç:http,tcp,mssqµÈ. Contract¾ÍÊÇ·þÎñµÄcontract(¾ÍÊÇÇ°ÃæÎÒÃÇʹÓÃ[OperationContract]ÐÞÊεÄÄǸö·þÎñ½Ó¿Ú).

µÚ20ÐÐ,ÊÇÔªÊý¾ÝµÄ<endpoint>,ÓÃÓë·¢²¼Ò»Ð©ÔªÊý¾ÝÐÅÏ¢.

Ïȵ½Õâ°É.....

WCF(Îå) Host WCF Service

Õâ´ÎÎÒÃÇÌÖÂÛHost a WCF service.

ǰÊö

ΪÁËÈÃclient¿ÉÒÔʹÓÃservice,ÎÒÃDZØÐëhost serviceµ½Ò»¸öÿʱÿ¿Ì¶¼ÔÚÔËÐеĻ·¾³ÖÐ(ÎÒÃǽÐHost Application),ÒòΪËüʱ¿ÌµÈ´ý×ÅÀ´×ÔclientµÄrequest(ÇëÇó). HostÓÐÈË·­Òë³É"¼ÄËÞ",ÎÒÈÔʹÓÃHost. Host application¸ºÔðstartºÍendservice, È»ºó¼àÌýÀ´×ÔclientµÄrequest,½âÎöclientµÄrequest,È»ºóµ÷ÓÃÏàÓ¦µÄservice. ×îºó°Ñ½á¹û·µ»Ø¸øclient.

Host ApplicationΪÿһ¸öService ´´½¨Ò»¸öServiceHost¶ÔÏó. µ±Óжà¸öServiceÊÇ,¾Í»á´´½¨¶à¸öServiceHost¶ÔÏó. µ±clientÐèҪʹÓöàÖÖprotocol(ͨÐÅЭÒé),ÈçHttpºÍtcp,´ËʱÄã²»±Ø´´½¨¶à¸öservice, ÒòÎªÇ°ÃæÎÒÃÇÖªµÀÒ»¸öService¿ÉÒÔÓжà¸öendpoint(endpoint °üº¬Address,Binding,Contract). BindingÖ¸¶¨²»Í¬µÄprotocol,ËùÒÔ,ÎÒÃÇÖ»Ðè´´½¨¶à¸öendpoint,ÔÚbindingÖÐÖ¸¶¨²»Í¬µÄprotocol¼´¿É.

¿ÉÒÔ°Ñservice hostµ½ÒÔÏ»·¾³ÖÐ:

1.IIS:ÎÒÃÇÐèÒª´´½¨Ò»¸öWeb Site,ʹÓøÃWebsiteÈ¥host wcf,È»ºó½«¸Ãwebsite·Åµ½IISÖÐ. Èç¹ûÄãʹÓÃÁËIISÈ¥host wcf,ÄÇôֻÄÜʹÓÃhttp protocol. µ±ÓÐrequestµ½À´Ê±,host application¿ÉÒÔ×Ô¶¯¼¤»î,²¢¿ªÊ¼¼àÌý.

2.WAS:(Windows Process Activation Service)×÷ΪIIS7.0µÄÒ»¸öÐÂÌØÐÔ.ÎÒÃÇͬÑùÐèÒª´´½¨Ò»¸öweb site .Vista,Windows 7, Windows Server2008 µÈ²Ù×÷ϵͳ¿ÉÒÔ°²×°WAS. Èç¹ûÄãʹÓÃÁËWASÈ¥host wcf,¿ÉÒÔʹÓÃhttp ,tcp,MSMQ,Named Pipe protocol. µ±ÓÐrequestµ½À´Ê±,host application¿ÉÒÔ×Ô¶¯¼¤»î,²¢¿ªÊ¼¼àÌý.

3.Managed Application(ÍйܳÌÐò,ÈçConsole,WinFrom,WPF): Self-Hosting. µ±ÓÐrequestµ½À´Ê±,host application²»ÄÜ×Ô¶¯¼¤»î.ÐèÒªÔÚ´úÂëÖÐÊÖ¶¯new³öserviceHost¶ÔÏó.

ÎÒÃÇÈçºÎÑ¡ÔñÄÄÒ»ÖÖhost·½Ê½ÄØ?

´ð°¸ÊÇ:È¡¾öÓÚÄãµÄ²Ù×÷ϵͳ,ºÍͨÐÅÐèÇó,ºÍÌØ¶¨³¡¾°.

1.Èç¹ûÄãµÄ²Ù×÷ϵͳÊÇwindows server2003,²¢ÇÒ³ÌÐòÖ»ÓÃhttp¼´¿ÉÂú×ãÐèÇó. ÄÇôʹÓÃIISÈ¥host. Èç¹û³ÌÐò³ýÁËʹÓÃhttp²»¿ÉÂú×ãÐèÇó(³ýÁËhttp,»¹ÐèÒªtcp),ÔòÒª´´½¨window ·þÎñÈ¥host.

2.Èç¹ûÄãµÄ²Ù×÷ϵͳÊÇwindows server2008(»ò windows 7 )ʹÓÃWAS. ÒòΪËü¿ÉÒÔÖ§³Ö¸ü¶àµÄprotocol.

3.Èç¹û½ö½öÓÃÓÚÑÝʾ,¿ÉÒÔʹÓÃConsoleÈ¥host. µ«ÊÇreleaseµ½ÕæÕýµÄ²úƷʱ,×îºÃÓÃwinForm»òWPF.

¶ÔÓÚÿһÖÖ·½Ê½,ÎÒÃÇÈçºÎʵÏÖÄØ?

   
2871 ´Îä¯ÀÀ       28
 
Ïà¹ØÎÄÕÂ

Éî¶È½âÎö£ºÇåÀíÀôúÂë
ÈçºÎ±àд³öÓµ±§±ä»¯µÄ´úÂë
ÖØ¹¹-ʹ´úÂë¸ü¼ò½àÓÅÃÀ
ÍŶÓÏîÄ¿¿ª·¢"±àÂë¹æ·¶"ϵÁÐÎÄÕÂ
 
Ïà¹ØÎĵµ

ÖØ¹¹-¸ÄÉÆ¼ÈÓдúÂëµÄÉè¼Æ
Èí¼þÖØ¹¹v2
´úÂëÕû½àÖ®µÀ
¸ßÖÊÁ¿±à³Ì¹æ·¶
 
Ïà¹Ø¿Î³Ì

»ùÓÚHTML5¿Í»§¶Ë¡¢Web¶ËµÄÓ¦Óÿª·¢
HTML 5+CSS ¿ª·¢
ǶÈëʽC¸ßÖÊÁ¿±à³Ì
C++¸ß¼¶±à³Ì
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

ʹÓÃdecj¼ò»¯Webǰ¶Ë¿ª·¢
Web¿ª·¢¿ò¼ÜÐγÉÖ®ÂÃ
¸üÓÐЧÂʵÄʹÓÃVisual Studio
MVP+WCF+Èý²ã½á¹¹´î½¨¿ò¼Ü
ASP.NETÔËÐлúÖÆÇ³Îö¡¾Í¼½â¡¿
±àд¸üºÃµÄC#´úÂë
10¸öVisual Studio¿ª·¢µ÷ÊÔ¼¼ÇÉ

.NET¿ò¼ÜÓë·Ö²¼Ê½Ó¦Óüܹ¹Éè¼Æ
.NET & WPF & WCFÓ¦Óÿª·¢
UML&.Net¼Ü¹¹Éè¼Æ
COM×é¼þ¿ª·¢
.NetÓ¦Óÿª·¢
InstallShield

ÈÕÕÕ¸Û .NET Framework & WCFÓ¦Óÿª·¢
Éñ»ªÐÅÏ¢ .NETµ¥Ôª²âÊÔ
±±¾© .NetÓ¦ÓÃÈí¼þϵͳ¼Ü¹¹
̨´ïµç×Ó .NET³ÌÐòÉè¼ÆÓ뿪·¢
ÈüÃÅÌú¿Ë C#Óë.NET¼Ü¹¹Éè¼Æ
¹ã¶«ºËµç .NetÓ¦ÓÃϵͳ¼Ü¹¹