金额大小写转化类

using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;
 
namespace ConsoleApplication1
{
    /// 
    /// 类    名:  MoneyHelper
    /// 版 本 号:  V1.0
    /// 作    者:  张远强
    /// HomePage:  http://www.mzwu.com/
    /// 创建日期:  2009-05-12
    /// 功能描述:  金额大小写转化类
    /// 
    public sealed class MoneyHelper
    {
        /// 
        /// 转为小写金额
        /// 
        ///
大写金额
        /// 
        public static double ToLower(string money)
        {
            return ToLowerForInt(money) + ToLowerForDec(money);
        }
 
        /// 
        /// 转为小写金额(整数)
        /// 
        ///
大写金额
        /// 
        private static double ToLowerForInt(string money)
        {
            string[] units = new string[] { "亿", "万", "千", "百", "十", "元" };//金额单位数组
            int[] indexs = new int[] { 8, 4, 3, 2, 1, 0 };//金额单位对应位数,如亿位于第8位,百位于第2位,元位于第0位
            string[] items = new string[] { "零", "一", "二", "三", "四", "五", "六", "七", "八", "九" };//十个基本数字(大写)
            double[] results = new double[indexs[0] + indexs[1] + 2];//保存结果,其长度为最大的两个单位位数之和+1
 <a href="http://www.lixiaopeng.org/category-into-the-amount-of-sensitive/#more-994" class="more-link">Read the rest of this entry</a>

列出C#进程以及详细信息

建立一个listBox将进程名称遍历进去

this.listBox1.Items.Clear();
Process[] MyProcesses=Process.GetProcesses();
foreach(Process MyProcess in MyProcesses)
{
this.listBox1.Items.Add(MyProcess.ProcessName);
}
this.listBox1.SelectedIndex=0;

选中listBox里面的项后将进程详细信息显示在右面的Label中

try
{
string ProcessName=this.listBox1.Text;
this.groupBox1.Text=ProcessName+"进程的详细信息";
Process[] MyProcess=Process.
GetProcessesByName(ProcessName);
this.label1.Text="进程影象名:"+MyProcess[0].ProcessName;
this.label2.Text="进程ID:"+MyProcess[0].Id;
this.label3.Text="启动线程树:"+
MyProcess[0].Threads.Count.ToString();
this.label4.Text="CPU占用时间:"+
MyProcess[0].TotalProcessorTime.ToString();
this.label5.Text="线程优先级:"+
MyProcess[0].PriorityClass.ToString();
this.label6.Text="启动时间:"+
MyProcess[0].StartTime.ToLongTimeString();
this.label7.Text="专用内存:"+(
MyProcess[0].PrivateMemorySize/1024).ToString()+"K";
this.label8.Text="峰值虚拟内存:"+(MyProcess[0].
PeakVirtualMemorySize/1024).ToString()+"K";
this.label9.Text="峰值分页内存:"+(MyProcess[0].
PeakPagedMemorySize/1024).ToString()+"K";
this.label10.Text="分页系统内存:"+(MyProcess[0].
PagedSystemMemorySize/1024).ToString()+"K";
this.label11.Text="分页内存:"+(MyProcess[0].
PagedMemorySize/1024).ToString()+"K";
this.label12.Text="未分页系统内存:"+(MyProcess[0].
NonpagedSystemMemorySize/1024).ToString()+"K";
this.label13.Text="物理内存:"+(MyProcess[0].
WorkingSet/1024).ToString()+"K";
this.label14.Text="虚拟内存:"+(MyProcess[0].
VirtualMemorySize/1024).ToString()+"K";
}
catch(Exception Err)
{
MessageBox.Show("没有此进程,无法获取信息!",
"信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
//不处理异常
            }
当要进行MD5加密的字符串不含中文时,那么ASP.NET的加密结果和ASP是一致的:
 
 
 
Response.Write(FormsAuthentication.HashPasswordForStoringInConfigFile("www.mzwu.com", "MD5")); 
//结果:D66E1F138689B9B5AA4C520D9EAFFB61
 
 
 
 
Response.Write(MD5("www.mzwu.com",32))
'结果:d66e1f138689b9b5aa4c520d9eaffb61
 
当要进行MD5加密的字符串含中文时,两者的加密结果就不一致了:
 
 
 
Response.Write(FormsAuthentication.HashPasswordForStoringInConfigFile("木子屋", "MD5")); 
//结果:34D9CBD5164C47058DFA3AF832E2D1DC
 
 
Response.Write(MD5("木子屋",32))
'结果:0a40a90190da023ae7aa17771663a41e
 
 
我们知道,ASP.NET默认使用utf-8编码格式,而ASP使用的是gb2312编码格式,正是由于这编码格式不同,才导致了两者对中文加密结果的不同。下边我们看看怎么让ASP.NET的编码结果和ASP一样,那也就意味着要让ASP.NET采用gb2312编码格式,这点FormsAuthentication.HashPasswordForStoringInConfigFile()方法是办不到的,我们得使用System.Security.Cryptography.MD5CryptoServiceProvider对象的ComputeHash方法来进行加密:
 
MD5CryptoServiceProvider MD5 = new MD5CryptoServiceProvider();
Response.Write(BitConverter.ToString(MD5.ComputeHash(Encoding.GetEncoding("gb2312").GetBytes("木子屋"))).Replace("-", ""));
//结果:0A40A90190DA023AE7AA17771663A41E
 
 <a href="http://www.lixiaopeng.org/aspnet-md5-encryption-solution-results-and-asp-chinese-inconsistencies/#more-729" class="more-link">Read the rest of this entry</a>

对于下载方面的站点来说,怎样去实现防盗下,隐藏下载地址一直是一个关键的问题,现在就来讲一下.此法适合在.NET下使用,ASP是不行的.虽然晓鹏尝试了用这种原理来实现ASP的过程,不过好像没什么效果,还是死在那,也许这就是ASP不如.NET的地方吧.

原因:
Web 服务器计算机的硬件配置决定您可以成功下载的最大文件大小。当 ASP.NET 辅助进程(Aspnet_wp.exe,对于在 Internet 信息服务 6.0 [IIS] 上运行的应用程序,则为 W3wp.exe)执行文件下载请求时,会出现文件下载对话框。ASP.NET 辅助进程开始向 Microsoft Internet 信息服务进程(Inetinfo.exe 或 Dllhost.exe)发送数据。它不等您单击"确定"即开始发送。

根据计算机的配置,IIS 进程可能会处理数据,也可能会将数据缓存在内存中。如果文件太大,在这两个进程相互通信的过程中,数据将被缓存在内存中。这可能会导致服务器上的内存使用量增加。出现此错误的原因是 Web 服务器上的内存限制。

 解决方法:
要解决此问题,请使用以下任一方法:

* 将数据分成较小的部分,然后将其移动到输出流以供下载,从而获取这些数据。以下代码演示了如何完成此操作。

重要说明:当您在 ASP.NET 应用程序的 Web.config 文件中将编译元素的 debug 属性值设置为 false 时,必须针对要下载的文件大小将 Server.ScriptTimeout 属性设置为适当的值。默认情况下,Server.ScriptTimeout 值被设置为 90 秒。但是,当 debug 属性被设置为 true 时,Server.ScriptTimeout 值将被设置为一个非常大的值(30,000,000 秒)。作为一名开发人员,您必须知道这可能会对您的 ASP.NET Web 应用程序的行为造成的影响。

此外,在下面的代码中,您还必须知道与 FileStream 构造函数一起使用的参数值。指定的枚举值会对提供的功能产生重大影响。有关更多信息,请参考 参考 一节中的 FileStream 链接。
Visual Basic .NET 代码

Dim iStream As System.IO.Stream

' Buffer to read 10K bytes in chunk:
Dim buffer(10000) As Byte

' Length of the file:
Dim length As Integer

' Total bytes to read:
Dim dataToRead As Long

' Identify the file to download including its path.
Dim filepath As String = "DownloadFileName"

' Identify the file name.
Dim filename As String = System.IO.Path.GetFileName(filepath)

Try
' Open the file.
iStream = New System.IO.FileStream(filepath, System.IO.FileMode.Open, _
IO.FileAccess.Read, IO.FileShare.Read)

' Total bytes to read:
dataToRead = iStream.Length

Response.ContentType = "application/octet-stream"
Response.AddHeader("Content-Disposition", "attachment; filename=" & filename)

' Read the bytes.
While dataToRead > 0
' Verify that the client is connected.
If Response.IsClientConnected Then
' Read the data in buffer
length = iStream.Read(buffer, 0, 10000)

' Write the data to the current output stream.
Response.OutputStream.Write(buffer, 0, length)

' Flush the data to the HTML output.
Response.Flush()

Read the rest of this entry

Global.asax 文件,有时候叫做 ASP.NET 应用程序文件,提供了一种在一个中心位置响应应用程序级或模块级事件的方法。你可以使用这个文件实现应用程序安全性以及其它一些任务。下面让我们详细看一下如何在应用程序开发工作中使用这个文件。 
概述 
Global.asax 位于应用程序根目录下。虽然 Visual Studio .NET 会自动插入这个文件到所有的 ASP.NET 项目中,但是它实际上是一个可选文件。删除它不会出问题——当然是在你没有使用它的情况下。.asax 文件扩展名指出它是一个应用程序文件,而不是一个使用 aspx 的 ASP.NET 文件。
Global.asax 文件被配置为任何(通过 URL 的)直接 HTTP 请求都被自动拒绝,所以用户不能下载或查看其内容。ASP.NET 页面框架能够自动识别出对Global.asax 文件所做的任何更改。在 Global.asax 被更改后ASP.NET 页面框架会重新启动应用程序,包括关闭所有的浏览器会话,去除所有状态信息,并重新启动应用程序域。
编程 
Global.asax 文件继承自HttpApplication 类,它维护一个HttpApplication 对象池,并在需要时将对象池中的对象分配给应用程序。Global.asax 文件包含以下事件:
·Application_Init:在应用程序被实例化或第一次被调用时,该事件被触发。对于所有的HttpApplication 对象实例,它都会被调用。
·Application_Disposed:在应用程序被销毁之前触发。这是清除以前所用资源的理想位置。
·Application_Error:当应用程序中遇到一个未处理的异常时,该事件被触发。
·Application_Start:在HttpApplication 类的第一个实例被创建时,该事件被触发。它允许你创建可以由所有HttpApplication 实例访问的对象。
·Application_End:在HttpApplication 类的最后一个实例被销毁时,该事件被触发。在一个应用程序的生命周期内它只被触发一次。
·Application_BeginRequest:在接收到一个应用程序请求时触发。对于一个请求来说,它是第一个被触发的事件,请求一般是用户输入的一个页面请求(URL)。
·Application_EndRequest:针对应用程序请求的最后一个事件。
·Application_PreRequestHandlerExecute:在 ASP.NET 页面框架开始执行诸如页面或 Web 服务之类的事件处理程序之前,该事件被触发。
·Application_PostRequestHandlerExecute:在 ASP.NET 页面框架结束执行一个事件处理程序时,该事件被触发。

Read the rest of this entry

中文名称:ASP.NET编程百例
英文名称:ASP.NET
别名:编程精彩百例丛书
版本:PDF
发行时间:2002年01月01日
地区:大陆
语言:普通话
简介
书号: 7-115-09822-0
页码: 416
版次:1-1
丛书名: 编程精彩百例丛书
出版社: 人民邮电出版社
出版日期: 2002-1-1
市场价:¥45.00
内容介绍:
ASP.NET 是微软.NET战略中的一个重要成员,除了可以使用Visual C#、VB.NET、VisualC++.NET、JScript.NET等语言编写外,还可以使用第三方的.NET接口(如COBOL.NET、 Perl.NET等)进行编写。本书通过100个精彩实例,由浅入深介绍了ASP.NET网络程序设计的编程方法与实用技巧。为了方便读者学习与深入理解 ASP.NET,本书将这100 个实例分为4篇,即基础编程实例、中级编程实例、高级编程实例与混合编程实例。在每个实例中,除了介绍ASP.NET中所提供的基础知识点及编程技巧外,还介绍了ASP.NET在网络编程、图形编程、多媒体编程、Mobile(移动通信)等方面的重要应用及开发技术。本书附赠一张光盘,其中包括全部100 个实例源代码及可执行文件(详细内容请参见光盘中的“本书配套光盘说明.txt”). 本书体系结构清晰,解释说明详尽,开发实例典型,适合于计算机编程用户、网络用户及对ASP.NET感兴趣的用户阅读,也可作为ASP.NET培训参考书。
书籍目录:
第1篇ASP.NET基础编程实例
实例1一个HTML化的ASP.NET程序
实例2ASP+WebForms广告轮换控制过程
实例3驱动器列表应用
实例4列出当前盘上目录和文件
实例5使用“文件预览”显示文件夹信息
实例6使用递归循环以显示目录列表
实例7在ASP.7NET中随意创建图形信息
实例8在ASP.8NET中显示事件日志记录(1)
实例9在ASP.9NET中显示事件日志记录(2)
实例10在ASP.10NET中使用DataGrid分页
实例11在ASP.11NET访问Excel2000/XP文件
实例12显示当前浏览器头信息
实例13利用ASP.NET获取主机名和IP地址
实例14由域名获取其IP地址
实例15由IP地址获得其域名
实例16ASP.NET中的正则表达式应用
实例17主机远程控制与探测应用
实例18ASP.NET控件———AdRotator应用
实例19ASP.NET日历程序
实例20查看主机内存情况
实例21ASP.NET简易应用程序“Hello,22World!”
实例22读取Config.22Web配置文件
实例23显示BrowseCaps配置段内容
实例24写入文件操作与应用
实例25文件读操作及应用
实例26文件删除与应用
实例27ASP.NET中异常处理及其应用
实例28AutoPostBack技术及其应用
实例29用户合法性验证与应用
实例30ASP.30NET列表框应用
实例31Calendar控件操作与应用
实例32用户操作验证与应用
实例33CompareValidator服务器比较控件操作与应用
实例34CustomValidator控件操作与应用
实例35服务器端控件ValidationSummary应用操作
实例36HtmlTable控件操作与应用
实例37在HTML控件中运用样式
实例38在Web服务器控件中运用样式
第2篇ASP.NET中级编程实例
。。。。。。。。。。
第3篇ASP.NET高级编程实例
。。。。。。。。。。。。

 

ed2k://|file|ASP.NET编程百例.rar|25082957|7dfe6cbf06ac1e68ccf8761c1c970f63|h=IA3L3QVOQ5WUH5FJMCZ2GRC6HZL4W6H3|/

 

网页地址:http://www.verycd.com/topics/33701/

中文名称:完全手册:ASP.NET 2.0网络开发详解 教程/光盘
资源类型:ISO
版本:电子教程/随书光盘
发行时间:2008年01月
地区:大陆
语言:普通话
简介:

【作 者】陈冠军
【丛 书 名】 完全手册系列
【出 版 社】 电子工业出版社

【内容简介】
本书是一本ASP.NET 2.0技术入门图书,体系完整,内容自足,以示例贯穿全篇。全书包括从入门基础、控件开发、数据和文件操作、网站整体设计及课程实践五部分,全面介绍ASP.NET的开发基础,共23章。其中,【第1篇 从零开始】介绍了ASP.NET 2.0 Web开发基础的概念、思想和技术,【第2篇 控件开发】展现ASP.NET 2.0强大的服务器控件,【第3篇 数据操作】介绍SQL Server数据库操作、XML数据操作、数据控件及文件操作技术,【第4篇 网站设计】则着重讨论了母版页、成员管理等网站设计中的必要技术,最后【第5篇 综合实例】介绍Web系统三层结构,实现了一个较大的课程设计,并帮助读者踏上Starter Kit学习之路。.
全书每一个知识点都以示例为方法展现,控制每个示例尽量短小,使读者便于学习和实现。..
本书旨在向网站开发初学者介绍实用的ASP.NET 2.0开发技术,使初学者学完本书后即可动手开发,同时也可以作为中、高级Web开发人员有价值的参考书籍。如果读者具有ASP.NET 1.x的基础,本书也可以帮助您迅速掌握和使用2.0新特征。...

图书目录:

第一篇 从零开始
第零章 First Things First
0.1 基础概念
0.1.1 什么是网页
0.1.2 网页开发技术
0.1.3 Web开发相关技术
0.2 搭建开发环境
0.2.1 安装Visual Studio 2005
0.2.2 Visual Studio 2005简介
0.2.3 实现第一个ASP.NET程序
0.3 C# 2.0语言基础
0.3.1 简介
0.3.2 数据类型
0.3.3 变量和常量
0.3.4 运算符
0.3.5 流程控制
0.4 编码规范
0.4.1 好的编码结构
0.4.2 好的注释风格
0.4.3 好的命名规范
0.4.4 避免文件过大
承上启下
第一章 走进ASP.NET 2.0
1.1 ASP.NET 2.0概述
1.1.1 动态页面工作原理
1.1.2 ASP.NET 2.0——动态页面开发利器
1.1.3 ASP.NET 2.0的优点
1.2 ASP.NET 2.0动态页面
1.2.1 剖析ASPX页面
1.2.2 使用<%...%>嵌入代码
1.2.3 使用<script>...</Script>嵌入代码
1.2.4 使用<%--...--%>注释代码
1.2.5 使用<%@ CodeFile=…%>绑定代码
1.2.6 使用<%@ Page...%>设置页面属性
1.2.7 使用<%@ Import %>引入类库
1.3 服务器控件事件
1.3.1 添加服务器控件
1.3.2 用事件响应页面动作
1.3.3 将事件绑定到方法
1.3.4 页面加载事件
承上启下
第二章 类、对象和命名空间
2.1 类和对象
2.1.1 面向对象编程
2.1.2 创建和实例化类
2.1.3 类的继承机制
2.1.4 使用Class View窗口
2.1.5 使用Object Browser
2.2 类的成员
2.2.1 域和属性
2.2.2 静态属性
2.2.3 重载属性
2.3 类的方法
2.3.1 声明类的方法
2.3.2 方法的参数
2.3.3 使用构造函数
2.3.4 使用析构函数
2.3.5 使用静态方法
2.3.6 重载方法
2.3.7 访问父类方法
2.3.8 重载运算符
2.4 命名控件和.NET类库
2.4.1 使用命名空间
2.4.2 .NET基础类库框架
承上启下

Read the rest of this entry

在 web.config 中,ACCESS数据库连接字符串采用相对路径基本不存在问题:

<add name="AccessFileName" connectionString="~/App_Data/ASPNetDB.mdb"   providerName="System.Data.OleDb" />
但是如果连接字符串中含有密码,则比较头痛了 :

 <add name="NewsDB_PSWDConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=App_Data\ASPNetDB.mdb; Jet OLEDB:Database Password=000"
   providerName="System.Data.OleDb" />

此时,系统会报错:

'c:\windows\system32\inetsrv\App_Data\ASPNetDB.mdb'不是一个有效的路径。 确定路径名称拼写是否正确,以及是否连接到文件存放的服务器。

因为,在连接串中采用的相对路径系统并没有按我们的意愿从当前目录提取,此时,可使用如下的连接串即可:

 <add name="NewsDB_PSWDConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\ASPNetDB.mdb; Jet OLEDB:Database Password=000"
   providerName="System.Data.OleDb" />

当然数据库文件得放在App_Data目录下。如果不在此目录下,则需采用稍麻烦一些的方法:

在<appSettings>节中设置多个键值,数据源单独使用一个键值,然后在程序代码中用Server.MapPath方法获得其物理路径,在连接起来组成一个完整的连接字符串即可。