ASP.NET WebMethod从字符串参数中修剪前导0

时间:2016-08-09 19:27:00

标签: c# asp.net webforms webmethod

我有一个WebMethod如下:

[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json, UseHttpGet = true)]
public string CityState(string zip)
{
    if (zip.Length < 5) return string.Empty;
    //truncated for readability

     var data = "Foo";
     return data;
}

在ascx控件中,我有以下内容:

<script type="text/javascript">
        var data = { Zip: "09003"  };
        $.ajax({
            type: "GET",
            url: "/postalcodevalidator.asmx/CityState",
            data: data,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (result) {
                console.log("Woohoo");
            },
            error: function () {
                console.log("Boohoo.")
            }
        });
</script>

在请求期间,前导0从字符串中被修剪。我怎么能防止这种情况?

1 个答案:

答案 0 :(得分:0)

这“工作”,意思是,这停止了将我的字符串转换为int返回字符串,但我不知道转换发生的原因或位置。

无论如何,我的“解决方案”是把我的字符串包装成一个字符串。

var data = { Zip: '"09003"'  };

请注意双刻度线周围的单个刻度。通过这样做,我想我欺骗了试图进行转换的任何事情。