Liste des Dossiers dans un Répertoire à l'aide de asp.net et C#
.fichier aspx:
<%@ Import Namespace="System.IO" %>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>Explorer</title>
</head>
<body>
<form id="form1" runat="server">
</form>
</body>
</html>
.CS fichier:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
public partial class view2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string path = "~/";
GetFilesFromDirectory(path);
}
private static void GetFilesFromDirectory(string DirPath)
{
try
{
DirectoryInfo Dir = new DirectoryInfo(DirPath);
FileInfo[] FileList = Dir.GetFiles("*.*", SearchOption.AllDirectories);
foreach (FileInfo FI in FileList)
{
Console.WriteLine(FI.FullName);
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
Je veux la liste des dossiers dans un répertoire particulier, mais elle ne cesse de montrer une page vierge.Quelqu'un peut dire quel est le problème dans le code.
OriginalL'auteur Naresh | 2011-05-18
Vous devez vous connecter pour publier un commentaire.
Affichage des répertoires et des fichiers sur une page blanche
oui, l'utilisation
HttpContext.Current.Server.MapPath(StringPathInSolution)
, cependant, comme le chemin d'accès à votre projet est statique et donc connus vous pourriez retirer de la chaîne?il ne pas extraire les fichiers dans mon cas
OriginalL'auteur benwasd
Ne pas utiliser
Console.WriteLine()
utilisationResponse.Write()
. Vous tentez d'écrire dans la console, dans une application web.Quelle est l'erreur?
J'obtiens cette erreur : Une référence d'objet est requise pour la non-statique champ, une méthode ou une propriété du Système".Web.L'INTERFACE utilisateur.Page.Réponse.get'
Oh, supprimer
static
deprivate static void GetFilesFromDirectory(string DirPath)
. Vous n'en avez pas besoin dans ce cas.Si cela ne fonctionne pas pour vous, et Benjamin en fait, vous devriez le prix de la réponse à lui, pas à moi. Je suis sûr qu'il serait capable de vous aider avec son code. 🙂
OriginalL'auteur Richard Marskell - Drackir
De la Console.WriteLine va écrire dans la console, pas le contenu de la page web que vous êtes de retour. Vous avez besoin d'ajouter un élément de conteneur à votre page ASPX, probablement un affichage en grille ou d'un répétiteur, puis ajouter affecter la liste des fichiers à partir du fichier code-behind (à l'élément HTML que vous avez ajouté, utilisez le runat= "server" de la balise et de lui affecter un ID, puis de référence par le nom de l'ID dans le code).
OriginalL'auteur toby
Réponse.Écrire dans une statique de code-behind de la méthode: SALE! En outre, vous n'avez pas de contrôle sur la position où vous écrivez. Un peu plus propre...
<li>
et<ul> mixed up. Also, I do agree with you but the user seems to just be doing something basic right now (the page is blank and there's nothing else in the code-behind) so I didn't really see the point of getting into perfecting the display. Also, I didn't even notice that the method was
statique`, de bons yeux. 🙂Je vous remercie beaucoup.Je suis très nouveau pour le codage.
Il a travaillé de cette façon.Pouvez-vous dire comment faire pour afficher les dossiers.
commeon! essai et d'erreur... la caisse d'un asp.net didacticiel.
S'il vous plaît dites-moi ce.Je veux juste afficher les dossiers dans un répertoire(pas de sous-dossiers).Dans votre code en remplaçant les Fichiers avec des Répertoires de donner à chaque dossier.
OriginalL'auteur benwasd