2017-04-13 2 views
-2

je veux vérifier si la date aujourd'hui est égale à la date dans le tableau de données d'accès, mais il est dit que vous ne pouvez pas convertir la chaîne en "système .data. Tableau de données" que dois-je faire?Comment vérifier la date actuelle avec la date dans le datatable?

public void ToDay() 
{ 
    DateTime dateTime = DateTime.UtcNow.Date; 
    string d = (string)Session["gouser"]; 

    DataTable t; 
    t="SELECT * FROM [ToDoList] where [UserID]='" 
     + d + "' AND [D]='" 
     + **dateTime.Date** + "'"); 
} 
+6

Une chaîne n'est pas un DataTable. Vous devez ouvrir une connexion pour accéder, créer un adaptateur, puis remplir une datatable avec votre commande sql. C'est trop large pour expliquer dans les détails requis. Veuillez rechercher un tutoriel sur ADO.NET – Steve

+1

Vous avez déclaré t comme un DataTable. Ensuite, vous lui allouez une chaîne. Google comment utiliser un lecteur de données. – Matt

Répondre

1

Si vous êtes toujours allez utiliser la date actuelle, vous pouvez utiliser l'accès Date() fonction au lieu de remplir une variable et en passant dans.

public void ToDay() { 
    string d = (string)Session["gouser"]; 

    var query = " 
     SELECT * FROM [ToDoList] 
     WHERE [UserID]='" + d + "' 
     AND [D]= Date();"; 

    DataTable t = query.CopyToDataTable(); 
} 
+0

Vous vous rendez compte que vous ne compilerez toujours pas ... vous essayez d'assigner une chaîne à un objet 'DataTable' –

+0

@Rufus, Mieux vaut maintenant? –

0

vous pouvez utiliser GETDATE() fonction sql:

public void ToDay() 
{ 
    string d = (string)Session["gouser"]; 

    DataTable t; 
    t="SELECT * FROM [ToDoList] where [UserID]='" 
    + d + "' AND [D]= GETDATE()"; 
} 
+0

Ceci est Access, pas SQL Server, aussi, GetDate() renvoie la date et l'heure qui ne correspondent pas à un champ Date uniquement –