Предоставление нескольким сборкам доступа к одному текстовому файлу - PullRequest
0 голосов
/ 19 сентября 2008

У меня много сборок / проектов в одном и том же c # /. Net решении. Пользователи должны использовать настройку, использующую графический интерфейс веб-приложения, а затем консольное приложение и некоторые тестовые проекты должны получить доступ к одному и тому же файлу. Куда мне положить файл и как получить к нему доступ?

Я пытался использовать "AppDomain.CurrentDomain.BaseDirectory", но это оказалось другим для моих сборок. Также «System.Reflection.Assembly.Get * Assembly.Location» не в состоянии дать мне то, что мне нужно.

Может быть, это не то, что я должен, а в файле, а скорее в базе данных? Но это так сложно сделать для нескольких строк конфигурации.

Ответы [ 4 ]

3 голосов
/ 19 сентября 2008

Поместите файл в

    Path.Combine(
        Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData),
        "[Company Name]\[Application Suite]");
1 голос
/ 19 сентября 2008

Лично я бы использовал базу данных, потому что альтернативой является либо головная боль при настройке, либо большая проблема, чем она стоит.

Вы можете настроить каждое приложение так, чтобы оно указывало на один и тот же файл, но это становится проблематичным, если вы хотите переместить файл. Или вы можете написать сервис для управления файлом и предоставить его клиентам, но на этом этапе вы можете просто использовать БД.

0 голосов
/ 19 сентября 2008

проектов могут иметь события сборки - почему бы не добавить событие после сборки, чтобы скопировать файл во все необходимые места?

0 голосов
/ 19 сентября 2008

Думали о хранении в реестре или в изолированном хранилище? Не уверен, что несколько приложений могут совместно использовать изолированное хранилище или нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...