我在网页上使用jQuery Uploadify插件将文件从本地计算机传输到ASP.NET MVC2控件操作方法。有没有办法将文件的创建日期/时间传输到服务器?
我可以在客户端上的Uploadify事件中获取数据,但无法弄清楚如何“打包”该数据,以便将其移动到带有文件的服务器。
任何想法都赞赏。
答案 0 :(得分:2)
尝试使用onSelect事件向scriptData对象添加值。
更新:以下是将数据传递给操作的临时视图。看来modificationDate
在它的time
字段中返回一个Unix时间戳,你必须在服务器端转换它。我无法在modificationDate
属性上找到任何文档。
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Home</title><link href="/Scripts/uploadify.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="/Scripts/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="/Scripts/swfobject.js"></script>
<script type="text/javascript" src="/Scripts/jquery.uploadify.v2.1.4.min.js"></script>
<script type="text/javascript">
var myScriptData = {};
$(document).ready(function () {
$('#file_upload').uploadify({
'uploader': '/Scripts/uploadify.swf',
'script': '/Test/Upload',
'cancelImg': '/Scripts/cancel.png',
'folder': '/App_Data',
'auto': true,
'onSelect': function (event, ID, fileObj) {
$('#file_upload').uploadifySettings('scriptData', {
modifiedTimestamp: fileObj.modificationDate.time
});
return true;
}
});
$('#file_upload').uploadifySettings('scriptData', myScriptData);
});
</script>
</head>
<body>
<input id="file_upload" name="file_upload" type="file" />
</body>
</html>
在您的操作方法中,您可以通过Request.Form["modifiedTimestamp"]
获取时间戳。检查here有关如何将时间戳转换为DateTime对象的信息。