我将一个IPV4地址存储在SQLSERVER 2008数据库中,使用Binary(4)格式。因此,在数据输入之前,我需要转换这些值(由于公司限制,我不能在数据库中创建函数,这是不可讨论的)。
public static byte[] IpToBin(string ip)
{
return IPAddress.Parse(ip).GetAddressBytes();
}
public static string HexToIp(string ip)
{
return new IPAddress(long.Parse(ip, NumberStyles.HexNumber)).ToString();
}
在调用IpToBin之后,生成的数据为(例如0x59FC09F3)。当我调用HexToIp时,IP地址可能会反转,这可能是由于小/大端转换引起的。
请问是否有任何简洁的解决方案,而不需要写50亿行代码?