Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Stiefo

Comparar duas variáveis String

Recommended Posts

Eae Galera,

 

Meu primeiro tópico no fórum, vamos ver se consigo me sair bem rsrs

 

Seguinte, estou fazendo uma pequena aplicação para calcular faturamento e estou encontrando alguns empecilhos. Vou tentar explicar certinho o que eu fiz até agora.

 

Eu criei um TextBox, chamado

txtBox_Venc 

onde vão receber o parâmetro

string DtaVenc = txtBox_Venc.Text;

Criei um Label chamado

lbl_Venc

e por ultimo umas variáveis que ira armazenar a data de hoje

string dHoje = DateTime.Today.Day.ToString();
string mHoje = DateTime.Today.Month.ToString();
string yHoje = DateTime.Today.Year.ToString();

O que o usuário irá fazer basicamente é digitar um numero no txtBox_Venc o sistema irá atribuir a variável string DtaVenc, depois preciso comparar se este numero, que será de 1 a 31(referente a DIAS do mês) é menor ou igual a data de hoje, se for menor ou igual, irá adicionar um mês na data de hoje, supondo que o usuário digite 10 e a data de hoje fosse 28/04/2015, irá mudar para 10/05/2015

se for maior irá pegar o numero inserido pelo usuário e completar com mês e ano atual, supondo que o usuário digite 30 e a data atual fosse 28/04/2015, irá mudar para 30/04/2015.

Estes resultados serão apresentado no Label (lbl_Venc).

 

Um dos problemas que estou tendo é que no momento que coloco um If() e comparo se a variável Dta_Venc é <= dHoje, o visual studio me apresenta uma mensagem que não é possível compara duas string.

 

Alguém poderia me ajudar com esta situação?

 

Abaixo segue o código.

private void btn_Calc_Click(object sender, EventArgs e)
        {
            string dHoje = DateTime.Today.Day.ToString();
            string mHoje = DateTime.Today.Month.ToString();
            string yHoje = DateTime.Today.Year.ToString();
                       
            string DtaVenc = txtBox_Venc.Text;

            if(DtaVenc <= dHoje)
            {
                lbl_Venc.Text = DtaVenc + (mHoje + 1) + yHoje;
            }
        }

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que você deve fazer é usar comparação de inteiros. A propriedade "DateTime.Today.Day" é um inteiro. Então:

string diaDigitado = "30";

if(int.Parse(diaDigitado) <= DateTime.Today.Day)
{
     //Seu código.
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode comparar dois objetos datetime, se você tiver por exemplo:

DateTime hoje = System.dateTime.now;
DateTime venc = new Datetime(10,5,2015);

Você pode comparar:

if(hoje>=venc) ....

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.