Это зависит от браузера.
Большинство браузеров (FF, Chrome, Safari) не отправляют эту информацию, в основном, из соображений безопасности.Однако создается впечатление, что некоторые версии IE отправляют полный путь клиента.
Это значение будет храниться в свойстве FileName
HttpPostedFile
.
Должна помочь документация для FileName
. В нем говорится:
FileName: имя файла клиента, включая путь к каталогу.
В следующем коде postedFile.FileName
зависит от браузера.Поэтому важно всегда извлекать только имя файла, и вам также может повезти и вы получите clientPath
.
public ActionResult UploadFile(HttpPostedFile postedFile) {
var clientPath = IO.Path.GetDirectoryName(postedFile.FileName);
var filename = IO.Path.GetFileName(postedFile.FileName);
... Save the file, etc ...
}