Как настроить подключение SQLCE к приложению Smart Device с помощью эмулятора?

StackOverflow https://stackoverflow.com/questions/3887424

Вопрос

Я создал простой тест, который открывает соединение с sqlce, расположенным на моем рабочем столе.Когда я запускаю режим отладки, он выдает мне, что не может открыть соединение.Я использую ЭМУЛЯТОР Pocket P.C 2003

Это мой тестовый код для приложения на моем Смарт-устройстве.

Строка подключения

private SqlCeConnection conn = new SqlCeConnection("Data Source=C:\\SDB.sdf");

тестовое соединение

public bool test() 
{
    try
    {
        conn.Open();
        {}
        Status.TEXT = "CONNECTED";
    }
    catch (Exception ee) 
    {
        throw ee;
        Status.TEXT = "NOT CONNECTED"; 
    }
    finally
    {
        if (conn.State == ConnectionState.Open) conn.Close(); 
    }
    return true; 
}

Нужно ли что-то настраивать?Спасибо с уважением!

Это было полезно?

Решение

Это правильное поведение.По большинству аспектов эмулятор подобен физическому устройству, подключенному к вашему компьютеру.Он не знает о ваших дисках ПК (вы можете предоставить общий доступ к папке ПК, зайдя в конфигурацию эмулятора) и поэтому не может их видеть.Он также ничего не знает о буквах дисков.

Если вы хотите, чтобы эмулятор использовал файл на вашем компьютере, опять же, вы можете предоставить общий доступ к папке, в которой находится файл, тогда он будет находиться по адресу \storage card\myfile.sdf.Обратите внимание, что общая папка монтируется в эмуляторе как "карта памяти".

Тем не менее, я бы все равно рекомендовал не делать этого, поскольку это вообще не является расширяемым или масштабируемым.Реальное решение не будет запущено на эмуляторе вашего компьютера, не так ли?Что происходит, когда вы тестируете на реальном оборудовании, которое не может совместно использовать папку, подобную эмулятору?Я бы сказал, что вы должны развернуть файл базы данных на своем устройстве, будь то эмулятор или настоящее железо.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top