Вызов REST API в c# , который ожидает файловый объект

#c# #asp.net-mvc #api #rest #restsharp

Вопрос:

Наше приложение имеет веб-графический интерфейс, который имеет интерфейс для приема местоположения и имени локального файла. Мы написали контроллер C#, который вызывается при нажатии кнопки отправить. Контроллер получает файл как HttpPostedFileBase. С контроллера мы пытаемся вызвать API REST в C#, который ожидает объект File в качестве запроса, однако мы не можем этого сделать. Запрос ожидает файл, и параметр запроса имеет тип данных формы. Любая помощь в написании клиента C# REST API для вызова этой службы REST путем передачи файла.

ниже приведен мой код модели : модель регистрации

в приведенном выше коде изображение получено в объекте HttpPostedFileBase.

ниже приведен код контроллера : метод отправки контроллера

не удается добавить объект изображения в метод request.addfile, поскольку он включает имя и путь к файлу

Комментарии:

1. Пожалуйста, поделитесь примерами вашего текущего кода и, возможно, объясните, где вы застряли. Кроме того, подумайте о том, чтобы сократить объем вашего вопроса и оставить его одним единственным вопросом.

2. мы обновили вопрос, а также загрузили снимки для того же

3. Пожалуйста, опубликуйте код, а не изображения кода …

Ответ №1:

RestRequest Класс в RestSharp имеет перегрузку AddFile метода, который принимает обратный вызов, вызываемый для записи данных в Stream объект:

 AddFile(string name,   Actionlt;Streamgt; writer,   string fileName,   long contentLength,   string contentType = null)  

Вы можете использовать его таким образом для публикации данных из HttpPostedFileBase :

 request.AddFile("pan",   stream =gt; objmodel.doc_pan.InputStream.CopyTo(stream),   objmodel.doc_pan.FileName,   objmodel.doc_pan.ContentLength,   objmodel.doc_pan.ContentType);  

Комментарии:

1. Спасибо за ответ 🙂