Ответ 1
System.Net.Http относится к сетевому программированию, в то время как System.Web.Http относится конкретно к программированию для Интернета.
Просто вопрос, когда я изучаю различные библиотеки классов, доступные в .NET. Я заметил, что существует пространство имен System.Net.Http
и пространство имен System.Web.Http
.
System.Net.Http, System.Web.Http
System.Net.Http относится к сетевому программированию, в то время как System.Web.Http относится конкретно к программированию для Интернета.
System.Net.Http предназначен для клиентского HTTP-программирования. System.Web.Http предназначен для HTTP-программирования на стороне сервера.
По моему опыту, разделение между двумя пространствами имен становится ясным, когда вы смотрите на разницу между самообслуживаемыми услугами webapi и IIS. Для самообслуживания требуется только System.Http, в то время как для служб IIS нужны оба. См. Разница между "MapHttpRoute" и "MapRoute" для аналогичного обсуждения и полезных ссылок.
Итак, причина состоит в том, что вы можете создать самостоятельную веб-службу, которая не зависит от всего стека ASP.NET.
Ни один из них не устарел.
Я не видел официального объяснения Microsoft для этого, но это лучшее, что я смог найти.