أخيرًا ، لدي وقت لتعلم شيء جديد
إن تحسين ASP أكبر من اللازم.
هناك المزيد. حسنًا ، دعنا نتحدث أقل هراء ، انظر إلى رمز المصدر.
<٪ page language = "C#" ٪>
<٪ asmbly name = "system.net" ٪>
<٪ @import namepace = "system.net.sockets" ٪>
<٪ @import المساحة = "system.text" ٪>
<٪ @import namepace = "system.io" ٪>
<٪ @import namepace = "system.collections" ٪>
<script language = "c#" runat = "server">
void doquery (مرسل الكائن ، eventargs e)
{{
String Strongomain = txtdomain.text ؛
char [] chsplit = {'.'} ؛
String [] ARRDUIN = strDODAIN.SPLIT (chsplit) ؛
int nlenth = botrodain [1] .Length ؛
جدول hashtable = new hashtable () ؛
table.add ("de" ، "whois.denic.de") ؛
table.add ("be" ، "whois.dns.be") ؛
table.add ("Gov" ، "whois.nic.gov") ؛
table.add ("mil" ، "whois.nic.mil") ؛
سلسلة Strserver ؛
// إذا كانت نهاية المجال هي cn ، فإن الخادم cnnic ، وإلا هو الشبكات
if (Kisddain [contdordain.length -1] == "CN")
{{
strserver = "159.226.6.139" ؛
}
آخر
{{
strserver = "whois.networksolutions.com" ؛
}
إذا (الجدول
{{
strserver = الجدول [المميتة] [1]].
}
آخر إذا (nlength == 2)
{{
// ltter tld's الافتراضي دائمًا للنضج في أوروبا
strserver = "whois.ripe.net" ؛
}
سلسلة strrresponse.
BOOL bsuccess = dowhoislookup (strDODAIN ، strserver ، out strresponse) ؛
إذا (bsuccess)
{{
txtresult.text = strresponse ؛
}
آخر
{{
txtresult.text = "فشل lookup" ؛
}
}
Bool Dowhoislokup (String Strodeain ، String Strserver ، Out String Strresponse)
{{
strresponse = "none" ؛
Bool bsuccess = false ؛
tcpclient tcpc = جديد tcpclient () ؛
if (0 == tcpc.connect (Strserver ، 43))
{{
strodeain += "/r/n" ؛
byte [] contradain = encoding.ascii.getBytes (straddain.tocharray ()) ؛
يحاول
{{
دفق s = tcpc.getStream () ؛
S.Write (Botroddain ، 0 ، straddain.length) ؛
StreamReader SR = New StreamReader (TCPC.GetStream () ، charsoding.ascii) ؛
StringBuilder strbuilder = new StringBuilder () ؛
بينما (-1! = sr.peek ())
{{
strbuilder.append (sr.readline ()+"<br>") ؛
}
tcpc.close () ؛
bsuccess = صحيح ؛
strresponse = strbuilder.toString () ؛
}
الصيد (استثناء ه)
{{
strresponse = e.toString () ؛
}
إرجاع bsuccess.
}
آخر
{{
strresponse = "لا يمكن الاتصال بخادم Whois" ؛
العودة كاذبة
}
العودة كاذبة
}
</script>
<html>
<head>
<title> </title>
</head>
<body>
<form runat = "server">
اسم المجال: www.
<asp: button id = "btnquery" onClick = "doquery" text = "query!"
<br> <hr> <br>
<asp: label id = "txtresult" runat = "server" />
</form>
</body>
</html>