Таким образом, вы можете просто использовать класс WebClient и получить страницу.
(я предполагаю, что вы делаете asp.net WebForms НЕ MVC)
Ваша страница asp.net должна быть пустой страницей, в вашем коде позади вы читаете строку запроса и делаете то, что выВ зависимости от успеха или неудачи, вы пишете соответствующий ответ с помощью Response.Write();
.
. В вашем коде silverlight вам просто нужно запросить страницу, и затем вы можете прочитать ответ из вашего asp.net page.
Asp.net:
var encyString = Request.QueryString["str"];
//some logic
Response.Write("Success");
Silverlight:
WebClient client = new WebClient();
client.DownloadStringCompleted +=
new DownloadStringCompletedEventHandler(
client_DownloadStringCompleted);
In Button1_Click
, Я вызываю DownloadStringAsync , передавая полный URL-адрес, включающий номер, указанный пользователем.
private void Button1_Click(object sender, RoutedEventArgs e)
{
string encryptedString = "example";
client.DownloadStringAsync
(new Uri("http://testsite.com/mypage.aspx?"+encryptedString));
}
В обработчике события DownloadStringCompleted я проверяю, что свойство Error аргументов события является аргументомравно нулю, и выведите ответ или сообщение об ошибке в текстовый блок.
void client_DownloadStringCompleted(object sender,
DownloadStringCompletedEventArgs e)
{
if (e.Error == null)
resultBlock.Text = "Using WebClient: "+ e.Result;
//will be Response.Write();
else
resultBlock.Text = e.Error.Message;
}
Выше код был плагиат из этого блога .
Помните, снифферможете прочитать ваш запрос.Вы можете использовать SSL, если вам нужна лучшая безопасность.Возможно, более безопасный способ отправить эти данные - это отправить их на свою страницу asp.net.
В этой статье описывается, как выполнить POST с silverlight на страницу.
НТН