... Точнее, в HttpWebRequest.
Итак, коллеги, вот проблема:
есть нужда обратиться к свежезарегистрированному домену по протоколу HTTP. Проблема, собственно, в том, что DNS для него еще не отрефрешился, поэтому прицепиться к нему по доменному имени еще нельзя. IP адрес нам известен. В PHP мы просто обращаемся по IP и вручную выставляем хидер Host, чтобы HTTP-сервер мог правильно определить сайт, к которому мы коннектимся. В дотнете так делать, оказывается, нельзя — хидер Host принадлежит к числу запрещенных, и попытка его переопределить бросает исключение.
Отнаследоваться от HttpRequest не получится: во-первых, его единственный неинтернальный конструктор сделан исключительно для сериализации, и использовать его для конструирования реквеста крайне тяжело.
Во-вторых, есть места, где используется не обращение к виртуальному property Headers, а напрямую к полю HttpWebRequest-а, его реализующему. Это означает, что при перекрытии этого свойства в наследнике можно получить неожиданные эффекты.
Таким образом, мы на данный момент уперлись в тупик. Реализовывать весь протокол HTTP с нуля мы не готовы.
Может быть, у кого-то из вас есть другие идеи, как можно добиться желаемого? Может быть, обмануть DNS?
1.2.0 alpha rev. 655