1
我有jQuery Ajax方法在C#代碼中調用Web方法。該代碼在本地環境中正常工作,但在服務器中不起作用。但是一些web方法和jQuery Ajax調用可以正常使用SQL語句,但是使用web方法中的存儲過程返回一些數據不起作用。它顯示一個錯誤消息作爲不能在azure服務器上工作,但在本地環境中正常工作?
{消息: 「發生錯誤處理請求。」,堆棧跟蹤: 「」,ExceptionType: 「」}
ExceptionType: 「」
消息:「有一個處理請求時出錯。「
堆棧跟蹤: 「」
這裏是我的Ajax調用...
$.ajax({
url: "AutoRFQ_Vendors_SP.aspx/BindGrid"
, type: "POST"
, data: JSON.stringify(objdrpdata)
, contentType: "application/json;"
, success: function (data) {
$body.removeClass("loading");
var vendorsource = {
datatype: "json"
, localdata: data.d
, datafields: [
{
name: 'CommonMakerNameDisplay'
}
, {
name: 'EqpExtendType'
}
, {
name: 'CommonMakerName'
}
, {
name: 'IsForAutoRFQ'
}
, {
name: 'VendorName'
}
, {
name: 'CurrencyCode'
}
, {
name: 'Proc_Vendors_AllowedCurrencyID'
}
, {
name: 'SortCode'
}
, {
name: 'xSortCode'
}
, {
name: 'IsTitle'
}
, {
name: 'NoOfRFQs'
}
, {
name: 'NoOfOrders'
}
, {
name: 'TotalPOAmtInUSD'
}
}
});
這裏是我的Web方法:
[WebMethod(EnableSession = true)]
public static string BindGrid(string vslFilter, string yearFilter, string eqpmtFilter)
{
DataTable dt = null;
string gridvendorlist = "";
try
{
if (HttpContext.Current.Session["P_Hub_AutoRFQVendorDataTable"] == null || (string) HttpContext.Current.Session["P_Hub_AutoRFQVslFilter"] != vslFilter || (string) HttpContext.Current.Session["P_Hub_AutoRFQYearFilter"] != yearFilter || (string) HttpContext.Current.Session["P_Hub_AutoRFQEqpmtFilter"] != eqpmtFilter)
{
string vslFilterType = "", vslFilterValue = "";
if (vslFilter.Length == 3)
vslFilter = "VSL-" + vslFilter;
string[] vslType = vslFilter.Trim().Split('-');
if (vslType[0].ToString().Trim().ToUpper() == "VSL")
{
vslFilterType = "VSL";
vslFilterValue = vslType[1].ToString();
}
else if (vslFilter != "-1")
{
vslFilterType = "Group";
vslFilterValue = vslFilter.ToString();
}
string spName = "W_Enh_CommonMakers_RFQVendors";
string[] paramField = { "@CompanyCode", "@VslFilterType",
"@VslFilterValue", "@NoOfYrToShow",
"@EQ_EquipmentID" };
object[] paramValue = { GenFuncs.COMPANYCODE,
vslFilterType,
vslFilterValue,
yearFilter,
eqpmtFilter };
dt = DBFuncs.dbExecuteSP(spName, paramField, paramValue);
HttpContext.Current.Session["P_Hub_AutoRFQVendorDataTable"] = dt;
HttpContext.Current.Session["P_Hub_AutoRFQVendorSelectedRowIndex"] = null;
HttpContext.Current.Session["P_Hub_AutoRFQ_ScrollIndex"] = null;
HttpContext.Current.Session["P_Hub_AutoRFQVslFilter"] = vslFilter;
HttpContext.Current.Session["P_Hub_AutoRFQYearFilter"] = yearFilter;
HttpContext.Current.Session["P_Hub_AutoRFQEqpmtFilter"] = eqpmtFilter;
gridvendorlist = Func_Ajax.GetJson(dt);
}
else
{
dt = (DataTable)HttpContext.Current.Session["P_Hub_AutoRFQVendorDataTable"];
gridvendorlist = Func_Ajax.GetJson(dt);
}
}
catch (Exception err)
{
GenFuncs.AddToErrLog("-1", "xxx", "Error", err.Message, Path.GetFileName(HttpContext.Current.Request.PhysicalPath), "BindGrid");
}
finally
{
dt = null;
}
return gridvendorlist;
}
有我需要在服務器上做任何額外的東西嗎?
嗨..sorry ...是一個Azure webApp ..或Azure VM? ..你打開http端口嗎? –
這是一個Azure的web應用程序...是的,我可以打開http端口.. –
你打開它嗎? ..你有沒有在谷歌Chrome控制檯檢查前端的xhr請求? (如果指向正確的服務器等) –