本文整理汇总了C#中System.Net.IPAddress.GetType方法的典型用法代码示例。如果您正苦于以下问题:C# IPAddress.GetType方法的具体用法?C# IPAddress.GetType怎么用?C# IPAddress.GetType使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Net.IPAddress
的用法示例。
在下文中一共展示了IPAddress.GetType方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: NetTest2_IPAddressBasic
public MFTestResults NetTest2_IPAddressBasic()
{
/// <summary>
/// 1. Creates 30 Random IPs between 0.0.0.0 and 255.255.255.127
/// 2. Verifies that they can be constructed
/// 3. Verifies that they have the correct data (GetAddressBytes)
/// 4. Verifies ToString and GetHashcode
/// </summary>
///
bool testResult = true;
try
{
Random random = new Random();
for (int i = 0; i <= 30; i++)
{
int[] IPInts = { random.Next(256), random.Next(256),
random.Next(256), random.Next(128) };
Log.Comment("Random IP " + IPInts[0] + "." + IPInts[1]
+ "." + IPInts[2] + "." + IPInts[3]);
IPAddress address = new IPAddress((long)(
IPInts[0]
+ IPInts[1] * 256
+ IPInts[2] * 256 * 256
+ IPInts[3] * 256 * 256 * 256));
if (address == null)
throw new Exception("Address is null");
Type typeOfAddress = address.GetType();
if (typeOfAddress != Type.GetType("System.Net.IPAddress"))
throw new Exception("Type is incorrect");
byte[] targetBytes = { (byte)IPInts[0], (byte)IPInts[1],
(byte)IPInts[2], (byte)IPInts[3] };
byte[] addressBytes = address.GetAddressBytes();
if (addressBytes.Length != 4)
throw new Exception("GetAddressBytes returns wrong size");
for (int j = 0; j < 4; j++)
if (addressBytes[j] != targetBytes[j])
throw new Exception("GetAddressBytes returns wrong bytes");
IPAddress address2 = new IPAddress((long)(
IPInts[0]
+ IPInts[1] * 256
+ IPInts[2] * 256 * 256
+ IPInts[3] * 256 * 256 * 256));
if (address.ToString() != address2.ToString())
throw new Exception("ToString returns differently for same data");
if (address.GetHashCode() != address2.GetHashCode())
throw new Exception("GetHasCode returns differently for same data");
address2 = new IPAddress((long)(
(IPInts[0] % 2 + 1)
+ (IPInts[1] % 2 + 1 )* 256
+ (IPInts[2] % 2 + 1 )* 256 * 256
+ (IPInts[3] % 2 + 1 )* 256 * 256 * 256));
if (address.GetHashCode() == address2.GetHashCode())
throw new Exception("GetHasCode returns same for " + address.ToString()
+ " as " + address2.ToString());
}
}
catch (Exception e)
{
Log.Comment("Caught exception: " + e.Message);
testResult = false;
}
return (testResult ? MFTestResults.Pass : MFTestResults.Fail);
}