![Solution Explorer](https://i.stack.imgur.com/xF3JR.jpg)
Я завершил локальное тестирование своего приложения ASP.NET Core, и оно отлично работает. Однако я получаю 404 ошибки для триггера на моем представлении после публикации на нашем сервере UAT, и я не могу определить, почему. Я, возможно, упускаю что-то очевидное и буду признателен за свежие глаза. Спасибо.
Я попытался изменить маршрутизацию в StartUp и попытался смешанной маршрутизации в моем контроллере.
Соответствующая часть метода Configure в файле startup.cs:
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=StartPage}/{id?}");
});
Соответствующая форма в моем представлении StartPage:
<form action="@Url.Action("StartSlsProcess", "Home")" method="post" enctype="multipart/form-data" id="trigger">
<div id="process-trigger">
@(Html.DevExtreme().Button()
.Text("Start SLS")
.Type(ButtonType.Success)
.UseSubmitBehavior(true)
)
</div>
</form>
Метод в HomeController:
[HttpPost]
public ActionResult StartSlsProcess()
{
var empty = new string[0];
ConsoleApp.Program.StartProcessFromUI(empty);
return new EmptyResult();
}
Я ожидаю, что при нажатии кнопки в представлении запускается метод StartProcessFromUI в моем консольном приложении, продолжается отдельный процесс и обновляется представление, как и локально.
Редактировать: что такоеЕще более запутанная проблема заключается в том, что мое другое действие работает нормально и настроено так же:
<form action="@Url.Action("Upload", "Home")" method="post" enctype="multipart/form-data" id="uploader">
<div id="fileuploader-container">
@(Html.DevExtreme().FileUploader().Name("file")
.ID("file-uploader")
.Accept("*")
.UploadMode(FileUploadMode.Instantly)
.UploadUrl(Url.Action("Upload", "Home"))
//.OnUploadError("fileUploader_onUploadError")
//.OnValueChanged("fileUploader_valueChanged")
)
</div>
</form>
Метод HomeController:
[HttpPost]
public ActionResult Upload()
{
try
{
var file = Request.Form.Files["file"];
var path = Path.Combine(_hostingEnvironment.WebRootPath, "uploads");
if (!Directory.Exists(path))
Directory.CreateDirectory(path);
using(var fileStream = System.IO.File.Create(Path.Combine(path, file.FileName))) {
file.CopyTo(fileStream);
fileStream.Flush();
}
MoveFileFromServer(path, file);
}
catch (Exception e)
{
Console.WriteLine(e);
throw;
}
return new EmptyResult();
}
Кроме того, метод на моем ConsoleApp, собственно StartProcessFromUIполучает удар, просто ошибка 404 возвращается на переднем плане.