В классическом ASP.NET я сохраняются данные, извлеченные из веб-службы в базовом классе собственности следующим образом:сохранялось свойства - асинхронно
private string m_stringData;
public string _stringData
{ get {
if (m_stringData==null)
{
//fetch data from my web service
m_stringData = ws.FetchData()
}
return m_stringData;
}
}
Таким образом, я мог бы просто сделать ссылку на _stringData и знать, что Я всегда получаю данные, которые я получил (возможно, иногда я использую состояние сеанса как хранилище вместо частной переменной-члена).
В Silverlight с WCF я могу использовать изолированное хранилище в качестве моего механизма persistent, но вызов службы не может быть выполнен так, потому что служба WCF должна быть вызвана асинхронно.
Как я могу вызвать вызов службы и получить ответ одним способом?
Спасибо, Марк
Спасибо, что нашли время ответить, но я попробовал это ранее и обнаружил, что мой цикл ожидания (do {// stuff} while (blnWaiting == true)} блокировал поток, поэтому флаг никогда не устанавливался , Я ограничен 300 символами в этом «комментарии», поэтому не могу показать полный код, можете ли вы привести пример? Спасибо, Mark –
Я добавил пример из того, как я на самом деле это делаю - это отличается от того, что я описал. Это может быть или не быть применимым в зависимости от вашего веб-сервиса. – tvanfosson
Да, это похоже на то, что мне нужно. Я реализую это и посмотрю, как я пойду. Спасибо за вашу помощь. –