VB.net重新编码这个IF结构

时间:2017-01-02 05:42:55

标签: vb.net

嗯代码工作..逻辑完全没有问题,但让我告诉你..它是一个UGLY代码片段...试图通过选择..案例,但无法看到一种方式.. < / p>

问题是我需要激活我通过任何OR获得的“警告”但是,没有办法检测到哪个条件没有达到指出...

所以在这里......如果有人能帮我清理它,我会很感激。

var obj = {};
obj[label] = value;
result.push(obj);

2 个答案:

答案 0 :(得分:2)

你可以在没有其他条件的情况下这样做。 通过这种方式,您还可以一次显示所有错误,我认为这些错误更加用户友好:

android:debuggable="false""

答案 1 :(得分:0)

与Marc相似的版本,使用列表来保存错误消息,还列出了要检查的txt_combo_sub_categoria_plato.Text值的列表,这简化了该行 -

    Dim subCategoriaPlatoList As New List(Of String)(New String() {"CARNES", "MARISCOS", "PESCADOR", "PASTAS", "PIZZAS", "HAMBRUGESAS", "SOPAS", "BEBIDAS ALCOHOLICAS", "BEBIDAS SIN ALCOHOL", "POSTRES TORTAS", "MPOSTRES HELADOS"})
    Dim messageStrings As New List(Of String)()

    If (txt_nombre_plato.Text = "") Then
        messageStrings.Add("Completa el Nombre del Platillo")
    End If

    If subCategoriaPlatoList.Contains(txt_combo_sub_categoria_plato.Text) Then
        messageStrings.Add("Selecciona Sub-Categoria del Platillo")
    End If

    If (txt_descripcion_plato.Text = "") Then
        messageStrings.Add("Coloca la descripción del Platillo")
    End If

    If (txt_precio_plato.Text = "") Then
        messageStrings.Add("Coloca el precio del Platillo")
    End If

    If (inflater_imagen = "") Then
        messageStrings.Add("Selecciona la imagen del Platillo")
    End If

    If (chk_estado_contorno.Checked) And Lista_contorno.Items.Count = 0 Then
        MsgBox("Debes Agregar el contorno del Platillo", "Info")
    End If

    valida_blanco = messageStrings.Count = 0
    Dim message = String.Join(Environment.NewLine, messageStrings.ToArray())
    MsgBox(message)