热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ASP.NET使用Socket发送和接收消息[转载]

使用Socket发送和接收消息在ASP.NET应用程序中,可以通过Socket发送和接收消息。发送的消息可以是文本内容、文件或其他类型的数据。本实例介绍使用System.Net.S
使用Socket发送和接收消息

在ASP.NET应用程序中,可以通过Socket发送和接收消息。发送的消息可以是文本内容、文件或其他类型的数据。本实例介绍使用System.Net.Sockets名字空间中的方法发送和接收文件的方法。

技术要点

本实例介绍如何使用ASP.NET通过System.Net.Sockets名字空间中的方法发送和接收文件。在发送过程中,首先介绍读取文件的方法,并把文件读取到二进制数组中,然后使用Sockets中的Send()方法发送文件的数据。

跟我做

1.创建新ASP.NET应用程序

在Visual Studio .NET 2003集成开发环境中创建新的ASP.NET Web应用程序,命名为Example_12_7。

2.设计页面MySocket.aspx

把应用程序Example_12_7的默认页面WebForm1.aspx重命名为MySocket.aspx,并在该页面上添加,页面MySocket.aspx的设计界面如图12-19所示。

ASP.NET--使用Socket发送和接收消息[转载]

图12-19  页面MySocket.aspx的设计界面

页面MySocket.aspx的HTML设计代码如下:

ASP.NET--使用Socket发送和接收消息[转载]<%@ Page language="c#" Codebehind="MySocket.aspx.cs" AutoEventWireup="false" Inherits="Example_12_7.MySocket" %>
ASP.NET--使用Socket发送和接收消息[转载]
<HTML>
ASP.NET--使用Socket发送和接收消息[转载]  
<HEAD>
ASP.NET--使用Socket发送和接收消息[转载]     
<title>Example_12_7:使用Socket发送和接收消息title>
ASP.NET--使用Socket发送和接收消息[转载]  
HEAD>
ASP.NET--使用Socket发送和接收消息[转载]
<asp:Label id="LabelMessage" runat="server">网页正在发送数据,请等待……asp:Label>
ASP.NET--使用Socket发送和接收消息[转载]
<asp:Button ID="ReceiveBtn" Runat="server" Text="接收数据">asp:Button>
ASP.NET--使用Socket发送和接收消息[转载]
<asp:Label id="LabelData" runat="server">asp:Label>td>
ASP.NET--使用Socket发送和接收消息[转载]
HTML>
ASP.NET--使用Socket发送和接收消息[转载]

3.添加Socket名字空间
由于页面MySocket.aspx在发送和接收信息时需要使用Socket类实现HTTP等一些属性,它们被包含在名字空间System.Net和System.Net.Sockets中,因此需要引入这些名字空间。程序代码如下:

//引入名字空间

using System.Net;

using System.IO;

using System.Net.Sockets;

4.创建被发送的文件myFile.txt

在应用程序Example_12_7的根目录下创建使用Socket发送的文件myFile.txt,它为一个text类型的文本文件,其内容如图12-20所示。

ASP.NET--使用Socket发送和接收消息[转载]

图12-20  被发送的myFile.txt文件

5.设计页面MySocket.aspx的事件和函数

页面MySocket.aspx调用函数Page_Load(object sender,System.EventArgs e)初始化,该函数调用函数SocketSend()发送文件信息。函数SocketSend()首先创建发送信息的Socket对象,并定义发送的IP地址和端口,然后读取myFile.txt文件的信息,最后再调用函数Send()发送文件的数据。函数Page_Load(object sender, System.EventArgs e)和函数SocketSend()的程序代码如下:

ASP.NET--使用Socket发送和接收消息[转载]private void Page_Load(object sender, System.EventArgs e)
}


单击页面MySocket.aspx中的【接收数据】按钮触发事件ReceiveBtn_Click(object sender, System.EventArgs e),该事件调用函数SendReceiveData()接收从函数SocketSend()发送的数据。函数SendReceiveData()首先创建用来接收数据的Socket对象,并设计接收数据的IP地址和端口,最后把接收的数据写入文件并保存。函数SendReceiveData()和事件ReceiveBtn_Click(object sender, System. EventArgs e)的程序代码如下:

ASP.NET--使用Socket发送和接收消息[转载]private void ReceiveBtn_Click(object sender, System.EventArgs e)
}

运行效果
设置页面MySocket.aspx为应用程序的起始页面。按F5键运行,出现如图12-21所示的初始界面。

ASP.NET--使用Socket发送和接收消息[转载]

图12-21  页面MySocket.aspx的初始界面


推荐阅读
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • 利用Visual Basic开发SAP接口程序初探的方法与原理
    本文介绍了利用Visual Basic开发SAP接口程序的方法与原理,以及SAP R/3系统的特点和二次开发平台ABAP的使用。通过程序接口自动读取SAP R/3的数据表或视图,在外部进行处理和利用水晶报表等工具生成符合中国人习惯的报表样式。具体介绍了RFC调用的原理和模型,并强调本文主要不讨论SAP R/3函数的开发,而是针对使用SAP的公司的非ABAP开发人员提供了初步的接口程序开发指导。 ... [详细]
  • 本文介绍了在mac环境下使用nginx配置nodejs代理服务器的步骤,包括安装nginx、创建目录和文件、配置代理的域名和日志记录等。 ... [详细]
  • Unity3D引擎的体系结构和功能详解
    本文详细介绍了Unity3D引擎的体系结构和功能。Unity3D是一个屡获殊荣的工具,用于创建交互式3D应用程序。它由游戏引擎和编辑器组成,支持C#、Boo和JavaScript脚本编程。该引擎涵盖了声音、图形、物理和网络功能等主题。Unity编辑器具有多语言脚本编辑器和预制装配系统等特点。本文还介绍了Unity的许可证情况。Unity基本功能有限的免费,适用于PC、MAC和Web开发。其他平台或完整的功能集需要购买许可证。 ... [详细]
  • 本文介绍了如何使用OpenXML按页码访问文档内容,以及在处理分页符和XML元素时的一些挑战。同时,还讨论了基于页面的引用框架的局限性和超越基于页面的引用框架的方法。最后,给出了一个使用C#的示例代码来按页码访问OpenXML内容的方法。 ... [详细]
  • 译文:如何使用SocketAsyncEventArgs类(How to use the SocketAsyncEventArgs class)
    转载自:http:blog.csdn.nethulihuiarticledetails3244520原文:HowtousetheSocketAsyncE ... [详细]
  • python网络编程 day27 网络编程初识 ——socket
    一、内容回顾1、两个内置函数(装饰器)及类中的魔术方法 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • ASP.NET2.0数据教程之十四:使用FormView的模板
    本文介绍了在ASP.NET 2.0中使用FormView控件来实现自定义的显示外观,与GridView和DetailsView不同,FormView使用模板来呈现,可以实现不规则的外观呈现。同时还介绍了TemplateField的用法和FormView与DetailsView的区别。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
author-avatar
布拉格mi_716
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有