[Export(typeof(IInitialMessageProvider))]
public class OvpInitialMessageProvider:IInitialMessageProvider
{
private readonly List<IInitialMessage> _initialMessages = new List<IInitialMessage>();
public IEnumerable<IInitialMessage> InitialMessages
{
get { return _initialMessages; }
}
public void LoadMessages()
{
var binding = new BasicHttpBinding();
var address = new EndpointAddress(new Uri("http://localhost/ovpcomponents/OvpGisService.svc"));
var svs = new OvpGisService.OvpGisServiceClient(binding, address);
svs.GetGeneralMessagesCompleted += SvsGetGeneralMessagesCompleted;
svs.GetGeneralMessagesAsync();
}
void SvsGetGeneralMessagesCompleted(object sender, OvpGisService.GetGeneralMessagesCompletedEventArgs e)
{
_initialMessages.Add(new InitialMessage
{
HeadingText="General Messages",
Messages=e.Result.OrderBy(o=>o.MessageOrder).Select(s=>s.MessageText)
});
MessagesLoaded(this, null);
}
public event EventHandler MessagesLoaded;
}