.NET网络编程学习(一)

最近在学习.NET下的网络编程,关于它的方便和强大就不说了,以下是个人学习过程的一些体会,整理如下.


.NET网络编程主要涉及到两个命名空间:System.Net和System.Net.Sockets

先来看看System.Net命名空间

 

(1)Dns类
public static class Dns
Dns 类是一个静态类,它从 Internet 域名系统 (DNS) 检索关于特定主机的信息。
在 IPHostEntry 类的实例中返回来自 DNS 查询的主机信息。如果指定的主机在 DNS 数据库中有多个入口,则 IPHostEntry 包含多个 IP 地
址和别名。
Dns包含一些静态方法,最重要莫过于GetHostEntry()方法了.
如:
IPHostEntry hostInfo = Dns.GetHostEntry("www.microsoft.com");

 

(2)IPHostEntry类
public class IPHostEntry
IPHostEntry 类将一个域名系统 (DNS) 主机名与一组别名和一组匹配的 IP 地址关联。
IPHostEntry 类作为 Helper 类和 Dns 类一起使用。

 

(3)IPAddress 类
public class IPAddress
IPAddress类包含计算机在 IP 网络上的地址。

     (A)在该类中有一个 Parse()方法,可以把点分的十进制IP表示转化成IPAddress类,方法如下:
      IPAddress address = IPAddress.Parse(“192.168.0.1”);

 

     (B)IPAddress提供4个只读字段
      Any   用于代表本地系统可用的任何IP地址
      Broadcase 用于代表本地网络的IP广播地址
      Loopback 用于代表系统的回送地址   
      None 用于代表系统上没有网络接口

(4)IPEndPoint类
public class IPEndPoint : EndPoint
IPEndPoint 类包含应用程序连接到主机上的服务所需的主机和本地或远程端口信息。通过组合服务的主机 IP 地址和端口号,IPEndPoint 类
形成到服务的连接点。

IPEndPoint(IPAddress, Int32)
IPEndPoint(Int64, Int32)
用指定的地址和端口号初始化 IPEndPoint 类的新实例。

 

一个简单的例子:显示microsoft服务器的IP.

 

ContractedBlock.gif ExpandedBlockStart.gif Code
static void Main(string[] args)
        {
            IPHostEntry IPHost 
= Dns.GetHostEntry("www.microsoft.com");
            IPAddress[] addr 
= IPHost.AddressList;
            Console.WriteLine(addr.Length);
            
for (int i = 0; i < addr.Length; i++)
            {
                Console.WriteLine(addr[i]);
            }
            Console.Read();
        }

 

结果如下:

主要参考资料:MSDN

本书结合大量实例,全面介绍了基于visual c#.net网络编程,内容包括web forms、asp.net、tcp、udp端口通信、远程访问、msmq消息队列、电子邮作客户端系统、网络编程应用技巧与web services等。<br>本书所有的源代码可以通过http://www.tupwk.com.cn下载到,用户无需输入任何内容,即可使用本书中展示的所有技巧。<br>本书结构清晰,内容全面,由浅及深、注重实用,适合于初级和中级网络程序员、网络软件开发人员、网络管理员及广大计算机编程爱好者阅读。<br>第1章 net平台<br>1.1 net平台简介<br>1.1.1 什么是.net<br>1.1.2 net的功能<br>1.1.3 net的核心组件<br>1.2 net平台特点<br>1.3 net平台架构<br>1.4 本章小结<br>第2章 c#web编程基础<br>2.1 internet发展简史<br>2.1.1 www与internet<br>2.1.2 web的工作原理<br>2.1.3 超文本传输协议<br>2.2 web编程起步<br>2.2.1 html页面<br>2.2.2 html表单<br>2.2.3 静态和动态web页面<br>2.2.4 web的演化过程<br>2.3 netweb编程<br>2.3.1 aspnet<br>2.3.2 webforms<br>2.4 本章小结<br>第3章 基于asp.net网络编程<br>3.1 webforms<br>3.1.1 创建第一个web窗体<br>3.1.2 在web窗体上添加控件<br>3.1.3 将控件与数据绑定<br>3.1.4 webforms的事件响应<br>3.2 服务器端控件<br>3.3 自定义控件<br>3.3.1 创建项目<br>3.3.2 将控件添加到工具箱<br>3.3.3 个性化控件<br>3.3.4 创建自定义设计器<br>3.3.5 测试控件<br>3.4 html控件<br>3.5 aspnet应用程序<br>3.5.1 什么是应用程序<br>3.5.2 配置web.config<br>3.5.3 编写global.asax<br>3.5.4 应用和会话<br>3.5.5 安全访问控制<br>3.6 本章小结<br>第4章 基于tcp/udp协议的socket编程<br>4.1 hternet和socket简介<br>4.1.1 tcp协议简介<br>4.1.2 udp协议简介<br>4.1.3 端口简介<br>4.1.4 system.net名称空间<br>4.1.5 system.net.sockets名称空间<br>4.2 基于tcp协议的网络会话实例<br>4.2.1 服务器端编程<br>4.2.2 客户端编程<br>4.2.3 编译运行<br>4.3 基于tcp的p2p文件共享应用<br>4.3.1 qremotefilestream协议<br>4.3.2 qremotefilestreamserver类<br>4.3.3 qremotefilestreamproxy类<br>4.3.4 qfilesharingpeer类<br>4.3.5 p2p-gui程序的编写和编译运行<br>4.4 基于udp协议的网络会话实例<br>4.4.1 服务器端编程<br>4.4.2 客户端编程<br>4.4.3 编译运行<br>4.5 基于udp广播的自动收报机的实现<br>4.5.1 服务器和客户端的公共类<br>4.5.2 服务器端编程<br>4.5.3 客户端编程<br>4.5.4 编译运行<br>4.6 基于udp的客户一服务器聊天应用的实现<br>4.6.1 qtcpserversession类<br>4.6.2 qtcpserver类<br>4.6.3 聊天协议<br>4.6.4 qchatserver类<br>4.6.5 qchatclient类<br>4.6.6 编译和运行程序<br>4.7 网络资料的访问<br>4.7.1 代理的概念<br>4.7.2 访问网络资源的客户端程序<br>4.8 本章小结<br>第5章 远程访问<br>……<br>第6章 基于msmq的消息队列<br>第7章 电子邮件客户端系统<br>第8章 网络编程实用技巧示例<br>第9章 xmlwebservices编程<br>第10章 一个大整数计算的webserrices<br>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值