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

Я создал простой тест, который открывает соединение sqlce, расположенное на моем настольном ПК. Когда я запускаю "Запустить режим отладки", он выдает, что не может открыть соединение. Я использую Pocket PC 2003 EMULATOR

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

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

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; 
}

Есть вещи, которые необходимо настроить? Спасибо в С уважением!

1 ответ

Решение

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

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

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

Другие вопросы по тегам