老尸 发表于 2015-1-16 14:20:29

NET网页编程之依据IP判别局域网仍是广域网的复杂办法

中间码是基于一个虚拟机器。源代码是最高层的,理论上从源代码开始直接编译成本地码能提供最大优化的。而中间码只能是转译成本地码,效率上难免受到损耗。根据虚拟机器所设定的体系结构的特点,和本地机器的差异的多少。这个示例只是复杂的依据IP的地点段来判别收集是局域网仍是广域网。但在某些庞大的收集情形下大概其实不合用,仅做参考吧。

我们以为ABC类外的IP地点就是广域网IP,ABC类IP的址段分离以下:
A类:10.0.0.0~10.255.255.255
B类:172.16.0.0~172.31.255.255
C类:192.168.0.0~192.168.255.255

示例代码以下:
///<summary>
///IP帮助类
///</summary>
publicstaticclassIPHelper
{
///<summary>
///判别指定IP是不是为广域网IP
///</summary>
///<paramname="ipAddress">要测试的IP地点</param>
///<returns>地点分类</returns>
///<remarks>0:有效IP,1:局域网IP,2:广域网IP</remarks>
publicstaticintGetIPType(stringipAddress)
{
//ABC类外的IP地点为广域网IP
//A类:10.0.0.0~10.255.255.255
//B类:172.16.0.0~172.31.255.255
//C类:192.168.0.0~192.168.255.255
//前往值
//0:有效IP
//1:局域网IP
//2:广域网IP
if(ipAddress=="127.0.0.1")
{
return1;
}

string[]ipAddressList=ipAddress.Split(.);
intipAddressTemp;

//反省IP地点是不是无效
if(ipAddressList.Length!=4)
{
return0;
}
if(!(int.TryParse(ipAddressList,outipAddressTemp)&&int.TryParse(ipAddressList,outipAddressTemp)
&&int.TryParse(ipAddressList,outipAddressTemp)&&int.TryParse(ipAddressList,outipAddressTemp)))
{
return0;
}
if(!(int.Parse(ipAddressList)>=0&&int.Parse(ipAddressList)<=255
&&int.Parse(ipAddressList)>=0&&int.Parse(ipAddressList)<=255
&&int.Parse(ipAddressList)>=0&&int.Parse(ipAddressList)<=255
&&int.Parse(ipAddressList)>=0&&int.Parse(ipAddressList)<=255))
{
return0;
}

//局域网IP
if(int.Parse(ipAddressList)==10
||(int.Parse(ipAddressList)==172&&int.Parse(ipAddressList)>=16&&int.Parse(ipAddressList)<=31)
||(int.Parse(ipAddressList)==192&&int.Parse(ipAddressList)==168))
{
return1;
}

return2;
}
}
也许C#刚上市的时候有些抄袭Java吧,但自从C#2.0上市之后,整个局面就扭转乾坤了,不但Java在模仿C#,而且他从来都没能跟得上C#的脚步。

若相依 发表于 2015-1-18 13:15:04

目前在微软的.net战略中新推出的ASP.net借鉴了Java技术的优点,使用CSharp(C#)语言作为ASP.net的推荐语言,同时改进了以前ASP的安全性差等缺点。但是,使用ASP/ASP.net仍有一定的局限性,因为从某种角度来说它们只能在微软的WindowsNT/2000/XP+IIS的服务器平台上良好运行(虽然像ChilliSoft提供了在UNIX/Linux上运行ASP的解决方案.

简单生活 发表于 2015-1-25 20:53:31

可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。另外,任何ASP.NET应用程序都可以使用整个.NETFramework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。

深爱那片海 发表于 2015-2-4 03:39:20

如今主流的Web服务器软件主要由IIS或Apache组成。IIS支持ASP且只能运行在Windows平台下,Apache支持PHP,CGI,JSP且可运行于多种平台,虽然Apache是世界使用排名第一的Web服务器平台。

蒙在股里 发表于 2015-2-9 14:06:35

目前在微软的.net战略中新推出的ASP.net借鉴了Java技术的优点,使用CSharp(C#)语言作为ASP.net的推荐语言,同时改进了以前ASP的安全性差等缺点。但是,使用ASP/ASP.net仍有一定的局限性,因为从某种角度来说它们只能在微软的WindowsNT/2000/XP+IIS的服务器平台上良好运行(虽然像ChilliSoft提供了在UNIX/Linux上运行ASP的解决方案.

精灵巫婆 发表于 2015-3-9 01:38:18

以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。

仓酷云 发表于 2015-3-16 20:47:04

代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
页: [1]
查看完整版本: NET网页编程之依据IP判别局域网仍是广域网的复杂办法