我的路由配置文件或Asp.Net MVC应用程序中存在其他问题,该问题不断触发我访问的每个控制器中的每个索引操作方法。如果单击下面的操作链接,将转到页面/ profile / general,请在屏幕上查看查看结果,但是应用程序中的某些内容(不确定是什么)触发了在该控制器上调用index动作!由于我在大多数控制器上都没有索引操作方法,因此我最终在访问每个页面时遇到异常。
前任。我点击下面的操作链接
@Html.ActionLink("Profile", "general", "profile", new { }, new { @class = "btn-sm", @style = "font-weight: bold; font-size: 1em;" })
或只是刷新浏览器。我进入如下所示的一般动作方法
public ActionResult General()
{
try
{
ViewBag.MenuItem = "profile";
ViewBag.UserMenuItem = "general";
var viewModel = _yogaProfileService.GetGeneralInfo(User.Identity.GetUserId());
return View(viewModel);
}
catch (Exception ex)
{
_errorService.LogError(ex, Request);
ViewBag.Message = "Oh No! Something went wrong fetching your info. We're looking into this now!";
return View("Error");
}
}
视图被调用,我在页面上看到它,但是随后在同一控制器上调用了index方法,我在这里进入了index action方法。调试器进入以下方法。它不会在屏幕上呈现索引的视图,我仍然可以看到普通视图,因此不确定此处发生了什么!
public ActionResult Index()
{
try
{
ViewBag.MenuItem = "profile";
return View();
}
catch (Exception ex)
{
_errorService.LogError(ex, Request);
ViewBag.Message = "Oh No! Something went wrong fetching your profile. We're looking into this now!";
return View("Error");
}
}
当然,出于显示的原因,我这里只有index方法,因此在应用程序中将其删除了,因此几乎在我访问的每个页面上都会引发异常,因为它会在我访问的每个控制器上查找index action方法
System.Web.HttpException:在控制器“ YogaBandy2017.Controllers.ProfileController”上找不到公共操作方法“索引”。
我不知道这是路由问题还是其他问题?我尝试在调试器中查找以查看网络以确定调用索引的内容以及调用堆栈中的内容,但它只是说“外部”,是否有某些Javascript可以调用它,如果是,我将如何查找呢?
更新-我只在IE,Chrome和Firefox中看到它,没有问题。这是调试器的图片,显示了待处理的请求
UPDATE2-我不认为这是Javascript问题,如果我不加载.js文件,索引仍然会被调用。所以我不认为这与Javascript有任何关系
相关分类