action 代码:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create( ImageStoreModels imagestoremodels)
{
if (ModelState.IsValid)
{
if (Request.Files["ImageData"].ContentLength <= ) return View(); imagestoremodels.ID = Guid.NewGuid(); HttpPostedFileBase aFile = Request.Files["ImageData"];
int contentLength = aFile.ContentLength;
byte[] bytePic = new byte[contentLength];
aFile.InputStream.Read(bytePic, , contentLength);
imagestoremodels.ImageData = bytePic;
imagestoremodels.ImageName = aFile.FileName;
//imagestoremodels.ImageCataloge = e_ImageCataloge.;
//imagestoremodels.ImageAlt = "";
imagestoremodels.ContentType = aFile.ContentType; db.ImageStoreModels.Add(imagestoremodels);
db.SaveChanges();
return RedirectToAction("Index");
} return View(imagestoremodels); }
action 上传代码
view 代码
@using (Html.BeginForm("Create", "ImageStore", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
@Html.AntiForgeryToken() <div class="form-horizontal">
<h4>ImageStoreModels</h4>
<hr />
@Html.ValidationSummary(true) <div class="form-group">
@Html.LabelFor(model => model.ImageCataloge, new { @class = "control-label col-md-2" })
<div class="col-md-10"> @Html.DropDownListForEnum(model => model.ImageCataloge)
@Html.ValidationMessageFor(model => model.ImageCataloge)
</div>
</div> <div class="form-group">
@Html.LabelFor(model => model.ImageData, new { @class = "control-label col-md-2" })
<div class="col-md-10">
@*@Html.TextBoxFor(model => model.ImageData, new { type = "file", style="none"})*@ <input name="ImageData" type="file" />
@Html.ValidationMessageFor(model => model.ImageData) <input name="ImageData" id="ImageData" type="file" />
</div>
</div> <div class="form-group">
@Html.LabelFor(model => model.ImageAlt, new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.ImageAlt)
@Html.ValidationMessageFor(model => model.ImageAlt)
</div>
</div> <div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Create" class="btn btn-default" />
</div>
</div>
</div>
}
View 代码
提交图片, 上传的时候,总是报: 输入的不是有效的 Base-64 字符串 的错误。
后来,在网上才找到答案:
http://*.com/questions/3294023/input-file-autobind-to-byte-aray-in-asp-net-mvc
vs2013 上传碰到的问题:“输入的不是有效的 Base-64 字符串 ”的更多相关文章
-
THINKPHP源码学习--------文件上传类
TP图片上传类的理解 在做自己项目上传图片的时候一直都有用到TP的上传图片类,所以要进入源码探索一下. 文件目录:./THinkPHP/Library/Think/Upload.class.php n ...
-
亚马逊S3下载上传文件
引用网址: http://www.jxtobo.com/27697.html 下载 CloudBerry Explorer http://www.cloudberrylab.com/download- ...
-
分离与继承的思想实现图片上传后的预览功能:ImageUploadView
本文要介绍的是网页中常见的图片上传后直接在页面生成小图预览的实现思路,考虑到该功能有一定的适用性,于是把相关的逻辑封装成了一个ImageUploadView组件,实际使用效果可查看下一段的git效果图 ...
-
利用SecureCRT上传、下载文件(使用sz与rz命令),超实用!
利用SecureCRT上传.下载文件(使用sz与rz命令),超实用! 文章来源:http://blog.csdn.net/dongqinliuzi/article/details/39623169 借 ...
-
Yii2.0 多文件上传
--------------------------------------------------------------------------------------------------- ...
-
Shell上传文件到ftp
写一个shell文件,将给定的文件上传到指定的ftp. 代码如下: #!/bin/bash #用来将文件上传到ftp,输入参数:文件名(包括路径).ftp的IP.ftp的端口.用户名.密码 ip=$ ...
-
【iOS】文件上传小记
iOS由该系统提供API可以实现可以实现文件的上传和下载,有两种方法来. NSURLConnection与NSURLSession. 当中NSURLConnection是使用非常久的的一种方式.NSU ...
-
CentOS7中利用Xshell6向虚拟机本地上传文件
环境交代 Linux系统:CentOS7, Xshell版本:6 操作步骤 下面我们以一个文件上传来演示用法 第一步 建立连接,这里不多说 在Xshell中点击如下图标,或者直接按 Alt+Ctrl+ ...
-
(转)Spring文件上传,包括一次选中多个文件
背景: http://www.cnblogs.com/lixuwu/p/8495275.html已经实现了单文件的上传和下载,多文件的上传是另一种情景,这里记录下来 实现过程 先说前台. 运行以后就是 ...
随机推荐
-
从netty-example分析Netty组件续
上文我们从netty-example的Discard服务器端示例分析了netty的组件,今天我们从另一个简单的示例Echo客户端分析一下上个示例中没有出现的netty组件. 1. 服务端的连接处理,读 ...
-
检查Chunksum与Chunk Data之间的缓冲区发送到DataNode节点
我们会看到左边"iOS Apps"下面有四个选项:"Certificates"."Identifiers"."Devices&qu ...
-
打造自己的视频会议系统 GGMeeting(附送源码)
自从在博客园发布广域网即时通信系统GG(QQ高仿版)以来,结识了很多做IM的朋友,然后我和我的伙伴们也接到了很多与IM相关的项目.相比在发布GG之前难以接到项目的状况相比,现在简直太幸福了,虽然做项目 ...
-
linux 内核参数图解
https://www.suse.com/documentation/sles11/book_sle_tuning/data/part_tuning_kernel.html http://blog.c ...
-
C语言_指针和数组的几种访问形式
敲几行代码来看看几种访问的形式~ #include <stdio.h>;int main() { ] = {, , , , , }; //初始化5个元素的一维数组 int *p = arr ...
-
wpf Assembly.LoadFile dll GetType 反射 抛异常 不具有由 URI 识别的资源。
public static void LoadViewFromUri(this Window window, string baseUri) { try { var resourceLocater = ...
-
【题解】Luogu P1648 看守
原题传送门:P1648 看守 这题目让求得的是d维( d <=4 )空间中n个点( 2 <= N <= 1000000 )之间最大的哈曼顿距离 模拟,emm,能拿30分,不错 因为d ...
-
hdu 2586 How far away ? 带权lca
How far away ? Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) P ...
-
BZOJ3297: [USACO2011 Open]forgot(背包)
3297: [USACO2011 Open]forgot Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 189 Solved: 126[Submit ...
-
MFC中的一般经验之谈2
MFC一般类成员m_iAge,命名原则,且MFC中类定义以C开头原则,这些原则便于理解以及增强代码的可读性.MFC是一个用窗口作为用户交互的方式,一般框架类.视图类.以及窗口上的控件都是继承CWnd类 ...