System.Net.Http: отсутствует в пространстве имен?(используя .net 4.5) - PullRequest
93 голосов
/ 08 марта 2012

TL;ДР: Я новичок в этом языке и понятия не имею, что я делаю

, вот мой класс:

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Web;
using System.Net;
using System.IO;

public class MyClass
    {
        private const string URL = "https://sub.domain.com/objects.json?api_key=123";
        private const string data = @"{""object"":{""name"":""Title""}}";

        public static void CreateObject()
        {
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL);
            request.Method = "POST";
            request.ContentType = "application/json";
            request.ContentLength = data.Length;
            StreamWriter requestWriter = new StreamWriter(request.GetRequestStream(), System.Text.Encoding.ASCII);
            requestWriter.Write(data);
            requestWriter.Close();

            try
            {
                // get the response
                WebResponse webResponse = request.GetResponse();
                Stream webStream = webResponse.GetResponseStream();
                StreamReader responseReader = new StreamReader(webStream);
                string response = responseReader.ReadToEnd();
                responseReader.Close();
            }
            catch (WebException we)
            {
                string webExceptionMessage = we.Message;
            }
            catch (Exception ex)
            {
                // no need to do anything special here....
            }
        }

        static void Main(string[] args)
        {
            MyClass.CreateObject();
        }
}

, когда я делаю csc filename.cs, я получаюследующая ошибка:

Имя типа или пространства имен 'Http' не существует в пространстве имен 'System.Net' (отсутствует ссылка на сборку?)

Ответы [ 14 ]

0 голосов
/ 25 августа 2018

Я продолжал получать ошибку даже после добавления использования System.Net.Http к ссылкам в Android, и я уже установил пакет Nugget microsoft.net.http.

Оказалось, что я не добавил System.Net.Http в проект iOS, когда я это сделал, это решило проблему.

0 голосов
/ 08 марта 2017
                                      use system.Net, 
                                     system.Net.WebRequest

У меня была похожая проблема или такая же проблема, и я ее недавно исправил. однако, я также добавил system.net.http, но это не помогло.

0 голосов
/ 04 января 2015

Чтобы решить проблему,

1. Перейдите в обозреватель вашего решения. 2. Щелкните правой кнопкой мыши на имени проекта и выберите «Добавить». 3. Выберите ссылки и дайте .Net framework 4.5 завершить загрузку. 4. Прокрутите вниз и выберите System.Net.Http и нажмите ОК. Проблема решена.

0 голосов
/ 08 марта 2012

HttpClient является новым в .net 4.5.Вы, вероятно, должны использовать HttpWebRequest .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...