0
public void ProcessRequest(HttpContext context)
    {
        string method = context.Request["method"];
        if (!string.IsNullOrEmpty(method))
        {
            switch (method)
            {
                case "getReportGroups":
                    {
                    long projectId = long.Parse(context.Request.Params["projectId"]);
                        if (projectId > 0)
                            SerializeResults(getReportGroups(projectId), null, false, context);
                        else
                        {
                            ThrowInvalidProjectIdException(projectId);
                        }
                    }
}}

変数「long projectId」に取得および格納された projectId を検証したいと考えています。文字列などとして渡されたと仮定すると、例外が発生します。では、それを検証する方法。

4

1 に答える 1

0

キャストしたときに長くなることが確実でない場合は、代わりに TryParse を使用できます。

long projectId;
if(long.TryParse(context.Request.Params["projectId"], out projectId)
{
    if (projectId > 0)
        SerializeResults(getReportGroups(projectId), null, false, context);
    else
    {
        ThrowInvalidProjectIdException(projectId);
    }
}
else
{
    //Handle the case where projectId could not be parsed as a long
}
于 2013-06-25T12:15:38.280 に答える