木子屋 Dnawo's BLOG

分类:Web编程

共 944 篇

C#生成高质量缩略图

using System; using System.Drawing; using System.Drawing.Drawing2D; using System.Drawing.Imaging; /// <summary> /// ImageHelper 的摘要说明 /// </summary> public class ImageHelper { /// <summary> /// 生成缩略图 /// </summary> /// <param name="fileName">原图路径</param> /// <param name="newFile"…

如何解决AJAX中跨域访问出现'没有权限'的错误

很多人在使用AJAX调用别人站点内容的时候,JS会提示"没有权限"错误,这是XMLHTTP组件的限制-安全起见 禁止访问非同域的网站,下面一个例子来访问http://www.google.cn, 保存这段代码到test.html,在本地直接用IE打开没问题,但将该段代码上传到服务器后,问题出现了--JS提示"没有权限"错误!!!这该如何解决呢? 下面思考一下:既然不能访问非同域的,只能访问同域的地址了,同域的动态文件怎么获取非同域网页内容呢?我们还是想到的AJAX,只不过这个AJAX是在服务器端执行。 大体思路是这样的:首先将URL用AJAX提交给自己站内的文件,例如getPage.asp---在getPage.asp再次通过服务器XMLHTTP来访问提交来的URL---将获取的内容返回给提交URL的页----显示内容…

C#函数ref和out参数的区别

相同点:都可以改变变量的值; 不同点:ref参数必须先赋值,out参数不必先赋值,在函数体中都当作未赋值; 其他:不能定义仅在 ref 和 out 上有差别的重载方法; Error:使用了未赋值的局部变量“a” Error:使用了未赋值的 out 参数“num” Error:“Test”不能定义仅在 ref 和 out 上有差别的重载方法

在配置文件中给某个ASP.NET页面单独设置编码

有时我们已经在配置文件中将整个站点的编码设置为gb2312,但某个页面却需要使用utf-8,这时我们可以在配置文件configuration节下新增location节点: 如果是要将某个页面单独设置为gb2312则为:

C#删除只读文件

当使用File.Delete来删除一个只读文件,或是使用File.Copy试图覆盖一个只读文件,或是Directory.Delete删除的文件夹中某个文件是只读时,都会收到类似的错误消息: 对路径“E:\001.txt”的访问被拒绝。 说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.UnauthorizedAccessException: 对路径“E:\001.txt”的访问被拒绝。 ASP.NET 未被授权访问所请求的资源。请考虑授予 ASP.NET 请求标识访问此资源的权限。ASP.NET 有一个在应用程序没有模拟时使用的基进程标识(通常,在 IIS 5 上为 {MACHINE}\ASPNET,在 IIS 6 上为网络服务)。如果应用程序正在通过 模拟,则标识将为匿名用户(通常为 IUSR_MACHINENAME)或经过身份验证的请求用户。…

C#调用函数时舍去函数的返回值

C#的函数可分成两种:有返回值和无返回值,平时我们习惯了下边的调用方式: 但有的时候我们需要调用有返回值的函数,但又不关心其返回值,也就是不需要其返回值该怎么办?例如删除数据库中的新闻,我们已经有一个函数: 在页面中直接删除新闻时通过返回值我们可以知道删除成功与否,但在删除分类的同时删除新闻时我们并不关心是否有新闻被删除,也就是不关心其返回值,这时该怎么办?需要额外的声明一个变量来接收其返回值?还是额外的创建一个功能一样但没返回值的函数?都不用,直接像调用无返回值函数那样调用有返回值函数就可以了: 想想SqlCommand对象的ExecuteNonQuery方法,他是有一个返回值的,表示受影响行数,但很多时候我们都是直接调用cmd.ExecuteNonQuery(),舍弃了返回值,只是没去注意罢了

树状显示Web系统中的分类

在Web系统中经常会碰到分类:新闻分类、产品分类,在更新分类、添加新闻/产品时避免不了要树状来显示分类: 经典的数据库表结构设计如下图: 通常是写一个函数使用递归将其显示到界面上,但应对众多的显示方式似乎有些力不从心。翻看Dvbbs.DotNet 1.0.5源码得到了一些思路,新建一个字段OrderId,它表示菜单显示的位置: 显示的时候就非常方便了,只需OrderId按升序排列即可: Select ,ClassName,ParentId,OrderId,Depth From NewsClass order By orderId 结果集: 下边是更新OrderId的代码: 树状菜单显示的时候通常是需要按级数缩进的,权使用上边几个字段很难控制缩进,所以我们得再引入一个字段Depth,表示菜单的级数:…

C#错误处理类型总结

通过分析,我将错误处理类型分为三种:立即终止型、集中处理型和立即处理型,下边分别用三个例子来做解释: 1.立即终止型:一有错立即终止程序运行并报错。 2.集中处理型:遇到错误并不立即进行处理,由内向外传递,在最外边集中进行处理。 3.立即处理型:遇到错误立即处理。 或是: 实践过程中发现几个问题,总结一下: ·无参数的 throw 语句不允许在 catch 子句之外使用; ·控制不能离开 finally 子句主体,即不允许在 finally 子句中出现 return 语句,即使它是在最后一句也不行;

cs页中引用的命名空间无法在aspx页中使用的一点解释

在我新建的类库中有个MzwuCom.Common命名空间,其下有个Input类,代码为: 然后我在站点中添加了对这个类库项目的引用,并在Default.aspx.cs中使用Input.CutStr: 运行正常,一切看起来挺正常的,下边我们试试看在aspx页中使用Input.CutStr: 运行出错:当前上下文中不存在名称“Input”!Why?问题暂且放在一边,我们做个让人惊奇的小实验: 运行结果: 当前页面类型:ASP.default_aspx 父类型:_Default My God!这说明在运行的时候aspx页被动态生成为_Default类的一个子类ASP.default_aspx!OK,那这就不难解释为什么在aspx页中不能使用Input.CutStr了,如果一定非要使用的话可改成如下形式:…