Модераторы: gambit, Kefir, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> WPF + XML 
:(
    Опции темы
antikom
Дата 12.3.2009, 12:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 39
Регистрация: 10.11.2008

Репутация: нет
Всего: 1



Здраствуйте есть броузерное wpf приложение которое работает с xml файлом. Для обращения нужно прописать полны путь к файлу С:/бла бла/File.xml. Как сделать так что бы не прописывать полный путь к файлу а лишь его имя. Файл лежит в файле проекта, все равно вылетает исключение- файл не найден.
Спасибо.
PM MAIL WWW ICQ Skype YIM   Вверх
-Mikle-
Дата 13.3.2009, 03:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 13
Всего: 59



Цитата(antikom @  12.3.2009,  15:43 Найти цитируемый пост)
Файл лежит в файле проекта

Наверно все таки в ПАПКЕ проекта. Это ничего не даст, так как программа работает в другой папке (bin\Debug или bin\Release)

Добавьте файл в сам проект, контекстное меню проекта (не солюшн) Add -> Existing Item (не забудьте в окне выбрать *.*)
После этого, выделите файл в списке файлов проекта и в окне свойств задайте Copy To Output в нужное вам значение. Теперь файл будет автоматом копироваться в папку с EXE'шником. Также вы можете захотеть чтоб ваши файлы лежали во вложенной папке. В этом случае вы можете через то же меню создать папку, а потом через меню папки добавить в нее файл (или Drag&Drop'ом). Теперь эта папка будет автоматом создаваться в папке с EXE'шником ос всеми файлами в ней у которых задано свойство Copy To Output в соответствующее значение.


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
antikom
Дата 13.3.2009, 12:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 39
Регистрация: 10.11.2008

Репутация: нет
Всего: 1



-Mikle-, Cпасибо за ответ. Делал все также. Но на строчке
Код

     XElement element = XElement.Load(@"\Data\UserDb.xml");


Вылетает исключение:Не удалось найти часть пути "C:\Data\UserDb.xml".
PM MAIL WWW ICQ Skype YIM   Вверх
Человек01
Дата 13.3.2009, 22:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 20.2.2009
Где: Абакан, респ. Хак асия, Россия

Репутация: 2
Всего: 2



Если я правильно понял, то рядом с исполняемым.exe расположена папка Data, в которой находится нужный UserDb.xaml его и нужно получить.
Если так, то можно поступить следующим способом:
Код

String path=""+Directory.GetCurrentDirectory()"+"\\Data\\UserDb.xml";
XElement element = XElement.Load(path);

Пользуемся и говорим Человеку спасибо  smile 

P.S.: Если же папка Data с файлом UserDb.xaml являются частью проекта, то сам задаюсь вопросом

Это сообщение отредактировал(а) Человек01 - 13.3.2009, 22:09
PM MAIL ICQ   Вверх
PashaPash
Дата 13.3.2009, 22:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 2
Всего: 49



Человек01, с Directory.GetCurrentDirectory() поимеются проблемы после первого же OpenFileDialog smile. Вместо него юзать Path.GetDirectoryName(Application.ExecutablePath).  Вместо плюса - юзать Path.Combine. 
А в твоем топике правильный ответ - во втором куске ты сначала все вычитываешь из стрима ридером, а потом пытаешься из этого же стрима загрузить xaml. Потому и падает с root element is missing... И вообще - какой у тебя compile action для main.xaml?


--------------------
PM MAIL WWW   Вверх
Человек01
Дата 13.3.2009, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 20.2.2009
Где: Абакан, респ. Хак асия, Россия

Репутация: 2
Всего: 2



PashaPash, про Directory.GetCurrentDirectory() совсем забыл про фишку с OpenFileDialog, спасибо, что поправил.
А со своей проблемкой  я уже разобрался и Reader там был не причем  smile 

Это сообщение отредактировал(а) Человек01 - 13.3.2009, 22:38
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | WPF и Silverlight | Следующая тема »


 




[ Время генерации скрипта: 0.0434 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.