locked
Как программно (не копированием файла БД) сделать копию БД SQL Compact? RRS feed

  • Вопрос

  • Как программно (не копированием файла БД) сделать копию БД SQL Compact? Есть файл .sdf в appdata, по которому надо создать в изолированном хранилище isostore копию со структурой и данными. Но не копированием файла! Т.е. сделать типа MigrateDataToNewDatabase.
    2 июня 2012 г. 20:14

Ответы

  • Удалось в мобильном приложении сделать скорость такую же как в приложении WinForms. Помогли списки:

    List<PhoneCode> phoneCodeList = new List<PhoneCode>();
    ..........
    cnxt.PhoneCodes.InsertAllOnSubmit(phoneCodeList);
    cnxt.SubmitChanges();

    • Предложено в качестве ответа PetrishkoMVP 5 июня 2012 г. 21:45
    • Помечено в качестве ответа Andy V. Solo 6 июня 2012 г. 7:48
    5 июня 2012 г. 11:48

Все ответы

  • Перебором всех записей получается очень долго:
    ..........
    using (ExternalDB cnxt = new ExternalDB(DBConnectionString))
    {
        PhoneCode codes = new PhoneCode();
        codes.PhoneCodes_ID = PhoneCodesID;
        codes.PhoneCodes_Code = elm[0].Trim();
        ..........
        cnxt.PhoneCodes.InsertOnSubmit(codes);
        //
        foreach (..........)
        {
            PhoneRegionsID++;
            //
            PhoneRegion regions = new PhoneRegion();
            regions.PhoneCodes_ID = PhoneCodesID;
            ..........
            regions.PhoneRegions_Region = str.Trim().Replace(" - ", "-"); ;
            cnxt.PhoneRegions.InsertOnSubmit(regions);
        }
        //
        cnxt.SubmitChanges();
    }
    ..........

    У меня две связанных таблицы - главная и подчиненная. В приложении WinForms скорость обработки большая. А на телефоне - очень медленно. Поэтому и спрашиваю - как сделать копию готовой БД?

    4 июня 2012 г. 20:11
  • Удалось в мобильном приложении сделать скорость такую же как в приложении WinForms. Помогли списки:

    List<PhoneCode> phoneCodeList = new List<PhoneCode>();
    ..........
    cnxt.PhoneCodes.InsertAllOnSubmit(phoneCodeList);
    cnxt.SubmitChanges();

    • Предложено в качестве ответа PetrishkoMVP 5 июня 2012 г. 21:45
    • Помечено в качестве ответа Andy V. Solo 6 июня 2012 г. 7:48
    5 июня 2012 г. 11:48
  • Спасибо, что выложили решение проблему.


    Для связи [mail]

    6 июня 2012 г. 8:26