访问asmx webservice返回页面未找到错误



我添加了一个带有文件Genomfaktureing的Webservice。Asmx到我的web项目,附图在这里http://img42.com/e0xm0.

我在ajax调用中调用这个web服务。它在我的Visual Studio中工作,但在部署到生产服务器后没有发现错误。我在IIS管理器中创建了一个Webservice虚拟文件夹,指向具有所需权限的页面。

$.ajax({
    type: "POST",
    url: "/Webservice/Genomfakturering.asmx/UpdateSalesLine",
    data: { inoutorderno: salesOrderNo, externaltype: extType, externalno: extNo, quantity: quant },
    error: function (jqXHR, textStatus, errorThrown) {
        alert(textStatus);
        alert(errorThrown);
    },
    success: function (msg) {
        $.ajax({
            dataType: "html",
            url: "/Templates/genomfakturering/ArticlesAdded.aspx",
            data: { orderNo: salesOrderNo },
            error: function (jqXHR, textStatus, errorThrown) {
                alert(textStatus);
                alert(errorThrown);
            },
            success: function (data) {
            }
        });
    }
});

webservice代码

namespace se.dackia.web.Webservice
{
    [WebService(Namespace = "se.dackia.web")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    [System.Web.Script.Services.ScriptService]
    public class Genomfakturering : System.Web.Services.WebService
    {
        [WebMethod]
        [ScriptMethod (UseHttpGet = true)]
        public string HelloWorld()
        {
            return "Hello World";
        }
        [WebMethod]
        public void UpdateSalesLine(string inoutorderno, string externaltype, string externalno, string quantity) 
        {
            // Get ext type from the string
            int exttype = 999;
            if (externaltype.ToLower().Equals("service"))
            {
                exttype = 6;
            }
            else if (externaltype.ToLower().Equals("rim")||externaltype.ToLower().Equals("tire"))
            {
                exttype = 2;
            }
            // converting string to decimal
            decimal quant = Decimal.Parse(quantity);
            try
            {
                // Adding new order line
                MSNavisionIntegration objMsNavisionIntegration=new MSNavisionIntegration();
                var newOrderLineNo= objMsNavisionIntegration.NewOrderLine(inoutorderno, exttype, externalno, quant);
            }
            catch (Exception ex)
            {
            }//catch
        }
    }

在IIS中,右键单击"Webservice"文件夹,选择"Convert to Application"

修改下面一行代码:url:"/网络服务/Genomfakturering.asmx/UpdateSalesLine",到像

这样的东西

url:"~/网络服务/Genomfakturering。asmx/UpdateSalesLine"或

url:"~/Genomfakturering.asmx/UpdateSalesLine"

最新更新