摘要:
causesvalidation in datagrid
在我们对datagrid进行编辑的时候,我们可能要对用户输入的数据进行验证,以确保数据的正确性、完整性。要解决这个问题有很多不同的方法,如:我们可以运用vs.net当中的验证控件,如: requiredfieldvalidator 。这样我们便需要 datagrid中的 update 按钮引发验证来检验用户输入的......
摘要:
其实在介绍struct之前,我们应对c#关于类(class)的原理进行初步的研究。但是,从另一个方面,我们也可以先对这个与类有着血缘关系的结构进行探讨以获得对类的进一步的认识。
首先,c#的结构是一个关系重大的语言功能。和类一样,结构也可以包含其他类型。由于结构在内部是值类型的,所以结构有时也被称为类的轻型版本。同时,结构不承担引用对象所带来的开销,除非在对其装箱时例外。
......
使用C#制作《邮件特快专递》
一.前言
觉得这个新功能蛮好用的.不需要通过smtp代理,可以直接通过本地往邮箱所在的邮件交换器发送邮件.在暑假一开始想在vc++中实现这个功能.用iris截包后,发现程序后mx8.263.net发送邮箱,不知道这个是什么东西所以作罢. 后来才想到这个就是263.net的mx记录主机,原来特快专递的原理就是往这个主机上发送数据就行.
【程序编程相关:
VisualBasic2005在语言上的】 foxmail新版中有一个«邮件特快专递»的功能.起先搞不懂如何用,后来知道要在 工具->系统选项 那边设置 本地dns服务器的ip地址.
【推荐阅读:
基于组件的.NET软件开发(5)】 set type=mx
【扩展信息:
如何在ASP.NET下遍历指定页面上所有】 运行nslookup程序:
263.net
有了,有了,得到结果:
non-authoritative answer:
263.net mx preference = 10, mail exchanger = mx06.263.net
263.net mx preference = 10, mail exchanger = mx08.263.net
263.net mx preference = 10, mail exchanger = mx09.263.net
263.net mx preference = 10, mail exchanger = mx11.263.net
263.net mx preference = 10, mail exchanger = mx12.263.net
263.net mx preference = 40, mail exchanger = mx03.263.net
263.net mx preference = 10, mail exchanger = mx01.263.net
没有错了.就是这个了.后来因为不知道怎么实现nslookup的功能,就放弃了,学了半个多月的c#.后来偶然在网上查找到了一些相关的文档.几次实验.把我的开发过程拿过来分享,我第一次写教程性文档.所以不规范之处,请大家包涵.本文涉及的域名.邮箱及ip均为真实的.
二.dns协议原理
我认为,要想成为一个好的网络软件程序员,必须得读懂rfc文档.因为本文是面向大多广泛程序爱好者,所以我尽量从细节上写,如果高手的话,可以跳过此部分.
dns协议的相关rfc文档:
rfc1034-«domain names - concepts and facilities»
rfc1035-«domain names - implementation and specification»
网上的计算机用形如 220.162.75.1 这样称为ip地址的数字串来标识一台计算机.而如果每次访问一台计算机都是通过输入这样的东东来访问,那不就太可怕了?以是出了dns这样的好东东,用要指示其绑定的ip地址,当我们在浏览器内输入 http://zzsy.com 时,浏览器不知道网页该到哪里取,于是就向设定好的dns服务器查询zzsy.com这个域名.dns服务器会先寻找自己的记录库,如果没有发现就转向上一级dns服务器进行查询(转发请求).把找到后的ip告知你的浏览器.这里边浏览器查询的记录类型是a记录.rfc1035文档第11页中定义有16种记录类型,而常见的有a(地址)记录.cname(别名)记录.mx(邮件交换)记录.我们本篇要关心的是mx记录.
查询的过程一般是:客户向dns服务器的53端口发送udp报文,dns服务器收到后进行处理,并把结果记录仍以udp报文的形式返回过来.
此udp报文的一般格式:
+---------------------+
| 报文头 |
+---------------------+
| 问题 | 向服务器提出的查询部分
+---------------------+
| 回答 | 服务器回复的资源记录
+---------------------+
| 授权 | 权威的资源记录
+---------------------+
| 格外的 | 格外的资源记录
+---------------------+
除了报文头是固定的12字节外,其他每一部分的长度均为不定字节数.
我们在这边关心的是报文头.问题.回答这三个部分....
下一页 摘要:
作为有关 c# 语言规范漫谈的继续,本月我们将讨论运算符重载的问题。运算符重载(除非特别指明,否则本专栏的其余部分一律将其简称为“重载”)是指允许用户使用用户定义的类型编写表达式的能力。它允许用户定义的类型与预定义的类型具有相同的功能。
例如,通常需要编写类似于以下内容的代码,以将两个数字相加。很明显,sum 是两个数字之和。
int i = 5;
int sum = i ......