C# 数据上传(自用笔记)
#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"> </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# 数据上传(自用笔记)的更多相关文章
- C#工业物联网和集成系统解决方案的技术路线(数据源、数据采集、数据上传与接收、ActiveMQ、Mongodb、WebApi、手机App)
目 录 工业物联网和集成系统解决方案的技术路线... 1 前言... 1 第一章 系统架构... 3 1.1 硬件构架图... 3 1.2 ...
- PDA手持扫描资产标签,盘点完成后将数据上传到PC端,固定资产系统查看盘点结果
固定资产管理系统介绍: 致力于研发条码技术.集成条码系统的专业性公司,针对客户的不同需求,提供一站式的企业条码系统解决方案:包括功能强大的软件系统.安全可靠的无线网络.坚固耐用的硬件系统.灵活易用的管 ...
- 如何优化 FineUI 控件库的性能,减少 80% 的数据上传量!
在开始正文之前,请帮忙为当前排名前 10 唯一的 .Net 开源软件 FineUI 投一票: 投票地址: https://code.csdn.net/2013OSSurvey/gitop/codevo ...
- Octopus系列之数据上传格式要求说明
各个数据列要求 价格列:字符串类型[美元价格] 产品名字:可以支持"/"等字符 分类名字:去空格处理 不得包含"&"符号 主图:一定要有主图列 不为空 ...
- 重新想象 Windows 8.1 Store Apps (89) - 通信的新特性: 下载数据, 上传数据, 上传文件
[源码下载] 重新想象 Windows 8.1 Store Apps (89) - 通信的新特性: 下载数据, 上传数据, 上传文件 作者:webabcd 介绍重新想象 Windows 8.1 Sto ...
- C#数据上传方法
/// <summary> /// 连接成功后开始调用数据上传程序 /// </summary> public void CallDataUpload() { //指定上传日期 ...
- 【AllJoyn专题】基于AllJoyn和Yeelink的传感器数据上传与指令下行的研究
接触高通物联网框架AllJoyn不太久,但确是被深深地吸引了.在我看来,促进我深入学习的原因有三点:一.AllJoyn开源,对开源的软硬件总会有种莫名的喜爱,虽然或许不会都深入下去:二.顺应潮流,物联 ...
- Arduino UNO +ESP8266采集数据上传到贝壳网
集成电路设计大赛赛程将至,我现在还是毫无头绪,然后又报了一个互联网+,比赛报了,东西就必须出来,时间很紧的情况下,所以选择了开源的arduino的进行完成.从开始接触Arduino到完成工程,前前后后 ...
- OneNET麒麟座应用开发之四:数据上传测试
已经测试过OneNET麒麟座开发板了,这次来尝试与OneNET的连接和数据上传.这也是我们测试这块开发办的主要原因,因为在十几种我们有这种将分散的采集点数据上传到后台的需求. 先看看麒麟座这块开发板, ...
随机推荐
- Python -- Gui编程 -- Qt库的使用 -- 布局与基本控件
1.垂直布局,水平布局和网格布局 import sys from PyQt4 import QtCore, QtGui class MyWindow(QtGui.QWidget): def __ini ...
- centos中软件源码简单的编译安装./configure,make ,make install
参考 Linux下源码编译安装详解 源码编译安装分三个步骤 1. 编译参数配置 2. 编译 3. 安装 1. 源码编译安装环境检查以及编译参数配置 编译器在开始工作之前,需要知道当前的系统环境,比如标 ...
- Go RabbitMQ (一)
RabbitMQ 简介 RabbitMQ是一个消息代理,用来负责接收和转发消息. 术语 生产者:生产者是负责发送消息的 队列:队列是RabbitMQ用来存储消息的,受主机内存和磁盘大小的限制,本质上是 ...
- OOAD之面向对象设计原则
学习这个设计模式 真的觉得很抽象,只有自己多多的领会! 在很多时候,很多的知识都会觉得讲起来是很矛盾的. 本章目标 1 掌握内聚度和耦合度的概念 2 掌握面向对象设计原则 (一)如何衡量软件设计的质 ...
- Kafka消息重新发送
Kafka消息重新发送 1. 使用kafka消息队列做消息的发布.订阅,如果consumer端消费出问题,导致数据并没有消费,此时不需要担心,数据并不会立刻丢失,kafka会把数据在服务器的磁盘 ...
- Electron与WEB桌面应用程序开发及其它
这几天在构思项目,研究了一下Electron,记录下来. 说起WEB桌面程序,当前最火的就是Electron了. Electron的架构用一句话总结,就是一个main.js进程加上一个或数个chrom ...
- 源码速读及点睛:HashMap
Java 8 HashMap的分离链表 从Java 2到Java 1.7,HashMap在分离链表上的改变并不多,他们的算法基本上是相同的.如果我们假设对象的Hash值服从平均分布,那么获取一个对象需 ...
- 打造自己的LinQProvider(四)
打造自己的LinqProvider *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: ...
- (二)this、call和apply
在javascript中,this关键字总让一些初学者迷惑,Function.prototype.call, Function.prototype.apply这两个方法广泛的运用.我们有必要理解这几个 ...
- C# 学习笔记(二) 时间格式化字符串
1. 以下4种时间格式化符号输出的固定时间格式在各个区域设置中都应是相同的: 标准格式字符串 由 DateTimeFormatInfo.InvariantInfo 属性定义 自定义格式字符串 “O”或 ...