问题标签 [asp.net-mvc-file-upload]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
38201 浏览

image - 如何将 HttpPostedFileBase 转换为图像?

我正在使用 ASP.NET MVC,并且我有一个上传文件的操作。文件正在正确上传。但我想要图像的宽度和高度。我想我需要先将其转换HttpPostedFileBaseImage然后继续。我怎么做?

如果有另一种更好的方法来获取图像的宽度和高度,请告诉我。

0 投票
1 回答
1671 浏览

c# - 文件是空的,我不明白为什么。Asp.net mvc 文件结果

我正在尝试使用内置的 asp.net 文件结果来返回我试图通过文件流制作的文件。我正在使用 Dday.ical 制作我的日历以供导出

这是我的 actionResult

当我下载文件时,它是 0bytes。

0 投票
1 回答
131 浏览

asp.net - 如何关联由单独表单生成的实体......同时无法访问其中的代码

好的,所以我正在尝试在我的网站中实现典型的图像上传功能。(我从没想过它会这么复杂!!!)我终于找到了一个使用jQuery-File-Upload插件的 AWESOME nuget 包( MvcFileUploader )。它工作得很棒,但我在弄清楚如何将它与我的实体相关联时遇到了一些麻烦。

上传文件时如何创建 Image 实体非常明显。但是,我有许多不同类型的实体,我想在图片上传后与它们相关联(例如新闻文章、博客文章、分类广告等)。

我目前设置它的方式是,我在页面右侧有一个文件上传器,在左侧有一个用于新闻发布的表单。文件上传器完成它的工作并上传文件,在此过程中创建图像实体。当我想将这些新的图像实体与我的新闻实体相关联时,就会出现问题。(请记住,在创建 Image 实体时,尚未创建任何新闻实体。)

想到的第一个解决方案是使用 AJAX 将隐藏字段粘贴到新闻项目表单中以表示新的图像实体 ID。然而,不幸的是,我似乎无法找到任何好的方法来完成这项工作,因为我无法轻松且易于理解地访问 MvcFileUploader 代码来尝试让它做这样的事情......而且它的工作原理如此好吧,现在我害怕把它搞砸。:) (这是一个缩小的 .js 文件。)(如果有人知道我可以如何轻松干净地做到这一点,而不会搞砸文件上传器插件,我很想听听。)

所以,我的下一个想法是我可以创建另一种类型的实体,其唯一目的是将图像和新闻项目连接在一起。我要做的是在输出表单时创建新实体(称为 XYZ)并在新闻项目表单和图像上传表单中放置一个隐藏字段(因为 mvcfileuploader 提供了将隐藏字段输出到表单中的功能与文件上传请求一起上传)。这些隐藏字段都将包含此特定新闻文章的 XYZ 实体的 ID。当我创建图像实体时,我会将其 ID 放在 XYZ 实体中,以等待新闻项目在创建时检索。我认为这可能有效,但感觉非常混乱。我不喜欢为了这个目的而拥有另一个实体的想法,在创建新闻项目之后(或者用户只是离开新闻项目创建页面),我的数据库中仍然会有这些实体。我必须定期清理它们或其他东西。

我还考虑过在输出创建页面时简单地制作新闻项目并将新闻项目 ID 输出到两种表单中......但是我将不得不放弃对新闻项目字段的任何类型的必填字段和其他限制,我会如果用户在完成之前离开页面,则有空的新闻项目。也很乱。

请有人帮忙:)。

0 投票
1 回答
5290 浏览

html - 上传多个文件 - MVC..是否有总文件大小限制?

我有一个表单,用户可以从中添加属性列表。除了用户必须输入的数据外,用户还可以上传许多图像。我正在使用 HTML5 多重属性来允许用户一次上传多个文件。

出于某种原因,当我上传一张图片时,我总是会触发 HttpPost Add 方法。但是,当我尝试上传多张图片时,该方法不会触发。到目前为止,我没有收到任何错误,所以我不确定我的实现有什么问题。

HTML

控制器

任何帮助,将不胜感激。

编辑 - 进一步测试

为了测试文件上传,我创建了一个新视图,其中只有一个包含文件上传器的表单。我试过上传不同的文件类型。我注意到的是,当上传例如 10 个文档时,Upload 方法被触发。但是当尝试上传 3 个(大)图像时,它没有触发。我认为上传的字节总数存在某种限制……但我不确定这是否有意义。

简单测试

我也尝试过分别上传多个文件。当我尝试上传 3 张大图片(每张图片大约 2 MB)时,该方法没有触发。我几乎可以肯定这是与某种总最大文件大小有关的问题。

0 投票
1 回答
12457 浏览

json - 如何将 HttpPostedFileBase 对象序列化为 json

我在名为“Upload”的控制器中有一个带有参数HttpPostedFileBase对象的方法,我从视图中发布了文件并将其成功保存到文件夹中。但是当我尝试返回具有以下内容的 JSON 字符串对象时,它会引发异常并显示消息:

“从‘System.Web.HttpInputStream’上的‘ReadTimeout’获取值时出错。”

如果我删除了'files = files'行,它会正确返回。但我需要这些数据

0 投票
1 回答
236 浏览

asp.net-mvc - 每个系统的 IIS 7.5 最大并发请求数

我在 Windows Server 2008 R2 SP1 上托管了一个 ASP.NET MVC5 Web 应用程序。在这个网站有一个上传文件部分,用户可以上传最大大小为 1 GB 的大文件。当他们单击上传按钮时,将打开另一个弹出窗口,以允许用户在文件上传期间执行其他操作。我使用MvcFileUploader进行上传。问题是在上传过程进行时,他们无法从该站点打开其他页面。我在上传文件时测试了这些项目:

  1. 用户可以打开其他网站(结果是上传者没有使用整个可用的网络流量)
  2. 当用户上传时,其他系统的其他用户可以轻松打开我们的网站(结果是 IIS 服务器正在工作并且没有响应)

所以我得出了这个结论,即某个地方应该限制每个 IP/系统的最大并发连接。我对吗?你有什么建议吗?我已经用这些改变了 MvcFileUploader 默认配置:

0 投票
1 回答
1394 浏览

jquery-file-upload - 使用javascript函数在mvc5中读取Excel文件

Excel 工作表要在 MVC5 中单击按钮上传时读取。上传的 excel 文件名使用 AJAX 方法传递给操作。这里文件变量在发布方法中获取空值。在这里,如何在下面的 ajax 方法中将选定的文件作为 HttpPostedFileBase 传递。`