我正在尝试上传图像(我正在使用IFormFileCollection
),但是还需要在同一POST请求中获取其他数据(简单的int值)。
我的控制器如下:
public async Task<ActionResult<List<Guid>>> Create(IFormFileCollection uploads, int id) { }
我用来测试它的cshtml看起来像这样:
<form asp-action="Create" asp-controller="ProjectMedia" method="post" enctype="multipart/form-data">
<input type="file" name="uploads" /><br>
<input type="file" name="uploads" /><br>
<input type="number" name="id" /><br>
<input type="submit" value="Upload" />
</form>
接收要上传的文件没有任何问题,但是除了文件我什么也没收到。 id始终默认为0。
我也尝试使用asp-route
进行设置,但在控制器上获得了相同的0。
是否有机会在一个请求中发送IFormFileCollection
和int?如果是这样,我该怎么办?
答案 0 :(得分:1)
使用[FromForm]
属性来明确告知模型联编程序在何处获取操作数据
public async Task<ActionResult<List<Guid>>> Create([FromForm]IFormFileCollection uploads, [FromForm]int id) {
}