在我看来,我有一个像以下
的标签<a href="@Url.Action("LaunchApp", "ClinicalDocument")" class="btn btn-dark inline" title="Request CCDA">CCDA</a>
当我点击链接时,我收到404错误。此操作位于我添加到项目中的新控制器中。
>'/'应用程序中的服务器错误。无法找到该资源。说明:HTTP 404.您要查找的资源(或其中一个依赖项)可能已被删除,名称已更改或暂时不可用。请查看以下网址,确保拼写正确。请求的网址:/ ClinicalDocument / LaunchApp
这是我的控制器代码
namespace PatientPortal.Controllers
{
//[Authorize]
//[InitializeSimpleMembership]
//[SessionTimeoutFilter]
public class ClinicalDocumentController : Controller
{
//
// GET: /ClinicalDocument/
public ActionResult Index()
{
return View();
}
[HttpGet]
public ActionResult LaunchApp()
{
QuickLaunch model = new QuickLaunch();
return Redirect(model.Url);
}
}
}
这是我的Route.config
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
//defaults: new { controller = "Account", action = "Login", id = UrlParameter.Optional}
);
}
}
我不确定为什么它会抛出404错误。一切似乎都很好看。请帮忙。
更新
我在visual studio的调试输出中看到以下内容
抛出异常:System.Web.Mvc.dll中的'System.Web.HttpException'抛出异常:System.Web.dll中的'System.Web.HttpException'
点击链接后
答案 0 :(得分:0)
问题是构建路径。它被设置为虚拟目录S:/。添加新控制器后,我将构建路径更改为bin /。这解决了这个问题。