我在我的网站项目中添加了一个带有Genomfaktureing.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) {
}
});
}
});
网络服务代码
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
}
}
感谢任何帮助。
答案 0 :(得分:0)
在IIS中,右键单击Webservice文件夹并转换为应用程序。
答案 1 :(得分:0)
更改以下代码行: url:“/ Webservice/Genomfakturering.asmx/UpdateSalesLine”, 像
这样的东西url:“〜/ Webservice / Genomfakturering.asmx / UpdateSalesLine”或
url:“〜/ Genomfakturering.asmx / UpdateSalesLine”
根据您的Web应用程序中的目录结构。