本文整理汇总了C#中System.Net.SocketAddress.ToString方法的典型用法代码示例。如果您正苦于以下问题:C# SocketAddress.ToString方法的具体用法?C# SocketAddress.ToString怎么用?C# SocketAddress.ToString使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Net.SocketAddress
的用法示例。
在下文中一共展示了SocketAddress.ToString方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Create
public override EndPoint Create(SocketAddress SockAddr)
{
if (SockAddr == null ||
SockAddr.Family != AF_HYPERV ||
SockAddr.Size != 34)
{
return null;
}
HyperVSocketEndPoint endpoint = new HyperVSocketEndPoint(SockAddr.Family, Guid.Empty, Guid.Empty);
string sockAddress = SockAddr.ToString();
endpoint.VmId = new Guid(sockAddress.Substring(4, 16));
endpoint.ServiceId = new Guid(sockAddress.Substring(20, 16));
return endpoint;
}
示例2: NetTest6_SocketAddressBasic
public MFTestResults NetTest6_SocketAddressBasic()
{
/// <summary>
/// 1. Creates 30 Random IPs between 0.0.0.0 and 255.255.255.127
/// 2. Verifies that they can be constructed as SocketAddress
/// 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));
int portInt = random.Next(65536);
IPEndPoint ipEndpoint1 = new IPEndPoint(address, portInt);
SocketAddress socketAddress1 = ipEndpoint1.Serialize();
SocketAddress socketAddress2 = ipEndpoint1.Serialize();
if (socketAddress1 == null)
throw new Exception("socketAddress1 is null");
if (socketAddress2 == null)
throw new Exception("socketAddress2 is null");
Type typeOfSocketAddress = socketAddress1.GetType();
if (typeOfSocketAddress != Type.GetType("System.Net.SocketAddress"))
throw new Exception("socketAddress1 Type is incorrect");
typeOfSocketAddress = socketAddress2.GetType();
if (typeOfSocketAddress != Type.GetType("System.Net.SocketAddress"))
throw new Exception("socketAddress2 Type is incorrect");
if (socketAddress1.ToString() != socketAddress2.ToString())
throw new Exception("ToString returns differently for same data");
//21295 GetHashCode returns differently for cloned data
if (socketAddress1.GetHashCode() != socketAddress2.GetHashCode())
throw new Exception("GetHashCode returns differently for same data");
if (socketAddress1.Family != AddressFamily.InterNetwork)
throw new Exception("socketAddress1 Family is incorrect");
if (socketAddress2.Family != AddressFamily.InterNetwork)
throw new Exception("socketAddress2 Family is incorrect");
/*
* Pending Resolution of 17428
*
Log.Comment("Recreating socketAddress2 with new data");
int portInt2 = portInt % 2 + 1;
long addressLong2 = (long)(
(IPInts[0] % 2 + 1)
+ (IPInts[1] % 2 + 1) * 256
+ (IPInts[2] % 2 + 1) * 256 * 256
+ (IPInts[3] % 2 + 1) * 256 * 256 * 256);
IPEndPoint ipEndpoint2 = new IPEndPoint(addressLong2, portInt2);
socketAddress2 = ipEndpoint2.Serialize();
socketAddress2.Family = AddressFamily.Chaos;
*/
socketAddress2 = new SocketAddress(AddressFamily.Chaos, 8);
if (socketAddress1.GetHashCode() == socketAddress2.GetHashCode())
throw new Exception("GetHashCode returns same for "
+ socketAddress1.ToString()
+ " as " + socketAddress2.ToString());
if (socketAddress1.ToString() == socketAddress2.ToString())
throw new Exception("ToString returns same for different data");
}
}
catch (Exception e)
{
Log.Comment("Caught exception: " + e.Message);
testResult = false;
}
return (testResult ? MFTestResults.Pass : MFTestResults.KnownFailure);
}