2017-07-14 49 views
1

我想給使用「的WebMethod」,我的條件如下警告消息調用的WebMethod,並顯示警告信息如何在asp.net

1.I我試圖限制用戶將留下「星期一」他/她在前一個星期五已經離開了。 2.我geeting從我的數據庫,其中員工留下詳細的細節,試圖在的WebMethod

我的CS網頁代碼編寫這樣的:

[System.Web.Services.WebMethod] 
public string GetCurrentTime() 
{ 
    SqlConnection con = new SqlConnection(conString); 
    con.Open(); 
    SqlCommand cn = new SqlCommand(); 
    DateTime date3 = System.DateTime.Now; 
    DateTime date4 = System.DateTime.Now; 
    DateTime date1 = System.DateTime.Now.AddDays(-6); ; 
    DateTime date2 = System.DateTime.Now.AddDays(-6); 
    DateTime.TryParse(txtFromDate.Text, out date1); 
    DateTime.TryParse(txtToDate.Text, out date2); 

    // string val; 
    // var EmpID = "SS212"; 
    SqlDataAdapter da = new SqlDataAdapter(scmd); 
     DataTable dt=new DataTable(); 
     da.Fill(dt); 
     sdr = scmd.ExecuteReader(); 
    if (date1.DayOfWeek == DayOfWeek.Monday && date2.DayOfWeek == DayOfWeek.Monday) 
    { 
     string Leave = "Select EmpID ,LeaveType,LeaveFromDate,LeaveToDate,LeaveStatus from LeaveApplication Where LeaveFromDate = '" + date1 + "' and LeaveToDate = '" + date2 + "'"; 
     scmd = new SqlCommand(Leave, scon); 



    } 
    for(int i = 0; i < dt.Rows.Count; i++) 
    { 

     String value ; 
     if ((dt.Rows[i]["LeaveStatus"].ToString() == "Accepted") || (dt.Rows[i]["LeaveStatus"].ToString() == "Pending")) 

    { 
     value=""; 

    } 
     else 
    { 

     value = ""; 
    } 

    } 


    return "";  
} 

我的aspx:

 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" type="text/javascript"></script> 
<script type="text/javascript"> 
    function ShowCurrentDate() { 

     $.ajax({ 
      type: "POST", 
      url: "LMSEmployee.aspx/GetCurrentTime", 
      data: params, 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: OnSuccess, 
      failure: function (response) { 
       alert("Please"); 
      } 
     }); 
    } 
    function OnSuccess(response) { 
     alert("Please"); 

    } 
    </script> 

回答

0

WEBMETHOD僅適用於靜態功能,請嘗試

public static string GetCurrentTime() 

而不是

public string GetCurrentTime() 

請注意,如果你這樣做,然後事件驅動,通常是在事件驅動功能(即服務器端點擊事件)功能不會工作

有一個真棒後由Mike在

https://www.mikesdotnetting.com/article/104/many-ways-to-communicate-with-your-database-using-jquery-ajax-and-asp-net

+0

你好,你可以給我使用我的代碼示例。我得到錯誤「對象引用是非靜態字段需要」在我的連接字符串。請告訴我一個警報消息 – Josh

0

例如 //不僅僅是一輛汽車類

public class Cars 
    { 
     public string carName; 
     public string carRating; 
     public string carYear; 
    } 


//Your Webmethod* 
[WebMethod] 
public List<Cars> getListOfCars(List<string> aData) 
{ 
    SqlDataReader dr; 
    List<Cars> carList = new List<Cars>(); 

    using (SqlConnection con = new SqlConnection(conn)) 
    { 
     using (SqlCommand cmd = new SqlCommand()) 
     { 
      cmd.CommandText = "spGetCars"; 
      cmd.CommandType = CommandType.StoredProcedure; 
      cmd.Connection = con; 
      cmd.Parameters.AddWithValue("@makeYear", aData[0]); 
      con.Open(); 
      dr = cmd.ExecuteReader(CommandBehavior.CloseConnection); 
      if (dr.HasRows) 
      { 
       while (dr.Read()) 
       { 
        string carname = dr["carName"].ToString(); 
        string carrating = dr["carRating"].ToString(); 
        string makingyear = dr["carYear"].ToString(); 

        carList.Add(new Cars 
            { 
             carName = carname, 
             carRating = carrating, 
             carYear = makingyear 
            }); 
       } 
      } 
     } 
    } 
    return carList; 
} 
//* 

//Your Client Side code 
    $("#myButton").on("click", function (e) { 
     e.preventDefault(); 
     var aData= []; 
     aData[0] = $("#ddlSelectYear").val(); 
     $("#contentHolder").empty(); 
     var jsonData = JSON.stringify({ aData:aData}); 
     $.ajax({ 
      type: "POST", 
      //getListOfCars is my webmethod 
      url: "WebService.asmx/getListOfCars", 
      data: jsonData, 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", // dataType is json format 
      success: OnSuccess, 
      error: OnErrorCall 
     }); 

     function OnSuccess(response) { 
      console.log(response.d) 
     } 
     function OnErrorCall(response) { console.log(error); } 
     }); 
+0

而不是使用存儲過程的地方只是添加你的平常sql查詢字符串 –

+0

嗨Rahul,它顯示錯誤遍及代碼,「對象引用是非靜態字段需要」 – Josh

+0

感謝您的快速響應。 – Josh