2017-07-14 50 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