Domanda

Ho un'applicazione web che ho caricato utilizzando IIS. Voglio che gli utenti che utilizzano l'applicazione sarebbe in grado di selezionare un file che si trova sul loro (l'utente) computer e leggere il suo contenuto.

Il codice è:

TextReader trs = new StreamReader(faFile.Value);
            DataAccessLayer.clearFA();
            string line = trs.ReadLine();
            // Read all unneeded data 
            while (line != "** Start Data **")
            {
                line = trs.ReadLine();
            }
            line = trs.ReadLine();
            while (line != null)
            {
                string[] words = line.Split('*');
                // There is no message
                if (words[4] == "")
                {
                    DataAccessLayer.insertIntoFA(Int32.Parse(words[1]), words[3].Replace("'", ""));
                }
                else
                {
                    DataAccessLayer.insertIntoFA(Int32.Parse(words[1]), words[4].Replace("'", ""));
                }
                line = trs.ReadLine();
            }         
        }

Quando eseguo dal mio pc funziona. Ma quando provo a farlo funzionare dal IIS mi dà il seguente errore:

Could not find a part of the path 'C:\Documents and Settings\myUser\Desktop\file.txt'. 

Capisco che la sopraelevazione un'applicazione di leggere il file dal PC dell'utente. Qualsiasi idea di come posso farlo funzionare?

Grazie!

Greg

È stato utile?

Soluzione

Questo è fatto per motivi di sicurezza -. Un browser non ha accesso al file system degli utenti

Non v'è alcun modo per ovviare a questo, come tutte le altre tecnologie in esecuzione all'interno di un browser, presentano questa funzionalità e limitati (ancora una volta, per motivi di sicurezza).

Il più vicino si può ottenere è di utilizzare un <input type="file"> che consente all'utente di selezionare un file da caricare.

Altri suggerimenti

il percorso del file caricati in IE 8 è un percorso completo. È possibile ottenere il nome del file dal nome completo. Combinare percorso del server e il nome del file prima di salvataggio del file

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top