MVC JavaScript Form发布问题

时间:2011-02-26 02:14:40

标签: asp.net-mvc-2

我有一个问题,当在Visual Studio中运行时,以下代码可以正常工作但是我得到“无法找到资源”。部署到测试服务器时出错。

JavaScript:

     var form = document.forms[0];
     form.action = '/NCR/CreateSaveNCR';
     form.submit();

控制器代码:

    [HttpPost]
    public ActionResult CreateSaveNCR(viewModels.NCRCreateViewModel model)

我不知道问题是什么。感谢..

3 个答案:

答案 0 :(得分:0)

如果找不到资源,且代码相同,则可能是路径问题,是网址http://yourdomain.com/NCR/CreateSaveNCR?还是在它下面的文件夹中?您也可能(不常见)必须重新启动IIS进程以使其接收新的路由信息​​(重新运行global.asax的app_start)。

答案 1 :(得分:0)

如果部署到虚拟目录,则需要将其作为mvc url路径的一部分包含在内。

另一种可能性是该文件存在于dev目录中,但不包含在项目文件中,如果使用该机制将更改推送到暂存环境,则该文件将被排除在“发布”部署方法之外。

答案 2 :(得分:0)

永远不要对网址进行硬编码。在处理网址时始终使用网址助手:

form.action = '<%= Url.Action("CreateSaveNCR", "NCR") %>';