Asp.net web api WebApi C中上载函数的JSON输入#
我的WebApi C#代码中有一个上载函数,它可以很好地处理查询字符串参数。我将使用多表单数据在Rest客户机中传递该文件,它工作得非常好 现在我必须将参数更改为JSON格式,这样请求就不会命中控制器。谁能帮我一下吗Asp.net web api WebApi C中上载函数的JSON输入#,asp.net-web-api,rest-client,Asp.net Web Api,Rest Client,我的WebApi C#代码中有一个上载函数,它可以很好地处理查询字符串参数。我将使用多表单数据在Rest客户机中传递该文件,它工作得非常好 现在我必须将参数更改为JSON格式,这样请求就不会命中控制器。谁能帮我一下吗 public ReturnMsg UploadDocument(string fileName, string fileSize, string ApplNo, string DocId, string DocSize,string resumeId,string DependId
public ReturnMsg UploadDocument(string fileName, string fileSize, string ApplNo, string DocId, string DocSize,string resumeId,string DependId)
{
ReturnMsg objReturnMsg = new ReturnMsg ();
HttpResponseMessage response = new HttpResponseMessage();
var httpRequest = HttpContext.Current.Request;
Stream stream = null;
if (httpRequest.Files.Count > 0)
{
foreach (string file in httpRequest.Files)
{
var postedFile = httpRequest.Files[file];
var filePath = string.Empty;
stream = postedFile.InputStream;
}
objReturnMsg = Bll.UploadFiles(fileName, fileSize, DocId, DocSize,DependId,stream);
}
else
{
objReturnMsg.Status = "F";
objReturnMsg.ReturnMessage = "Please Upload a Valid Form";
}
return objReturnMsg;
}
我想把它放进去
public ReturnMsg UploadDocument(DocDetails docDet)
{
ReturnMsg objReturnMsg = new ReturnMsg ();
HttpResponseMessage response = new HttpResponseMessage();
var httpRequest = HttpContext.Current.Request;
Stream stream = null;
if (httpRequest.Files.Count > 0)
{
foreach (string file in httpRequest.Files)
{
var postedFile = httpRequest.Files[file];
var filePath = string.Empty;
stream = postedFile.InputStream;
}
objReturnMsg = Bll.UploadFiles(docDet.fileName, docDet.fileSize, docDet.DocId, docDet.DocSize,docDet.DependId,stream);
}
else
{
objReturnMsg.Status = "F";
objReturnMsg.ReturnMessage = "Please Upload a Valid Form";
}
return objReturnMsg;
}
您是否尝试过在DocDetails之前添加
[FromBody]
?我从来都不确定什么时候需要这样做,特别是如果这是一个post请求,但总是值得建议的!是的,我已经尝试添加[FromBody]并尝试从Rest客户端访问服务。我将内容类型作为Multipart Formdata传递,并使用内容类型application/json传递文件部分和文本部分。它不起作用:(