Ajax Json com C# - WebMethod - Delboni TI

About us

test banner

Breaking

Post Top Ad

Responsive Ads Here

Post Top Ad

Responsive Ads Here

terça-feira, 8 de abril de 2014

Ajax Json com C# - WebMethod

Mostrarei dessa vez, de uma maneira simples, como executar um WebMethod no C# utilizando o Ajax/Json.
No meu exemplo, o Webmethod fará uma consulta a base e retornar um array para o Javascript.
No C# será criado o seguinte método:
        [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
        [WebMethod]
        public static object GetValoresPG(string dados)
        {
            RoteirosAcessoDao Roteiros = new RoteirosAcessoDao();
            DataTable dt = new DataTable();
            List<string> Lista = new List<string>();

            dt = Roteiros.QueryRoteiros();

            string EstudioPG = dt.Rows[0]["QtdRoteiros"].ToString();
            string ExternaPG = dt.Rows[1]["QtdRoteiros"].ToString();
            string EstudioPGE = "1";
            string ExternaPGE = "1";         
                     
            Lista.Add(EstudioPG);
            Lista.Add(ExternaPG);
            Lista.Add(EstudioPGE);
            Lista.Add(ExternaPGE);

            JavaScriptSerializer js = new JavaScriptSerializer();
            return js.Serialize(Lista);
        }

E na minha pagina aspx entre as tags
 <script type="text/javascript">
</script>

$(document).ready(function () {

            var estudioPG = new Number();
            var externaPG = new Number();

            $.ajax({
                type: "POST",
                url: "About.aspx/GetValoresPG",
                data: "{dados:'" + EstudioPG + "'}",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (data) {
                    var itens = $.parseJSON(data.d);
                    somaPG = parseInt(itens[0]) + parseInt(itens[1]);
                    estudioPG = itens[0];
                    externaPG = itens[1];
                    $('#EstudioPG').html(estudioPG * 100 / somaPG);
                    $('#ExternaPG').html(externaPG * 100 / somaPG);
                                        
                }

            });
  });

Nenhum comentário:

Postar um comentário

Post Top Ad

Responsive Ads Here