Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MVC从带有asp帮助程序标记的视图窗体运行操作_C#_Asp.net Mvc_Razor_Asp.net Mvc 5_Asp.net Core Mvc - Fatal编程技术网

C# MVC从带有asp帮助程序标记的视图窗体运行操作

C# MVC从带有asp帮助程序标记的视图窗体运行操作,c#,asp.net-mvc,razor,asp.net-mvc-5,asp.net-core-mvc,C#,Asp.net Mvc,Razor,Asp.net Mvc 5,Asp.net Core Mvc,因此,我试图编写一段代码,从YouTube上接收一段视频,并将其添加到列表中。我通过将url传递给表单并将其传递给控制器来实现这一点。然而,什么也没有发生 视图: 我尝试调试addVideo,但提交表单从未触发断点。生成的url如下所示 视图没有调用控制器有什么原因吗 更新: 我知道是什么导致了这个问题。这肯定是asp操作和asp控制器标记。我的网页顶部有一个导航栏,以前由@Html.ActionLink(“Home”、“Index”、“Home”)等razor语句控制。我尝试将此链接切换到一组

因此,我试图编写一段代码,从YouTube上接收一段视频,并将其添加到列表中。我通过将url传递给表单并将其传递给控制器来实现这一点。然而,什么也没有发生

视图:

我尝试调试addVideo,但提交表单从未触发断点。生成的url如下所示

视图没有调用控制器有什么原因吗

更新:


我知道是什么导致了这个问题。这肯定是asp操作和asp控制器标记。我的网页顶部有一个导航栏,以前由@Html.ActionLink(“Home”、“Index”、“Home”)等razor语句控制。我尝试将此链接切换到一组具有相同控制器和动作值的锚定标记,但对网站没有影响。这是软件包的问题吗?

发现了它,html标记帮助程序是一个核心功能,my ide Xamarin不支持这一功能,也不支持多目标。我想切换回Visual Studio就足够了。

我一直在阅读这篇关于HTML表单的文章,这可能与我的表单标签上没有method=“post”有关。visualstudios中是否有处理此问题的东西而不是其他ide中的?这确实会改变结果。视频url不再附加到浏览器中的url。我猜这涉及到一个路由问题。在运行更多测试后,看起来我尝试调用的操作会将我路由到我尝试调用的同一个控制器,但这只是索引操作,而不是我想要的操作。将其放置到我的视图中以测试我是否可以在我的控制器上强制执行该操作@ActionLink(“Test”、“addVideo”、“Video”)按该链接会导致网站出错,并表示找不到该操作。将[HttpGet]添加到方法会使锚定标记正常工作。
<form asp-action="addVideo" asp-controller="Video" validate="validate">
    <input name="vidUrl" type="url" placeholder="Search for a video" required="required"/>
    <input type="submit" value="Search"/>
</form>
public ActionResult addVideo(string vidUrl)
{
    //Do stuff...
    return RedirectToAction("Index");
}