WebアプリケーションにDirectory.GetFilesとDirectory.GetDirectoriesを使用してUIを生成する単純なファイルセレクタがあります。これは私のlocalhostで完全に動作しますが、Windows Server 2003ホストにアップロードすると、同じディレクトリにあるGetFilesは動作しますが、GetDirectoriesは表示されません。Directory.GetFilesが動作し、同じディレクトリにDirectory.GetDirectoriesがありません
コードは非常に簡単です - 文字列のディレクトリは、その後、Server.MapPathの呼び出しによって作成された、とされています。私はすべてを試してみました
List<string> dirs = Directory.GetDirectories(dir).ToList();
List<string> files = Directory.GetFiles(dir).ToList();
私はセキュリティワイズと考えることができます。 Webルート内のすべてのディレクトリに "Everyone"が完全にアクセスできるようにすることさえできます。
セキュリティに問題がない場合は、もっと試してみることをおすすめします。
アップデート:私はかなり間抜けだ - HTMLを吐き出しコードがそう気づいた、削除されていなかったローカル上の任意の違いを作ったが、それはすべてのディレクトリを起こしていなかったいくつかの非常に古いテストコードが含まれていサーバー上で無視される!それが何だった?サーバー上で
if (!subDir.Contains(".")) { ...
、すべてのサイトが自分のドメインで指定されたフォルダにある - ローカルで、そうではありません。私は==愚かです。ごめんなさい!