2011-05-02 3 views
4

Q:DropDownList selectedvalue et tables

Bonjour, J'ai une liste déroulante et j'ai deux erreurs.

Erreur # 1: Mon exigence est de sélectionner le nom de la réunion du dropdownlist, l'enregistrer dans une chaîne et en utilisant cette chaîne plus tard. Je veux obtenir la valeur de champ (qui me donne le chemin où les dossiers sont stockés) de la table de base de données.

Le code:

string selected = DropDownList1.SelectedValue.ToString(); 

var query = from meet in db.Meets 
      where meet.Summary = selected 
      select meet.Doc_Path; 

Je reçois une erreur à "where meet.Summary=selected" et il dit

"ne peut pas convertir implicitement chaîne de type bool"

Erreur n ° 2: Je souhaite utiliser la valeur Doc_Path obtenue par la requête. Je ne suis pas sûr de la syntaxe et donc obtenir une erreur quand je l'ai essayé.

Le code:

string[] dirs = Directory.GetDirectories(query); 

S'il vous plaît aider.

Répondre

2

Erreur # 1- Je pense que vous avez besoin == au lieu de simplement =

string selected = DropDownList1.SelectedValue.ToString(); 

var query = from meet in db.Meets 
      where meet.Summary == selected 
      select meet.Doc_Path; 

Erreur # 2- Vous devrez peut-être à l'utilisateur Server.MapPath

String FilePath; 
FilePath = Server.MapPath(query); 

ou, combiner les

string selected = DropDownList1.SelectedValue.ToString(); 

var query = from meet in db.Meets 
      where meet.Summary == selected 
      select Server.MapPath(meet.Doc_Path); 

string[] dirs = Directory.GetDirectories(query); 
+0

Salut, Merci. La première erreur a été résolue mais ne prend pas "string [] dirs = Directory.GetDirectories (query);". Le compilateur attend un argument de type chaîne pour GetDirectories. Même si je fais query.ToString() ne fonctionne toujours pas –

+0

sa prise query.ToString() comme une requête SQL où je ne veux pas que ... Je veux que le résultat de la requête soit transmis. –

0

Erreur # 1:

Comme dit précédemment, vous devez utiliser == au lieu de = lors de la comparaison.

Erreur # 2:

Pourquoi utiliser Directory.GetDirectories(query);

la méthode précédente est utilisée pour obtenir les noms des sous-répertoires (y compris leurs chemins) dans le répertoire spécifié.

regard here

je pense que vous n'avez pas besoin de cette méthode, il suffit d'utiliser:

string selected = DropDownList1.SelectedValue.ToString(); 

var query = from meet in db.Meets 
      where meet.Summary == selected 
      select meet.Doc_Path; 

string dirPath = System.Web.HttpContext.Current.Server.MapPath("~") + query.ToString(); 

Assurez-vous que la valeur meet.Doc_Path n'est pas le chemin absolu, magasin seulement le chemin relatif .

Questions connexes