这是我第一次尝试发布Web应用程序;我正在使用IIS 8.5。该应用程序是一个Backbone应用程序,它检索并保存SQL Server 2008上的数据。我有一些问题显示图像和一些其他文件,但我设法解决它。但是,主干的主要集合没有加载。我得到GET http://localhost/Edit/GetQuestions 404 (Not Found)
,其中Edit是控制器。当我从VSTO 2013运行时,该应用程序没有任何问题,但是一旦部署就无法找到MVC4控制器。这是我的收藏
App.Collections.Questions = Backbone.Collection.extend({
model: App.Models.Question,
url: '../Edit/GetQuestions',
});
我在网址中添加了“..”以测试是否有效,因为我必须这样做才能从CSS网址加载图片。有或没有'..'没有加载控制器。
这是我的路线配置:
routes.MapRoute(
"Questions",
"{Controller}/{action}",
new { Controller = "Edit", action = "GetQuestions", id = UrlParameter.Optional }
);
有人可以解释一下发生了什么,我该如何解决这个问题?由于这是我的第一个应用程序,我仍在学习并试图了解事情是如何工作的。我用谷歌搜索,但找不到任何与我正在经历的这个问题有关的事情。
如果您需要我在问题中添加任何其他内容,请与我们联系。我不确定什么是有用的,什么不是。
答案 0 :(得分:0)
试试这个:
//model url
url: 'Edit/GetQuestions'
//Router config.
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Edit", action = "GetQuestions", id = UrlParameter.Optional }
);
答案 1 :(得分:0)
参考change web application authentication to use Windows Authentication。事实证明,控制器或URL没有问题,它是未建立的SQL服务器的身份验证,无法检索数据。