C# 我在DotnetCore中创建了一个API,我想在MVC5.2中使用它
在我的mvc项目中,我正在使用一个api来发布数据,但在发布数据时,我遇到了一个错误,因为api端的模型包含一个名为File的属性和一个接受图像的IFile类型,所以在使用时,我不知道如何使用该属性。下面是api的代码,请帮助我C# 我在DotnetCore中创建了一个API,我想在MVC5.2中使用它,c#,asp.net-web-api,asp.net-core,model-view-controller,httpclient,C#,Asp.net Web Api,Asp.net Core,Model View Controller,Httpclient,在我的mvc项目中,我正在使用一个api来发布数据,但在发布数据时,我遇到了一个错误,因为api端的模型包含一个名为File的属性和一个接受图像的IFile类型,所以在使用时,我不知道如何使用该属性。下面是api的代码,请帮助我 [HttpPost("addService/{Id}")] public async Task<IActionResult> AddServices([FromForm]AddServicesDto addserviceDto, int Id)
[HttpPost("addService/{Id}")]
public async Task<IActionResult> AddServices([FromForm]AddServicesDto addserviceDto, int Id)
{
var serviceTypeFromRepo = await _repos.GetServiceType(Id);
var file = addserviceDto.File;
var uploadResult = new ImageUploadResult();
if (file.Length > 0)
{
using (var stream = file.OpenReadStream())
{
var uploadParams = new ImageUploadParams()
{
File = new FileDescription(file.Name, stream),
Transformation = new Transformation()
.Width(500).Height(500).Crop("fill").Gravity("face")
};
uploadResult = _cloudinary.Upload(uploadParams);
}
}
addserviceDto.Url = uploadResult.Uri.ToString();
addserviceDto.PublicId = uploadResult.PublicId;
var serviceToCreate = _mapper.Map<Service>(addserviceDto);
serviceTypeFromRepo.Services.Add(serviceToCreate);
if (await _repos.SaveAll())
{
var serviceToReturn = _mapper.Map<ServiceToReturnDto>(serviceToCreate);
return Ok(new { serviceToReturn });
}
return BadRequest("Could Not add Service");
}
请帮助我使用这种特殊的方法,我如何使用MVC实现这一点
仅供参考使用邮递员我能够成功,但我不知道如何通过mvc发送图像请帮助我查看此答案查看此答案
public class AddServicesDto
{
public string ServiceName { get; set; }
public string ServiceDescription { get; set; }
public string ServiceTitle { get; set; }
public string Url { get; set; }
public IFormFile File { get; set; }
public string PublicId { get; set; }
}