Hola.
Podrías hacer lo siguiente:
1.- Agregar un TextBox a tu página, ejemplo:
<asp:TextBox ID="nombrePrimerArchivo" Runat=server></asp:TextBox>
2.- Agrega un input file a tu pagina, ocultalo y en el evento onChange has que guarde su valor en la caja te texto, ejemplo:
<input id="primerArchivo" type="file" style="VISIBILITY: hidden; POSITION: absolute; TOP: -300px" onChange="document.all.nombrePrimerArchivo.value = this.value;">
3.- Agrega un imput button a tu página y en el evento onClick haz que llame al metodo Click() del input file para que te permita seleccionar un archivo.
<input type="button" value="Primer Archivo" onclick="document.all.primerArchivo.click();">
Lo anterior mostrara una caja de texto y un boton, al dar click en el boton aparecera el cuador de dialogo que permite seleccionar un archivo, y su valor se guardara en la caja de texto, y esta caja de texto como todo control de servidor guarda su estado, y cuando necesites recuperar el nombre del archivo seleccionado lo tomas directamente de la caja de texto, ejemplo:
string nombreArchivo = nombrePrimerArchivo.Text;
Yo le he utilizado y funciona muy bien.
Aquí el código completo:
<asp:TextBox ID="nombrePrimerArchivo" Runat=server></asp:TextBox>
<input id="primerArchivo" type="file" style="VISIBILITY: hidden; POSITION: absolute; TOP: -300px" onChange="document.all.nombrePrimerArchivo.value = this.value;">
<input type="button" value="Primer Archivo" onclick="document.all.primerArchivo.click();">
Espeor te sirva.