Ciao a tutti ho la seguente funzione che richiama un webmethod e al success dovrei caricare una dropdown con i valori ma appena inserisco JSON.Parse non funziona più.

Web Method funziona e torna un risultato in Json corretto
codice:
[WebMethod]
        public static string CaricaProvince(int idRegione)
        {
            var db = new GMM.DAL.DBLocale();
            var result = (from c in db.Province where c.fidRegione == idRegione select new { c.idProvincia, c.Provincia }).ToList();
            var jsonSerialiser = new JavaScriptSerializer();
            if (result!= null)
            { 
            var json = jsonSerialiser.Serialize(result);
            return json;
            }
            else
            {
                return "";
            }
        }

Risultato:
[{\"idProvincia\":78,\"Provincia\":\"Cosenza\"},{\"idProvincia\":79,\"Provincia\":\"Catanzaro\"},{\"idProvincia\":80,\"Provincia\":\"Reggio di Calabria\"},{\"idProvincia\":101,\"Provincia\":\"Crotone\"},{\"idProvincia\":102,\"Provincia\":\"Vibo Valentia\"}]
Poi nell'html ho:

codice:
$("#cmbRegioni").change(function () {
                var selectedValue = $(this).val();
                if (selectedValue != 0)
                {
                    PageMethods.CaricaProvince(selectedValue, onSucess, onError);
                    function onSucess(result) {
                        var arrayProvince = result;
                        for (var i = 0; i < arrayProvince.length; i++) {
                            var current = arrayPunti[i];                            
                            alert(current.idProvicia + " - " + current.Provicia);
                        }              
                                               
                    }
                    function onError(result) {
                        alert("Something wrong." + selectedValue);
                    }
                }
            });
però l'alert non mi compare e non entra proprio in success.