C# отображать текст на основе возвращенного результата и API

У меня есть запрос ping для и API, и если он успешен, он возвращает и "хорошо", а если нет, он возвращает ошибку. Мне нужна помощь в изменении кода для результата пинга, чтобы отобразить какой-то другой текст, такой как "ваш пинг прошел успешно", и если была ошибка, и для отображения "ваш пинг не удалось", я новичок в программировании.

public partial class API_Menu_Ping : BasePage
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string myCADeveloperKey = ConfigurationManager.AppSettings["CADeveloperKey"];
        string myCAPassword = ConfigurationManager.AppSettings["CAPassword"];

        //Create credentials
        ca.api.APICredentials cred = new ca.api.APICredentials();
        cred.DeveloperKey = myCADeveloperKey;
        cred.Password = myCAPassword;

        //Create the Web Service and attach the credentials
        ca.api.AdminService svc = new ca.api.AdminService();
        svc.APICredentialsValue = cred;

        //call the method

        ca.api.APIResultOfString result = svc.Ping() ;

       PingResult.Text = result.ResultData ;

      }
    protected void PingCaApi_Click(object sender, EventArgs e)
    {

    }
}

2 ответа

Вы просто хотите манипулировать текстом для пользователя. Вам просто нужно if заявление:

if(result.ResultData == "ok") //or whatever a 'yes' result is
   PingResult.Text = "Your ping was successful";
else
   PingResult.Text = "Your ping failed";

или вы можете сократить его с помощью троичного оператора:

PingResult.Text = (result.ResultData == "ok") ? "Your ping was successful" : "Your ping failed";

Мне не очень нравится помещать код, который может врезаться в Page_Load обработчик. Если есть какая-либо ошибка, вы можете ее никогда не увидеть.

Кроме того, с вашими длинными определениями, это отличное место, чтобы ознакомиться с var ключевое слово.

Используя это, я написал бы вашу рутину следующим образом:

public partial class API_Menu_Ping : BasePage
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void PingCaApi_Click(object sender, EventArgs e)
    {
        PingResult.Text = null;

        //Create credentials
        var cred = new ca.api.APICredentials();
        cred.DeveloperKey = ConfigurationManager.AppSettings["CADeveloperKey"];
        cred.Password = ConfigurationManager.AppSettings["CAPassword"];

        //Create the Web Service and attach the credentials
        var svc = new ca.api.AdminService();
        svc.APICredentialsValue = cred;

        //call the method
        var result = svc.Ping();

       PingResult.Text = (result.ResultData == "ok") ? "your ping was successful" : "your ping failed";
    }
}
Другие вопросы по тегам