2015-08-27 2 views
-1

Я работаю с локальной базой данных в приложении Windows Form, и я пытаюсь реализовать источник для базы данных как DataDirectory, поэтому на случай, если я переведу db с одного компьютера на другой, это будет работать нормально. Я написал следующий код, но я получаю эту ошибку, что значение не может быть нулевым, в строке, где он получает Fullpath. Благодаря !Значение не может быть нулевым. Имя параметра: путь

var dataDirectory = ConfigurationManager.AppSettings["DataDirectory"]; 
var absoluteDataDirectory = Path.GetFullPath(dataDirectory); 
AppDomain.CurrentDomain.SetData("DataDirectory", absoluteDataDirectory); 
var connString = (@"Data Source= |DataDirectory|\Angajati.sdf"); 
+7

Посмотрите на ошибку на мгновение. Это уже говорит вам, что именно не так. – hvd

+0

Почему бы вам не получить его из строки строки подключения внутри вашего app.config? –

+0

Я знаю, что говорит об ошибке. Но я не знаю, как это решить. – Ezekiel

ответ

1

Вы должны иметь этот раздел в вашем app.config:

<appSettings> 
    <add key="DataDirectory" value="DataDirectoryPath"/> 
</appSettings> 

Кстати для доступа DataDirectory вы должны использовать этот код:

AppDomain.CurrentDomain.GetData("DataDirectory") 

more info.

+0

Работы. Показывает, что путь правильный, но он не вставляется в db. Я имею в виду. Он идет до пункта/Debug, но затем вводит папку с именем DataDirectoryPath. Зачем? – Ezekiel

Смежные вопросы