Array
(
)

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

Dataset
   - 04 dez 2006

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:#Código

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 {0}", 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:#Código
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

Massuda
   - 04 dez 2006

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

Dataset
   - 04 dez 2006

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:

#Código

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.

Dataset
   - 04 dez 2006

Eu fiz assi, mas nao funcinou:

#Código

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 {0}", 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...

Massuda
   - 04 dez 2006

No seu exemplo, gravadata não precisava ser uma classe. Não trabalho com C#, mas acho qeu ficaria assim...#Código

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