ASP.NET的FileUpload控件可用于上传文件到服务器。HoverTreeTop新增了一个“阅图”功能,图片就是用FileUpload上传的。阅图功能查看:http://hovertree.com/top/htimg/

这里要说明的是上传图片限定文件名和文件大小等代码。

文件上传功能使用用户控件实现,在HoverTreePanel项目中的HTPanel\HControl\UCPictureAdd.ascx 控件,
HoverTreeTop上传的图片文件暂时限定为jpg、png和gif。代码为:

  1. <asp:FileUpload runat="server" ID="fileUpload_hovertree" ClientIDMode="Static" accept="image/png,image/jpeg,image/gif" />

c#代码:

  1. HtPictureInfo h_info = new HtPictureInfo();
  2. h_info.HtSuffix = HoverTreeImageTool.GetGpjImageFileExtension(fileUpload_hovertree.PostedFile.ContentType);
  3. if (h_info.HtSuffix == "")
  4. {
  5. literal_tips.Text = "请选择jpg,png或者gif图片文件";
  6. return;
  7. }

其中GetGpjImageFileExtension方法在HoverTreeFrame项目中,代码:

  1. namespace HoverTree.HoverTreeFrame.HtImage
  2. {
  3. public class HoverTreeImageTool
  4. {
  5. /// <summary>
  6. /// 根据图片文件的mime内容类型获取文件的后缀名,如果不是gif,png或者jpg图片文件则返回空字符串
  7. /// http://hovertree.com/h/bjag/viv8qlpx.htm
  8. /// http://hovertree.com/texiao/h/contenttype/
  9. /// </summary>
  10. /// <param name="contentType"></param>
  11. /// <returns></returns>
  12. public static string GetGpjImageFileExtension(string contentType)
  13. {
  14. switch (contentType)
  15. {
  16. case "image/jpeg":
  17. return "jpg";
  18. case "image/pjpeg":
  19. return "jpg";
  20. case "image/gif":
  21. return "gif";
  22. case "image/png":
  23. return "png";
  24. case "image/x-png":
  25. return "png";
  26. default:
  27. return string.Empty;
  28. }
  29. }
  30. }
  31. }

也就是使用ContentType获取并验证后缀名。参考:http://hovertree.com/texiao/h/contenttype/

还有一个就是限定上传文件的大小,暂时限定为1M,代码如下:

  1. if (fileUpload_hovertree.PostedFile.ContentLength > )
  2. {
  3. literal_tips.Text = "选择的文件太大。";
  4. return;
  5. }

1048576字节也就是1M。
上传使用SaveAs方法就可以:
fileUpload_hovertree.SaveAs(h_fullName);
其中h_fullName为完整文件名字符串。

HoverTreeTop项目:
http://hovertree.com/top/
源码下载:
http://hovertree.com/h/bjaf/hv6cqe5n.htm

转自:

http://hovertree.com/h/bjag/o5rdqyrb.htm

推荐:

http://www.cnblogs.com/sosoft/p/kaifajishu.html

asp.net上传图片到服务器的更多相关文章

  1. Asp.Net 上传图片并生成高清晰缩略图

    在asp.net中,上传图片功能或者是常用的,生成缩略图也是常用的.baidu或者google,c#的方法也是很多的,但是一用却发现缩略图不清晰啊,缩略图片太大之类的事情,下面是我在处理图片上的代码, ...

  2. Asp.Net 上传图片并生成高清晰缩略图(转)

    在asp.net中,上传图片功能或者是常用的,生成缩略图也是常用的.baidu或者google,c#的方法也是很多的,但是一用却发现缩略图不清晰啊,缩略图片太大之类的事情,下面是我在处理图片上的代码, ...

  3. Ubuntu下利用Mono,Jexus搭建Asp.Net(MVC) Web服务器

    最近在Ubuntu上搭建了Asp.Net的Web服务器,其中遇到很多问题,整理一下思路,以备后用. 搭建环境以及配套软件 Ubuntu: 11.10 Mono:3.0.6 下载地址(http://do ...

  4. ASP.NET Core WebListener 服务器

    原文地址:WebListener server for ASP.NET Core By Tom Dykstra, Chris Ross WebListener是一个只能运行在Windows上的ASP. ...

  5. 通过android 客户端上传图片到服务器

    昨天,(在我的上一篇博客中)写了通过浏览器上传图片到服务器(php),今天将这个功能付诸实践.(还完善了服务端的代码) 不试不知道,原来通过android 向服务端发送图片还真是挺麻烦的一件事. 上传 ...

  6. Wcf for wp8 上传图片到服务器,将图片名字插入数据库字段(五)

    环境:.NET Framework 3.5 服务: IIS EXpress托管 WCF服务程序 配置:Web.config <!--<connectionStrings> <a ...

  7. ASP + ACCESS 上传图片到数据库与将图片读出数据库显示之实现

    1.uppic.asp:上传图片程序 <% dim rs dim formsize,formdata,bncrlf,divider,datastart,dataend,mydata formsi ...

  8. 使用asp.net上传图片并且裁剪的方法

    工欲善其事,必先利其器,坚持才能更好 这篇文章主要是强调怎么使用asp.net上传图片并且能够裁剪,这个功能主要使用在注册信息的时候需要上传头像并且图片格式很大的时候能够把图片裁剪成更小的图片.下面来 ...

  9. ASP.NET Core Web服务器 Kestrel和Http.sys 特性详解

    ASP.NET Core Web服务器 Kestrel和Http.sys 特性详解 1.1. 名词解释 1.2. Kestrel基本工作原理 1.2.1. Kestrel的基本架构 1.2.2. Ke ...

随机推荐

  1. golang 统计uint64 数字二进制存储中1的数量

    package main import (    "fmt") // pc[i] is the population count of i.var pc [256]byte fun ...

  2. JAVA发送HttpClient请求及接收请求结果

    1.写一个HttpRequestUtils工具类,包括post请求和get请求 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 2 ...

  3. GetBuffer 与ToArray区别,解决问题场景

    GetBuffer 是把 stream 中的 buffer 的引用传递出来, buffer 的大小是由 stream的 Capacity来决定的. 因为只是地址的引用传递,所以 GetBuffer() ...

  4. 关于Float.parseFloat()的一点探讨

    最近在解决线上的bug时,遇到一个问题. 第三方传过来的课程编码时4214410000,然而我们存进数据库的值却变成了4214409980.查遍了所有的代码都查不到有对这个值修改的代码.最后,通过打印 ...

  5. java高并发实战(一)——为什么需要并发

    转自:https://blog.csdn.net/gududedabai/article/details/80813592

  6. Linux 总线、设备、驱动模型 与 设备树

    1.总线.设备.驱动模型 本着高内聚.低耦合的原则,Linux 把设备驱动模型分为了总线.设备和驱动三个实体,这三个实体在内核里的职责分别如下: 设备和驱动向总线进行注册,总线负责把设备和对应的驱动绑 ...

  7. 40_redux_counter应用_redux完善版本

    项目结构: 代码: import React from 'react'; import ReactDOM from 'react-dom'; import store from './redux/st ...

  8. bootstrap之bootstrap-table插件使用心得以及实现过程

    1.首先一个页面(增删改查) 2.实现增删改查(一个框架) 3.编码问题(前端meta utf-8:引用中文包:contentType参数区utf-8的设置:响应的utf-8的编码设置) 4.多条件查 ...

  9. SSIS: 如何通过SSIS的Foreach Loop Container导入Excel的多个Sheet

    通常都有这样一个习惯就是按月存放我们的一些数据,一个月份一个work sheet,他们具有相同的行列组合,假设有下面这样一个Excel,每页结构如下,共有四页,每页为一个季度 那么我们需要做的是: 1 ...

  10. Navicat Premium 12注册机使用教程

    来看下软件具体的安装.激活图文教程: 1.首先下载后正常安装软件至结束: 这时候如果打开的话,是提示要注册的 2.以管理员身份运行注册机工具 Navicat_Keygen_Patch[vxia.net ...