2013-04-26 86 views
0

我想在MVC Web应用程序中调用一个asp.net webservice。我只是将项目从MVC 1升级到MVC 4,除了调用以前在MVC 1应用程序中使用的服务之外,一切都工作正常。问题是我得到“404未找到”的错误。它甚至没有达到这个功能。从MVC 4视图调用asp.net webservice

我用来调用服务和函数的代码如下所示。

function RunAsync(url, jsondata, success, error) { 
    $.ajax({ 
     type: "POST", 
     url: url, 
     data: jsondata, 
     contentType: "application/json;charset=utf-8", 
     dataType: "json", 
     success: function(result) { 
      var obj = JSON.parse(result.d); 
      if (obj.Status == 'Success') { 
       eval(success + '(obj)'); 
      } 
      else if ((error != null) && (obj.Status == 'Error')) { 
       eval(error + '(obj)'); 
      } 
      else { 
       alert(obj.Message); 
      } 
     }, 
     error: function(request, status, throwerror) { 
      var message = ''; 
      message += 'The request could not complete.'; 
      message += '<br />' + 'Request status:' + request.status; 
      message += '<br />' + 'Request response:' + request.responseText; 
      window.open('', 'exception').document.write(message); 
     } 
    }); 
} 

我真的难住这一个。

任何帮助,将不胜感激。提前致谢。

+0

你能在这里提供函数参数吗? – ravisolanki07 2013-04-26 13:43:54

+1

通过:“它甚至没有达到该功能”,你的意思是这个JavaScript没有运行? – jwddixon 2013-04-26 13:44:09

+0

@jwddixon javascript正在运行,但它没有得到服务中的功能。因此,404错误。 – Ic3m4n69 2013-04-26 14:08:55

回答

0

几个星期前我碰到了这个,发现IIS没有提供我的服务请求。整个解决方案具有以下重新注册在IIS服务:

%windir%\Microsoft.net\framework\v3.0\WindowsCommunicationFoundation\servicemodelreg -i 

我相信你有这个“以管理员身份”运行。

+0

我假设我必须在CMD Prompt中运行此操作?事情是通过来源发生的。我还没有检查过现场版本,但我会假设它也是这样做的。 – Ic3m4n69 2013-04-26 14:06:17

+0

是的,以管理员身份启动您的cmd提示符。 – 2013-04-26 14:07:28