2

3

4

5

6

7

8

9


10


12

13

14

15

16

17


18

19

20

21

22

23


24

25

26

这个类应该是运行在另外一台机器上的,一般用做数据库的操作等方面。
在客户端,我们可以用WSDL工具或微软的IDE给一个Project添加Web引用,不给出具体的操作。
添加好之后,我们看看生成的本地代理类。
1
//------------------------------------------------------------------------------
2
// <auto-generated>
3
// This code was generated by a tool.
4
// Runtime Version:2.0.50727.42
5
//
6
// Changes to this file may cause incorrect behavior and will be lost if
7
// the code is regenerated.
8
// </auto-generated>
9
//------------------------------------------------------------------------------
10
11
//
12
// This source code was auto-generated by Microsoft.VSDesigner, Version 2.0.50727.42.
13
//
14
#pragma warning disable 1591
15
16
namespace CourtMediaUI.TestService {
17
using System.Diagnostics;
18
using System.Web.Services;
19
using System.ComponentModel;
20
using System.Web.Services.Protocols;
21
using System;
22
using System.Xml.Serialization;
23
24
25
/**//// <remarks/>
26
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "2.0.50727.42")]
27
[System.Diagnostics.DebuggerStepThroughAttribute()]
28
[System.ComponentModel.DesignerCategoryAttribute("code")]
29
[System.Web.Services.WebServiceBindingAttribute(Name="ServiceSoap", Namespace="http://tempuri.org/")]
30
public partial class Service : System.Web.Services.Protocols.SoapHttpClientProtocol {
31
32
private System.Threading.SendOrPostCallback HelloWorldOperationCompleted;
33
34
private System.Threading.SendOrPostCallback GetIntOperationCompleted;
35
36
private bool useDefaultCredentialsSetExplicitly;
37
38
/**//// <remarks/>
39
public Service() {
40
this.Url = global::CourtMediaUI.Properties.Settings.Default.CourtMediaUI_TestService_Service;
41
if ((this.IsLocalFileSystemWebService(this.Url) == true)) {
42
this.UseDefaultCredentials = true;
43
this.useDefaultCredentialsSetExplicitly = false;
44
}
45
else {
46
this.useDefaultCredentialsSetExplicitly = true;
47
}
48
}
49
50
public new string Url {
51
get {
52
return base.Url;
53
}
54
set {
55
if ((((this.IsLocalFileSystemWebService(base.Url) == true)
56
&& (this.useDefaultCredentialsSetExplicitly == false))
57
&& (this.IsLocalFileSystemWebService(value) == false))) {
58
base.UseDefaultCredentials = false;
59
}
60
base.Url = value;
61
}
62
}
63
64
public new bool UseDefaultCredentials {
65
get {
66
return base.UseDefaultCredentials;
67
}
68
set {
69
base.UseDefaultCredentials = value;
70
this.useDefaultCredentialsSetExplicitly = true;
71
}
72
}
73
74
/**//// <remarks/>
75
public event HelloWorldCompletedEventHandler HelloWorldCompleted;
76
77
/**//// <remarks/>
78
public event GetIntCompletedEventHandler GetIntCompleted;
79
80
/**//// <remarks/>
81
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/HelloWorld", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
82
public string HelloWorld() {
83
object[] results = this.Invoke("HelloWorld", new object[0]);
84
return ((string)(results[0]));
85
}
86
87
/**//// <remarks/>
88
public void HelloWorldAsync() {
89
this.HelloWorldAsync(null);
90
}
91
92
/**//// <remarks/>
93
public void HelloWorldAsync(object userState) {
94
if ((this.HelloWorldOperationCompleted == null)) {
95
this.HelloWorldOperationCompleted = new System.Threading.SendOrPostCallback(this.OnHelloWorldOperationCompleted);
96
}
97
this.InvokeAsync("HelloWorld", new object[0], this.HelloWorldOperationCompleted, userState);
98
}
99
100
private void OnHelloWorldOperationCompleted(object arg) {
101
if ((this.HelloWorldCompleted != null)) {
102
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
103
this.HelloWorldCompleted(this, new HelloWorldCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
104
}
105
}
106
107
/**//// <remarks/>
108
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetInt", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
109
public int GetInt() {
110
object[] results = this.Invoke("GetInt", new object[0]);
111
return ((int)(results[0]));
112
}
113
114
/**//// <remarks/>
115
public void GetIntAsync() {
116
this.GetIntAsync(null);
117
}
118
119
/**//// <remarks/>
120
public void GetIntAsync(object userState) {
121
if ((this.GetIntOperationCompleted == null)) {
122
this.GetIntOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetIntOperationCompleted);
123
}
124
this.InvokeAsync("GetInt", new object[0], this.GetIntOperationCompleted, userState);
125
}
126
127
private void OnGetIntOperationCompleted(object arg) {
128
if ((this.GetIntCompleted != null)) {
129
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
130
this.GetIntCompleted(this, new GetIntCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
131
}
132
}
133
134
/**//// <remarks/>
135
public new void CancelAsync(object userState) {
136
base.CancelAsync(userState);
137
}
138
139
private bool IsLocalFileSystemWebService(string url) {
140
if (((url == null)
141
|| (url == string.Empty))) {
142
return false;
143
}
144
System.Uri wsUri = new System.Uri(url);
145
if (((wsUri.Port >= 1024)
146
&& (string.Compare(wsUri.Host, "localHost", System.StringComparison.OrdinalIgnoreCase) == 0))) {
147
return true;
148
}
149
return false;
150
}
151
}
152
153
/**//// <remarks/>
154
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "2.0.50727.42")]
155
public delegate void HelloWorldCompletedEventHandler(object sender, HelloWorldCompletedEventArgs e);
156
157
/**//// <remarks/>
158
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "2.0.50727.42")]
159
[System.Diagnostics.DebuggerStepThroughAttribute()]
160
[System.ComponentModel.DesignerCategoryAttribute("code")]
161
public partial class HelloWorldCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
162
163
private object[] results;
164
165
internal HelloWorldCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
166
base(exception, cancelled, userState) {
167
this.results = results;
168
}
169
170
/**//// <remarks/>
171
public string Result {
172
get {
173
this.RaiseExceptionIfNecessary();
174
return ((string)(this.results[0]));
175
}
176
}
177
}
178
179
/**//// <remarks/>
180
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "2.0.50727.42")]
181
public delegate void GetIntCompletedEventHandler(object sender, GetIntCompletedEventArgs e);
182
183
/**//// <remarks/>
184
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "2.0.50727.42")]
185
[System.Diagnostics.DebuggerStepThroughAttribute()]
186
[System.ComponentModel.DesignerCategoryAttribute("code")]
187
public partial class GetIntCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
188
189
private object[] results;
190
191
internal GetIntCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
192
base(exception, cancelled, userState) {
193
this.results = results;
194
}
195
196
/**//// <remarks/>
197
public int Result {
198
get {
199
this.RaiseExceptionIfNecessary();
200
return ((int)(this.results[0]));
201
}
202
}
203
}
204
}
205
206
#pragma warning restore 1591

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16


17

18

19

20

21

22

23

24

25


26

27

28

29

30


31

32

33

34

35

36

37

38


39


40

41


42

43

44

45


46

47

48

49

50


51


52

53

54


55

56

57


58

59

60

61

62

63

64


65


66

67

68


69

70

71

72

73

74


75

76

77


78

79

80


81

82


83

84

85

86

87


88


89

90

91

92


93


94


95

96

97

98

99

100


101


102

103

104

105

106

107


108

109


110

111

112

113

114


115


116

117

118

119


120


121


122

123

124

125

126

127


128


129

130

131

132

133

134


135


136

137

138

139


140

141


142

143

144

145

146


147

148

149

150

151

152

153


154

155

156

157


158

159

160

161


162

163

164

165

166


167

168

169

170


171


172


173

174

175

176

177

178

179


180

181

182

183


184

185

186

187


188

189

190

191

192


193

194

195

196


197


198


199

200

201

202

203

204

205

206
