Comparando datas, dá um erro, não sei como resolver.

04/12/2006

0

Olá pessoal, to comessando a estudar o C#, fiz uma class usando o Visual Studio.Net 2005 daí salvei como teste.cs

Fui em Iniciar | Executar | cmd

Abri a janelinha do DOS e compilei esse codigo do teste.cs gerando um teste.exe.

Só que ao compilar da erro a linha que da erro é essa: if (DateTime.Now.ToShortDateString() = ´12/4/2006´)

Segue o codigo:
using System;

class hello {
    public static void Main() {
        int i, res;
        for (i=0; i <= 20; i++) {
            res = i * 2;
                System.Console.WriteLine("Numero exibido ", res);
        }
        Console.WriteLine("Fim !");
        Console.WriteLine();
        Console.WriteLine(DateTime.Now.ToShortDateString(), "teset");

        if (DateTime.Now.ToShortDateString() = "12/4/2006") {
            Console.Write("sim");
        }
    }

}


Daí dá esse erro:
hello.cs(14,13): error CS0131: The left-hand side of an assignment must be a
        variable, property or indexer
hello.cs(14,13): error CS0029: Cannot implicitly convert type ´string´ to ´bool´


Porque ele dá esse erro de convert type ´string´ to ´bool´

Valeu


Dataset

Dataset

Responder

Posts

04/12/2006

Massuda

No if, use ´==´ ao invés de ´=´. Em C e seus derivados, ´==´ significa ´comparar se é igual´ enquanto ´=´ significa ´atribuir valor´.


Responder

04/12/2006

Dataset

Funcionou... valeu mano ...

Puts... só mais uma duvida, se for igual a data X, entra no if, como eu faço pra, após entrar no if, chamar uma outra class?
Eu to comparando na class hello, correto ? Mas se for igual, preciso chamar outra class:

GravaData {
    entrar aqui se a data for igual (chamado pela class hello)
}


Valeu pela ajuda mano... to aprendendo a programas, então tive essa dúvida.

Valeu.


Responder

04/12/2006

Dataset

Eu fiz assi, mas nao funcinou:

using System;

class hello {
    public static void Main() {
        int i, res;
        for (i=0; i <= 20; i++) {
            res = i * 2;
                System.Console.WriteLine("Numero exibido ", res);
        }
        Console.WriteLine("Fim !");
        Console.WriteLine();
        Console.WriteLine(DateTime.Now.ToShortDateString(), "teset");

        if (DateTime.Now.ToShortDateString() == "12/4/2006") {
            gravadata(DateTime.Now.ToShortDateString());
        }
    }

}

class gravadata {
    public static string Grava( string s) {
        Console.Write("Entrou aqui.");
    }
}


Falow...


Responder

04/12/2006

Massuda

No seu exemplo, gravadata não precisava ser uma classe. Não trabalho com C#, mas acho qeu ficaria assim...
...
if (DateTime.Now.ToShortDateString() == "12/4/2006") { 
            gravadata.Grava(DateTime.Now.ToShortDateString()); 
        } 
...



Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar