Como vimos no post sobre LINQ to SQL, esta tecnologia nos oferece um grande ganho no desenvolvimento. Tanto em termos de praticidade quanto em termos tempo no desenvolvimento.
Porém existem algumas situações que precisamos utilizar recursos do banco de dados SQL Server e ficamos um pouco restritos. Isso aconteceu comigo, quando estava desenvolvendo uma aplicação de Atendimento On-line que consistia em duas "pontas": O lado do atendente e o lado do cliente. Porém essas pontas estavam hospedadas em servidores web distintos. E havia a necessidade da data atual para controlar o carregamento das mensagem.
O único problema, é que pelo fato da aplicação estar distribuida poderia haver diferença entre as datas desses servidores. A forma que encotrei para evitar isso era utilizar a função getdate() do SQL server.
Mas como fazer isso?
Muito simples!
Basta adicionar o seguinte método à classe data context, como no exemplo abaixo:
public partial class MeuDataContext
{
public DateTime GetDate()
{
return ExecuteQuery<DateTime>("SELECT GETDATE()").First();
}
}
Depois é só acessar o método através da instância do DataContext.
DateTime data = dbContext.GetDate();
Espero que a dica seja útil.