Dans un projet d'application Windows Store Je lisais un fichier comme ceci:Lire un fichier dans la bibliothèque de classe WinRT
var uri = new Uri("ms-appx:///DataModel/Accounts.csv");
var file = await StorageFile.GetFileFromApplicationUriAsync(uri);
var read = await FileIO.ReadTextAsync(file);
Le fichier Accounts.csv
a été ajouté à l'action de construction content
.
J'ai maintenant déplacé le code dans une bibliothèque de classes séparée. Le fichier est toujours ajouté avec la commande Action content
.
Mais le système uri ne semble plus fonctionner.
J'ai aussi essayé:
var file = await StorageFile.GetFileFromPathAsync("/DataModel/Accounts.csv");
var read = await FileIO.ReadTextAsync(file);
Comment puis-je accéder à un fichier dans une bibliothèque de classes WinRT? La bibliothèque de fichiers se comporte-t-elle différemment du projet d'application Store?
Comme vous le dites correctement votre solution fonctionne dans le cas où l'action de construction est définie sur 'ressource incorporée'. mais j'ai défini l'action de construction sur 'content'. – Marius
Mais l'action de construction 'content' ne fonctionnera pas, vous devez utiliser' embedded resource' s'il s'agit d'une bibliothèque de classes. – Xyroid
S'agit-il d'une nouvelle limitation avec WindowsRT? Dans .Net, il était possible d'ajouter des fichiers aux bibliothèques de classes avec 'content build action' et' copy if newer'. Dans l'assemblage, vous pouvez simplement écrire 'var text = File.ReadAllText (" TextFile1.txt ")' pour accéder au fichier. – Marius