#region 数据上传

[HttpPost]
public ActionResult UploadFile()
{
  HttpFileCollectionBase files = Request.Files;
  HttpPostedFileBase file = files["file"];
  string guid = Guid.NewGuid().ToString();
  string txt = string.Empty;
  string path = "";

  if (file != null && file.ContentLength > 0)
  {
    string fileName = file.FileName;
    //判断文件名字是否包含路径名,如果有则提取文件名
    if (fileName.LastIndexOf("\\") > -1)
    {
      fileName = fileName.Substring(fileName.LastIndexOf("\\") + 1);
    }
    bool b = false;
    string lastname = string.Empty;
    string fileNamelast= string.Empty;
    if (fileName.LastIndexOf('.') > -1)
    {
      string[] strName = fileName.Split('.');
      fileNamelast = strName[0];

      lastname = fileName.Substring(fileName.LastIndexOf('.')).ToLower();
      if (!(lastname == "jpeg" || lastname.ToLower() == "pdf" || lastname == "jpg" || lastname == "rar" || lastname == "zip" || lastname == "doc" || lastname == "docx" || lastname == "xls" || lastname == "xlsx" || lastname == "pdf" || lastname == "zip"))
      b = true;
    }
    if (b)
    {

      if (!System.IO.Directory.Exists(@"" + ConfigModel.uploadpath + ""))
      {
        System.IO.Directory.CreateDirectory(@"" + ConfigModel.uploadpath + "");//不存在就创建目录
      }

      path = ConfigModel.uploadpath + fileNamelast + guid + lastname;
      try
      {
        file.SaveAs(path);
      }
      catch (Exception e)
      {
        txt = "异常:" + e.Message;
      }
      }
      else
        txt = "文件格式有误";
     }
  else
    txt = "没有可用数据";

  if (string.IsNullOrEmpty(txt))
  return ToJson(1, path, "上传成功!");
  else
  return ToJson(-1, "操作异常", txt);
}
#endregion

//前台JS:

//上传:

,
HuploadifyDo: function () {
  /// <summary>
  /// 初始化上传
  /// </summary>
  var url = "";
$('#upload').Huploadify({

  fileSizeLimit: 5 * 1024,
  uploader: "/FinancialRecord/UploadFile",    //url
  onUploadComplete: function (data, txt) {
  layer.closeAll();
  //$("#infolbl").html("");
  //$("#hBath").val("");
  var r = eval('(' + txt + ')');
  if (r.result == 1) {
    FinancialRecordIndex.PATH = r.data;       //赋值
    $("#lblpath").text(FinancialRecordIndex.PATH);
  } else {
    LayerShowErr(r.desc);
  }
},
onUploadStart: function () {
  FinancialRecordIndex.WiteDo("上传中,请勿关闭!", 0);
  }
});
}

,
WiteDo: function (_a, _b) {
  /// <summary>
  /// 初始化等待
  /// </summary>
  /// <param name="_a" type="type"></param>
  /// <param name="_b" type="type"></param>
  if (_b == 0) {
    var htmltxt = '<div style="width:330px;height:160px;text-align:center"><div style="height:5px">&nbsp;</div><div class="panel-body"><div class="sk-folding-cube">';
    htmltxt += '<div class="sk-cube1 sk-cube"></div>';
    htmltxt += '<div class="sk-cube2 sk-cube"></div>';
    htmltxt += '<div class="sk-cube4 sk-cube"></div>';
    htmltxt += '<div class="sk-cube3 sk-cube"></div>';
    htmltxt += ' </div>';
    htmltxt += '</div><span id="witeInfo" style="font-size:12px;color:#1ab394">' + _a + '</span></div>';
    layer.open({
      type: 1,
      title: false,
      closeBtn: 0,
      shadeClose: false,
      content: htmltxt
      });
     } else {
      $("#witeInfo").html(_a);
      }
  }

视图页面引用:

<script src="~/Scripts/js/plugins/Huploadify/jquery.Huploadify.js"></script>
<link href="~/Scripts/js/plugins/Huploadify/Huploadify.css" rel="stylesheet" />

C# 数据上传(自用笔记)的更多相关文章

  1. C#工业物联网和集成系统解决方案的技术路线(数据源、数据采集、数据上传与接收、ActiveMQ、Mongodb、WebApi、手机App)

    目       录 工业物联网和集成系统解决方案的技术路线... 1 前言... 1 第一章           系统架构... 3 1.1           硬件构架图... 3 1.2      ...

  2. PDA手持扫描资产标签,盘点完成后将数据上传到PC端,固定资产系统查看盘点结果

    固定资产管理系统介绍: 致力于研发条码技术.集成条码系统的专业性公司,针对客户的不同需求,提供一站式的企业条码系统解决方案:包括功能强大的软件系统.安全可靠的无线网络.坚固耐用的硬件系统.灵活易用的管 ...

  3. 如何优化 FineUI 控件库的性能,减少 80% 的数据上传量!

    在开始正文之前,请帮忙为当前排名前 10 唯一的 .Net 开源软件 FineUI 投一票: 投票地址: https://code.csdn.net/2013OSSurvey/gitop/codevo ...

  4. Octopus系列之数据上传格式要求说明

    各个数据列要求 价格列:字符串类型[美元价格] 产品名字:可以支持"/"等字符 分类名字:去空格处理 不得包含"&"符号 主图:一定要有主图列 不为空 ...

  5. 重新想象 Windows 8.1 Store Apps (89) - 通信的新特性: 下载数据, 上传数据, 上传文件

    [源码下载] 重新想象 Windows 8.1 Store Apps (89) - 通信的新特性: 下载数据, 上传数据, 上传文件 作者:webabcd 介绍重新想象 Windows 8.1 Sto ...

  6. C#数据上传方法

    /// <summary> /// 连接成功后开始调用数据上传程序 /// </summary> public void CallDataUpload() { //指定上传日期 ...

  7. 【AllJoyn专题】基于AllJoyn和Yeelink的传感器数据上传与指令下行的研究

    接触高通物联网框架AllJoyn不太久,但确是被深深地吸引了.在我看来,促进我深入学习的原因有三点:一.AllJoyn开源,对开源的软硬件总会有种莫名的喜爱,虽然或许不会都深入下去:二.顺应潮流,物联 ...

  8. Arduino UNO +ESP8266采集数据上传到贝壳网

    集成电路设计大赛赛程将至,我现在还是毫无头绪,然后又报了一个互联网+,比赛报了,东西就必须出来,时间很紧的情况下,所以选择了开源的arduino的进行完成.从开始接触Arduino到完成工程,前前后后 ...

  9. OneNET麒麟座应用开发之四:数据上传测试

    已经测试过OneNET麒麟座开发板了,这次来尝试与OneNET的连接和数据上传.这也是我们测试这块开发办的主要原因,因为在十几种我们有这种将分散的采集点数据上传到后台的需求. 先看看麒麟座这块开发板, ...

随机推荐

  1. 《垃圾回收的算法与实现》——保守式GC

    保守式GC 保守式GC指"不能识别指针和非指针的GC". 不明确的根,寄存器.调用栈.全局变量空间等属于GC root,这些GC均不能识别出是指针还是非指针. 指针的识别,在不明确 ...

  2. Linux笔记:vi常用命令

    vi编辑器是所有Unix及Linux系统下标准的编辑器,在很多时候我们都需要使用vi修改服务端配置,vi其实非常强大,只要命令使用熟练的情况下,编辑速度并不亚于现在的图形化编辑器,这里简单地介绍一下它 ...

  3. Linux的MySQL不能远程访问

    1.首先,你要确认用户是否只允许localhost访问: 在linux下登录mysql mysql -uroot -p密码;     use mysql;     select `host`,`use ...

  4. vue 监听对象里的特定数据

    vue  监听对象里的特定数据变化 通常是这样写的,只能监听某一个特定数据 watch: { params: function(val) { console.log(val) this.$ajax.g ...

  5. linux 查找删除找定文件

    find . -name "*.lastUpdated" -exec rm -rf {} \; 这个命令是find的基本用法,可以分两部分,find ~/ -name " ...

  6. 【LeetCode题解】237_删除链表中的节点

    目录 237_删除链表中的节点 描述 解法 思路 Java 实现 Python 实现 237_删除链表中的节点 描述 请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除 ...

  7. Ubuntu18---VMware虚拟机中Ubuntu18.04系统,开机输入密码后无响应黑屏

    系统崩坏了,重装过几次,这次决定不充装了. 搜索大神解决方案后,了解到是图形界面程序损坏,可能是在更新内核或者安装软件的时候,把与xorg相关的文件给清除了. 解决方案如下: 1.登录系统进入,黑屏后 ...

  8. 云存储(Swift+Keystone)部署策略

    Swift是OpenStack的对象存储模块,Keystone是OpenStack的权限验证模块.可以于这两个模块搭建一个较为完善的云存储系统. 1.官方方案 云存储的服务器分三种类型: 验证节点 A ...

  9. python分布式爬虫打造搜索引擎--------scrapy实现

    最近在网上学习一门关于scrapy爬虫的课程,觉得还不错,以下是目录还在更新中,我觉得有必要好好的做下笔记,研究研究. 第1章 课程介绍 1-1 python分布式爬虫打造搜索引擎简介 07:23 第 ...

  10. [日常] crontab的秒执行和串行化和多进程实现

    1. crontab的最低运行频率是,按照每分钟执行一次,通过在脚本中简单实现按秒级别运行 比如这条cron规则 , 每分钟执行一次脚本 * * * * * php /var/www/html/tes ...