我正在尝试将MVC3应用程序部署到IIS6环境中,并将其部署到现有2.0站点的子文件夹中。我遇到的问题是,现在我已经将应用程序重新定位到子文件夹,没有任何操作能够命中控制器。控制器名称为SurveyController,子目录名称为Survey。
这是出问题的地方
$.ajax({
url: '@Url.Action("AddSurvey")',
type: 'GET',
async: false,
contentType: 'application/json',
success: function (result) {
ko.applyBindings(new ViewModel(result));
}
});
现在我已经进入子文件夹,我需要做些什么才能确保控制器操作正确路由?
目前已注册的路线是
RouteTable.Routes.MapRoute("", "", new { controller = "Survey", action = "Index" });
编辑:
经过几次测试。我能够浏览到一个创建一个简单的hello字符串的控制器。但是,只要我引入EF DBContext,它就会抛出一个错误
“IControllerFactory'UI.Infrastructure.NinjectControllerFactory'未返回名称为”MyTest“的控制器。”
public ActionResult MyTest()
{
ContentResult cr = new ContentResult();
cr.Content = "hello";
return cr;
}
但不是
public ActionResult MyTest()
{
RolloverModel ctx = new RolloverModel("name=MyModel");
cr.Content = ctx.Connection.ConnectionString;
return cr;
}
提前致谢!
答案 0 :(得分:0)
您现有的网站是否在4.0框架下运行?如果不是请切换到4.0框架。您可以找到更多详细信息here
答案 1 :(得分:0)
我不知道你做了什么重新分配,但是你所展示的AJAX示例不可能正常工作,因为你正在使用模型绑定器不支持的contentType: 'application/json'
的GET动词。