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());
}
...