Sto cercando di estrarre il nome del progetto utilizzando il reflection, ma durante il metodo della sottostringa mi dà "index out of bound error".Ottenere l'esecuzione del nome dell'assieme utilizzando la riflessione
string s = System.Reflection.Assembly.GetExecutingAssembly().Location;
int idx = s.LastIndexOf(@"\");
s = s.Substring(idx, s.Length);
Non capisco perché sta dando errore sulla terza riga.
Aiuto Plz.
Chiarire nome del progetto. Il codice non contiene nomi di progetti. – leppie
Hanno inventato i punti di rottura qualche tempo fa ... –
Supponiamo che la lunghezza del percorso sia di 15 caratteri, s.La lunghezza sarà 15. La sottostringa con 2 parametri accetterà l'indice iniziale e la lunghezza, NON l'indice di arresto. Quindi, nel tuo esempio, stai cercando di ottenere 15 caratteri dall'indice di inizio, quindi ottieni l'indice fuori limite. Se si insiste a utilizzare la sottostringa, è necessario modificare il secondo parametro in s.Length-idx, altrimenti, utilizzare System.IO.Path.GetFileName come suggerito di seguito. Intendiamoci, il tuo metodo restituirà \ anche, quindi vuoi veramente idx + 1, s.Length - idx - 1 –