Я видел пару похожих сообщений, но ни одна из них не решила мою проблему, поэтому я пишу снова.
Я пытаюсь передать свои данные WindowsForm на контроллер asp.net MVC.
Но на контроллере я получаю нулевое значение. Как я могу передать значение формы Windows (текстовое значение) моему контроллеру? Пожалуйста, помогите.
Вот мои коды:
Код формы Windows:
private void send_button_Click(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(textBox1.Text))
{
var dataBytes = System.Text.Encoding.UTF8.GetBytes(textBox1.Text);
HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create("http://localhost:61174/Home/DataFromWinForm");
httpWebRequest.ContentType = "application/x-www-form-urlencoded";
httpWebRequest.ContentLength = dataBytes.Length;
httpWebRequest.Method = "POST";
using (var dataStream = httpWebRequest.GetRequestStream())
{
dataStream.Write(dataBytes, 0, dataBytes.Length);
}
HttpWebResponse response = (HttpWebResponse)httpWebRequest.GetResponse();
if (response.StatusCode == HttpStatusCode.OK)
{ starts_label.Text += "Posted";
textBox1.Text = null;
}
}
}
А вот мой контроллер: методом Start я открываю свое приложение windowsform и пытаюсь передать текст формы окна методу DataFromWinForm моего контроллера
public class HomeController : Controller
{
public IActionResult Index()
{
return View();
}
public IActionResult Start()
{
var appLocation = @"C:\Users\RFIDReader\bin\Debug\RFIDReader.exe";
Process test = new Process();
test.StartInfo.FileName = appLocation;
test.Start();
return View("Index");
}
[HttpPost]
public IActionResult DataFromWinForm(string receivedData)
{
//My code goes here
return View();
}}
Но когда моя точка останова достигает моего контроллера, я получаю нулевое значение