从VS 2012升级到VS 2013后,Web服务无法正常工作

时间:2014-07-12 19:08:23

标签: c# asp.net web-services visual-studio-2012 visual-studio-2013

编辑(2014年7月17日)我发布这个问题已经过去了四天,我仍然感到难过。任何人都可以提供我可以开始寻找的建议或地点吗?根据我迄今为止所学到的知识,看起来VS 2013可能与VS 2012的位置不同......可能就是这样......我需要修改我的网络服务路径吗?

我在VS 2012中创建了一个使用Web服务的Web应用程序。一切都按预期工作。我刚刚升级到VS 2013,现在我的Web服务出错了。

当我检查结果对象时,在resultText中,我看到错误:

No web service found at: /testserver/WebServices.asmx

不确定如何处理此问题,因为它适用于VS 2012.有人可以提供帮助吗?

谢谢。

WebServices.asmx 文件:

<%@ WebService Language="C#" CodeBehind="~/App_Code/WebServices.cs" 
    Class="WebServices.Services" %>

WebServices.cs签名:

namespace WebServices
{
    [WebService(Namespace = "http://MyCompanyInhouseserver.com/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [ToolboxItem(false)]
    [ScriptService]
    public class Services : WebService
    {
        Code...
    }
}

Ajax :(如果是在VS 2013中暴露的编码问题,请添加此项。完整的代码中断:部分。)

var pageUrl = "/testserver/WebServices.asmx";

        $.ajax({
            type: "POST",
            url: pageUrl + "/ValidateLogin",
            data: "{'username': '" + self.username() + "', 'password': '" + self.password() + "'}",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function(result) {

            },
            error: function(XMLHttpRequest, textStatus, errorThrown) {
                alert(textStatus);
            },
            complete: function (result) {
                if (result.responseJSON.d != null && result.responseJSON.d.UserId > 0) {
                    $(window.location).attr('href', 'startproject.aspx');
                } else {
                    self.loginError("Invalid username/password");
                }
            }
        });

1 个答案:

答案 0 :(得分:0)

在visual studio中检查Web项目的属性,然后转到Web部分。确定您是否使用Local IIS,这将要求您Create a Virtual Directory以及安装IIS。如果你有IIS Express,你还需要创建一个虚拟目录;但请注意,localhost是一个端口号,您可能需要在构建和运行项目后调整您的URL到该端口号以及本地主机以进行测试。