Проблема с System.Net.Dns.GetHostEntry (dnsServer) в .NET 4.0

Я использую следующий код в течение нескольких месяцев (без проблем) в среде .NET 2.0 / 3.5:

string server="192.168.1.3";
IPHostEntry ipe = System.Net.Dns.GetHostEntry(server);
IPAddress ipa = ipe.AddressList[0];
IPEndPoint ipep = new IPEndPoint(ipa, (int)UdpServices.Domain);

Здесь сервер жестко запрограммирован на IP-адрес, но в моем приложении это может быть что-то вроде «server.test.com».

При преобразовании моего проекта в .NET 4.0 этот код перестал работать при прямой передаче IP-адреса (по-прежнему работает с именем хоста). Вылетает с этим исключением:

System.Net.Sockets.SocketException was unhandled
  Message=The requested name is valid, but no data of the requested type was found
  Source=System
  ErrorCode=11004
  NativeErrorCode=11004
  StackTrace:
       at System.Net.Dns.InternalGetHostByAddress(IPAddress address, Boolean includeIPv6)
       at System.Net.Dns.GetHostEntry(String hostNameOrAddress)

Поскольку все, что мне нужно, - это созданный IPEndPoint, я могу обойти эту проблему, используя IPAddress.Parse для создания объекта IPAddress, но я хочу знать, знает ли кто-нибудь из вас, почему это поведение изменилось в .NET 4.0? (Если мы не можем разрешить имя хоста с IP-адреса, теперь генерируется исключение).

Ответы на вопрос(1)

Ваш ответ на вопрос