использование c # webrequest для взаимодействия с веб-сайтом asp.net mvc 3 - PullRequest
3 голосов
/ 15 октября 2011

Я создал простой сайт mvc3 с домашним контроллером с этими действиями.

public JsonResult Param(string id)
        {
            string upper = String.Concat(id, "ff");
            return Json(upper);
        }
        public ContentResult Param2(string id)
        {
            string upper = String.Concat(id, "ff");
            return Content( upper);
        }
        public JsonResult Param3(string id)
        {
            string upper = String.Concat(id, "ff");
            io gg = new io();
            gg.IOName = upper;
            return Json(gg);
        }
    }
    public class io
    {
         public string IOName {get;set;}
    }

Как мне использовать c # webrquest, чтобы получить json и опубликовать эти URL-адреса действий ???

Ответы [ 2 ]

5 голосов
/ 15 октября 2011

Ответ Дарина хорош ... но если вы хотите получить результат от вашего метода, который возвращает полезную нагрузку JSON, и вам бы хотелось, чтобы это было в C # ... Я бы сделал это:

var client = new WebClient();

var result = client.DownloadString("http://foo.com/home/param3/SomeID");

var serialzier = new JavaScriptSerializer();

io MyIOThing = serialzier.Deserialize<io>(result);

Оттуда вы можете получить доступ к MyIOThing.IOName.

. JavaScriptSerializer находится в сборке System.Web.Extensions, в пространстве имен System.Web.Script.Serialization.

5 голосов
/ 15 октября 2011

A WebClient намного проще, чем WebRequest :

using (var client = new WebClient())
{
    var data = new NameValueCollection
    {
        { "id", "123" }
    };
    byte[] result = client.UploadValues("http://foo.com/home/param", data);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...