I am getting a List of below class.

```
 public class SmsResponse
    {
        public string AliasName { get; set; }
        public string CellPhoneNumber { get; set; }
        public int Response { get; set; }
    } 

```

I am passing this list to a function to check if the response field has response other than 0 , if it have than it is a error for which i have to prepare a status string by this method `PrepareStatusString();`. 

```
bool isSuccess = EvaluateSmsResponse(responseList);  //list of smsresponse class

private bool EvaluateSmsResponse(List<SmsResponse> smsResponseList)
    {
        bool isSent = smsResponseList.Exists(response => response.Response != 0);
        if (!isSent)
            PrepareStatusString(smsResponseList);
        return isSent;
    }

     private void PrepareStatusString(List<SmsResponse> responseList)
    {
        bool isfirst = true;
        foreach (var item in responseList)
        {
            if (item.Response != 0)
            {
                if(isfirst)
                    StatusDescription += item.AliasName + "|" + item.CellPhoneNumber + "|" + item.Response.ToString();
                else
                    StatusDescription += "," + item.AliasName + "|" + item.CellPhoneNumber + "|" + item.Response.ToString();

                isfirst = false;
            }
        }
    }

```

The code is working as desired, but can it be optimized/improved in any way. I am feeling there is a scope improvement but not able to figure out ??