Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"Filen finnes ikke" #12

Open
neslekkim opened this issue Apr 17, 2024 · 5 comments
Open

"Filen finnes ikke" #12

neslekkim opened this issue Apr 17, 2024 · 5 comments

Comments

@neslekkim
Copy link

Forsøker å kjøre console applikasjonen, og får feilmelding slik:

Episode: Filen finnes ikke.
Tjeneste: Filen finnes ikke.

Jeg forsøker da med parameter slik, ingen av disse fungerer
--episoder="cost per encounter.csv"
--episoder=".\cost per encounter.csv"
--episoder=encounter.csv

Jeg har pakket ut console appen et annet sted, og sitter ikatalogen der filene ligger, vil jo tro at appen kan lese fra mappen jeg er i, og at vi ikke må ha app og filer i samme katalog?, evt, om jeg må ha full sti for filen?

@neslekkim
Copy link
Author

Ser ut som jeg må ha full path til filene som skal leses, den klarer ikke å lese filer i samme katalog som jeg står i.

@aeldhuset
Copy link
Collaborator

Hei,

Du har rett i at du enten må ha app og filer i samme katalog, eller må angi full sti.

Logikken som produserer "Filen finnes ikke" er et kall til File.Exists(...) som returnerer false. Ifølge dokumentasjonen:

The path parameter is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory.

Jeg tolker det derfor sånn at current working directory settes til konsollapplikasjonens lokasjon når du angir applikasjonsstien, uavhengig av hvor du kjører applikasjonen fra. (Dersom jeg legger episode- og tjeneste-filer i samme mappe som applikasjonen og kjører applikasjonen fra en annen lokasjon, finner den filene med relativ sti ("episode.csv", "tjeneste.csv").)

@neslekkim
Copy link
Author

Hvis du lager en snarvei til en applikasjon på desktopen din, så kan du angi working directory, det er da katalogen appen skal kjøre i, som er forskjellig fra der appen normalt er installert.
Samme på commandolinja, man installerer en app i en katalog, setter env path variabelen til å peke på denne katalogen, også kjører man i datakatalogen (alt i en katalog er jo litt rot).
Men etter å ha testet dette, så må jeg ha full path altid, og når jeg hadde relativ path på output filnavnet, så havnet output fila i katalogen der jeg hadde lagt programmet.
Ble en kommandolinje på 600 tegn for å kjøre en fil :)

@neslekkim
Copy link
Author

Jeg vil tro denne linja forkludrer det at File.Exists ikke oppfører seg som tenkt, siden denne setter Currect Working directory til pathen der programmet ligger..
Directory.SetCurrentDirectory(AppDomain.CurrentDomain.BaseDirectory);

@aeldhuset
Copy link
Collaborator

Ah, du har helt rett. Current working directory settes av programmet. Det er for at den skal finne ressursfilene i Resources-mappa som følger med i zip-fila.

Dette kan nok løses annerledes i programmet slik at man faktisk kan bruke relative filstier, men det vil ikke være en prioritert oppgave å gjøre en slik endring nå. Jeg legger inn et ønske om det i backloggen. Enig i at 600 tegn er unødvendig mye!

Har lagt inn en setning om filstier i brukerveiledningen, som det er linket til fra releasen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants