Consuming an ASMX Web Service
Once a Silverlight application has a service reference to an ASMX web service, it can invoke the web service through a proxy object. The basic steps for invoking a web service are to add the service reference, create the instance of the proxy object, add an event handler for its completion event, and invoke the web service asynchronously.
Bindings Again
The Silverlight application contains four TextBox controls that represent the To
address, From address, Subject, and Body of the email message. The To
address can contain a series of email addresses delimited by a
semicolon.
You can manually load the default values into the TextBox controls by setting each TextBox’s Text property value. After the user has
entered the values, you can retrieve the values from the TextBox controls to pass them to the web
service’s web method by manually pulling the values from the controls
and into local variables.
Although this technique works, another option is to take
advantage of the XAML-based binding techniques. A MessageInfo class exists in the example code
for the purpose of storing the values from these fields and acting as
a mediator for the TextBox
controls. Example 5-3 shows the code for the
MessageInfo class. An instance of
the MessageInfo class is created and the
default values are initialized in the constructor of the EmailClient Silverlight 2 control. Example 5-4 shows a snippet of
the control’s XAML and its bindings.
Example 5-3. MessageInfo class
C# public class ...Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access