Есть ли способ предотвратить перезапись более новых файлов в App_Data при публикации? - PullRequest
2 голосов
/ 17 октября 2008

Я использую XML-файл в App_Data вместе с Repeater на главной странице приложения интрасети, позволяя мне отображать сообщения пользователям при входе в систему о состоянии приложения, обслуживании и т. Д. Для проверки функциональности было бы неплохо чтобы файл находился в разработке в папке App_Data, но если я сделаю это, он скопирует его в файл на рабочем сервере, когда я опубликую приложение. Могу ли я в любом случае предотвратить это, не перейдя в проект веб-развертывания (и это решит мою проблему)?

Ответы [ 3 ]

2 голосов
/ 17 октября 2008

В Visual Studio 2005 я вижу флажок «Включить файлы из папки App_Data», который по умолчанию установлен на. Вы пытались опубликовать с этим флажком не установлен?

РЕДАКТИРОВАТЬ: Учитывая, что этот флажок недоступен для вашего проекта, я хотел бы изучить использование дополнения VS2005 Web Deployment для Visual Studio. Я не использовал его сам, но функции для настройки публикации между режимами отладки и выпуска выглядят многообещающе.

1 голос
/ 30 октября 2008

Другой подход состоит в том, чтобы иметь файл "отладки" и файл "производства" ..

Stream xml;
#if DEBUG
xml = File.Open("debug.xml");
#else
xml = File.Open("release.xml");
#endif

Компиляция в режиме отладки будет использовать файл отладки, компиляция в режиме выпуска будет использовать файл выпуска.

1 голос
/ 17 октября 2008

Чтобы избежать этой проблемы, я бы также развернул локальную «промежуточную» папку, по сути, папку на моем рабочем столе. После того, как файлы были скомпилированы и развернуты в Visual Studio, я удалил файлы, которые меня не интересовали (в вашем случае App_Data), а затем либо XCopy, либо использовал Windows Explorer для копирования файлов на веб-сервер.

Кроме того, я не знаю, как заставить Visual Studio сама опускать эти файлы / папки при развертывании.

...