Я пытаюсь создать базу данных с помощью LINQ to SQL программно.
Я пытался (следующий этот ):
MySQLSvrDb db = new MySQLSvrDb(@"c:\mydb.mdf");
if (!db.DatabaseExists())
{
db.CreateDatabase();
}
Но я получаю SQLException «База данных с таким же именем существует, или указанный файл не может быть открыт, или он находится на общем ресурсе UNC».
Однако для модульных тестов я создал базу данных следующим образом (убедившись, что у меня есть пустой БД для каждого теста):
MySQLSvrDb db = new MySQLSvrDb(@"C:\testdb.mdf");
if (db.DatabaseExists())
{
Console.WriteLine("Deleting old database...");
db.DeleteDatabase();
}
db.CreateDatabase();
Это отлично работает. Моя проблема в том, что я не вижу разницы с первым подходом. Возможно, проблема как-то связана с этим , но предложенные решения не сработали.
Есть какие-нибудь намеки?
EDIT
Если я просто пропущу шаг DatabaseExists (), он работает, но мне нужно проверить, есть ли уже Db.