У меня есть контроллер, который выглядит так для импорта XML на мой сайт:
[HttpPost]
public ActionResult Import(string xml)
{
У меня есть отдельное приложение, которое читает файл XML и отправляет его на URL. Это выглядит так:
static void Main(string[] args)
{
var reader = new StreamReader(@"myfile.xml");
var request = WebRequest.Create("http://localhost:41379/mycontroller/import");
request.Method = "POST";
request.ContentType = "text/xml";
StreamWriter sw = new StreamWriter(request.GetRequestStream());
sw.Write(reader.ReadToEnd());
sw.Close();
var theResponse = (HttpWebResponse)request.GetResponse();
StreamReader sr = new StreamReader(theResponse.GetResponseStream());
var response = sr.ReadToEnd();
}
Контроллер вызывается правильно, но когда я врываюсь туда, аргумент становится пустым. Я уверен, что просто не устанавливаю правильный тип контента или что-то в этом роде. Как правильно кодировать xml, чтобы фреймворк получил его и правильно передал контроллеру?