该库提供两个主要功能:
该库不提供联系 REST API 的功能,例如 ARIN 的 Whois-RWS。
创建新的控制台 C# 项目,然后使用 Visual Studio GUI 或在包管理器控制台中使用以下命令来安装 WhoisParsers NuGet 包:
Install-Package WhoisParsers
var parser = new WhoisParser ( new SectionTokenizer ( ) , new SectionParser ( ) ) ;
var parser = new WhoisParser ( new AfrinicSectionTokenizer ( ) , new SectionParser ( ) ) ;
您可以从此处获取示例arin.sample.txt文件。
var parser = new WhoisParser ( new SectionTokenizer ( ) , new SectionParser ( ) ) ;
var sections = parser . RetrieveSections ( @"arin.sample.txt" ) ;
foreach ( var section in sections )
{
Console . WriteLine ( string . Format ( CultureInfo . InvariantCulture , " Section ID: {0} " , section . Id ) ) ;
Console . WriteLine ( string . Format ( CultureInfo . InvariantCulture , " Number of records: {0} " , section . Records . Count ) ) ;
Console . WriteLine ( " ---- Section Records: " ) ;
Console . WriteLine ( section ) ;
Console . WriteLine ( ) ;
}
WhoisParser 提供的公共功能包括:
功能 | 描述 |
---|---|
每个类型的列数 | 检索数据库转储中每种类型记录的唯一记录名称列表。签名变体:
|
检索部分 | 从批量数据库中检索已解析的部分。签名变体:
|
从字符串中检索部分 | 从批量数据库中检索已解析的部分,其中数据库作为字符串传入。签名变体:
|
该库包含增加 IPV4 和(更重要的是)IPv6 IP 地址的函数。
using Microsoft . Geolocation . Whois . Utils ;
.. .
var ipv4Address = IPAddress . Parse ( " 192.168.0.1 " ) ;
Console . WriteLine ( string . Format ( CultureInfo . InvariantCulture , " Before: {0}, After: {1} " , ipv4Address , ipv4Address . Increment ( ) ) ) ;
var ipv6Address = IPAddress . Parse ( " 2001:db8:a0b:12f0::1 " ) ;
Console . WriteLine ( string . Format ( CultureInfo . InvariantCulture , " Before: {0}, After: {1} " , ipv6Address , ipv6Address . Increment ( ) ) ) ;
输出如下所示:
Before: 192.168.0.1, After: 192.168.0.2
Before: 2001:db8:a0b:12f0::1, After: 2001:db8:a0b:12f0::2
文档待办事项
文档待办事项
文档待办事项