asp.net-mvc – 无法通过kendo上传从一个视图到另一个视图的附件
发布时间:2020-05-25 09:13:33 所属栏目:asp.Net 来源:互联网
导读:我们正在研究Kendo MVC UI,我们将数据从一个视图发送到另一个视图,所有数据(测试框,下拉列表)都被传递到除附件(pdf,xlsx)之外的下一个视图. 下面是我们编写的控制器中从代码中捕获并保存数据并将相同数据传递到另一个视图并将数据绑定到kendo控件的代码(也是
|
我们正在研究Kendo MVC UI,我们将数据从一个视图发送到另一个视图,所有数据(测试框,下拉列表)都被传递到除附件(pdf,xlsx)之外的下一个视图. 下面是我们编写的控制器中从代码中捕获并保存数据并将相同数据传递到另一个视图并将数据绑定到kendo控件的代码(也是上传控件) public ActionResult SaveData(System.Web.Mvc.FormCollection form,IEnumerable<HttpPostedFileBase> files) // insert operation
{
//*************************//
if (form != null)
{
string ddluserexceptioncategory = Convert.ToString(form["txtexceptioncategory"],CultureInfo.InvariantCulture);
if (!string.IsNullOrEmpty(ddluserexceptioncategory))
{
ddluserexceptioncategory = ddluserexceptioncategory.Trim();
}
if (ddluserexceptioncategory == "User Management")
{
//Bind the data to the class object(_clsObj)
if (files != null)
{
TempData["FileName"] = files;
_clsObj.Files = files;
}
TempData["SecondViewData"] = _clsObj;
return RedirectToAction("ExceptionType","Home",new { id = 0,regionId = _clsObj.RegionId,status1 = "New,In Progress",keyword1 = string.Empty });
}
}
string regions = "",statusValue = "";
if (form != null)
{
regions = form["hiddenregionselected"] + "";
statusValue = form["hiddenstatusselected"] + "";
}
return RedirectToAction("homepage",new { region = regions,status = statusValue });
}
下面是我们将请求绑定到第二个的代码 @if (TempData["FileName"] != null)
{
IEnumerable<HttpPostedFileBase> firstFile = (IEnumerable<HttpPostedFileBase>)TempData["FileName"];
<div class="k-dropzone">
<div class="k-button k-upload-button">
<input name="files" type="file" data-role="upload" multiple="multiple" autocomplete="off" tabindex="-1" class="valid" style="display: none;">
<input id="files" name="files" type="file" data-role="upload" multiple="multiple" autocomplete="off">
<ul id="files1" class="k-upload-files k-reset">
@foreach (var file in firstFile)
{
string filename= Path.GetFileName(file.FileName);
<li class="k-file" data-uid="7aa03676-4dac-468e-b34a-99ac44d23040">
<span class="k-icon k-success">uploaded</span>
<span class="k-filename" title="@filename">@filename</span>
<strong class="k-upload-status">
<span class="k-icon k-delete"></span>
</strong>
</li>
}
</ul>
</div>
</div>
<script>
jQuery(function()
{jQuery("#files").kendoUpload(
{"select":uploadselect,"localization":{"select":"Browse file","headerStatusUploading":"uploading..","headerStatusUploaded":"uploded.."},"async":{"saveUrl":"/Home/Save","autoUpload":false,"removeUrl":
"/Home/Remove"}});});
</script>
}
else
{
@(Html.Kendo().Upload().Name("files").Async(a => a.Save("Save","Home").Remove("Remove","Home").AutoUpload(false)).Multiple(true).Messages(m =>
{
m.Select("Browse file");
}).Events(events => events.Select("uploadselect")))
}
任何建议或帮助非常感谢. 解决方法我的猜测是问题来自于使用TempData将这些数据从标记中提取到控制器,反之亦然.您可能知道,在下一个请求完成后,您放入TempData的任何内容都将被丢弃(Using Tempdata in ASP.NET MVC – Best practice,http://www.codeproject.com/Articles/476967/What-is-ViewData-ViewBag-and-TempData-MVC-Option). 我建议尝试使用ViewBag来证明这个理论.如果证明你可能会考虑将这些数据作为复杂对象的一部分传递,而不是使用MVC的数据字典. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- IIS 7中为ASP.NET缺少MIME类型404.17
- asp.net – .NET Ionic.Zip模块查杀驱动器空间
- asp.net-mvc – ASP.NET MVC的一个路由,两个不同的视图
- ASP.net检查页面是http还是https
- asp.net-core – asp.net核心依赖注入问题 – AddScoped没有
- 使用asp.net控件创建无序列表?
- asp.net – 我应该继续研究MVC 1.0上的项目还是停止学习MVC
- asp.net – 如何将所有httpErrors重定向到自定义URL?
- 手动转换ASCII和.NET字符
- asp.net-mvc-2 – 在选择聚合时,如何处理Linq到NHibernate的
推荐文章
站长推荐
- asp.net-mvc – MVC调用Html.Action在区域内?
- asp.net – HttpServerUtility.UrlPathEncode vs
- asp.net-mvc – ASP.NET MVC:通过所有ActionLin
- asp.net-mvc – 输出在剃刀通过变量?
- asp.net-mvc – ASP.NET MVC – 表单和模型绑定器
- asp.net-mvc – 使用Ninject注册到自定义成员资格
- asp.net-mvc-5 – 在@Html.AntiForgery发送HTTP标
- asp.net-web-api – 在Visual Studio中启动WebAP
- asp.net – 如何使用System.Drawing绘制透明图像
- asp.net – Internet Explorer 11在服务器端的检
热点阅读
