Witam, mam mały problem.
Próbuję zuploadować pliki po bożemu(FileStream
, CopyToAsync
i te sprawy) na dysk sieciowy z aplikacji. Lokalnie wszystko działa jak należy, natomiast po opublikowaniu aplikacji wyrzuca error "Access is denied".
Service desk ogarnia dostęp dla serwera, ale mozolnie im to idzie więc chciałem to zrobić inaczej.
Padło na WebClient. Kod jest poniżej:
public IFormFile Image{ get; set; }
(...)
imagename = FileHelper.GenerateFilename(Image.FileName);
var imgsave = Path.Combine(PathHelper.NewsFilePath, imagename);
WebClient client = new WebClient();
client.Credentials = new NetworkCredential("username", "password");
try
{
client.UploadFile(imgsave, Image.FileName);
}
catch (Exception e)
{
}
i lokalnie też śmiga bez problemu, natomiast po opublikowaniu wywala mi błąd:
Error message: System.IO.FileNotFoundException: Could not find file 'C:\inetpub\wwwroot\application\test.PNG'.
File name: 'C:\inetpub\wwwroot\application\test.PNG' at (...)
więc wygląda na to, że po opublikowaniu aplikacja szuka pliku w folderze aplikacji zamiast brać plik z formularza - jak to mogę ogarnąć?
Próbowałem też przez HttpClient, ale szczerze nie mam pojęcia jak to zrobić. Szukam wskazówek na necie to mam same przykłady dot. API i nie wiem jak to przenieść na zgranie pliku na dysk sieciowy