Hirdetés
- Kis méret, nagy változás a Motorolánál
- Dupla kamerával menekülne az iPhone Air a kaszától
- Android alkalmazások - szoftver kibeszélő topik
- Miért fárad gyorsabban az iPhone akku, mint az androidos?
- Samsung Galaxy S25 - végre van kicsi!
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Megtartotta Európában a 7500 mAh-t az Oppo
- Realme 9 Pro+ - szükséges plusz?
- iPhone topik
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
Új hozzászólás Aktív témák
-
trisztan94
őstag
válasz
Alexios
#5528
üzenetére
Bocsi a megkésett válaszért.
Na, igazából az a helyzet, hogy egy .sqlite fájlt akarok deploy-olni az xap-ban.
Eddig futásidőben hoztam létre az adatbázist, de most megváltozott valami, ezért már külső fájlból kell belerakni. A futásidőben való létrehozás nyilvánvalóan az izolált tárhelyre hozta létre az adatbázist, és pontosan ugyanez kellene nekem.Ezt csináltam:
Behúztam az adatbázist a solutionbe. (Databases/db.sqlite az útvonal)
Jobb klikk rá, Properties->
Build Action -> Content
Copy to output directory -> Copy alwaysNa most, ha jól tudom, ez csak olvasható tárhelyre fogja rakni, tehát írni nem lehet majd. Ami nem jó, ezért ezzel a kóddal, amikor indul app átmásolom az izolált tárhelyre, ahol írni és olvasni is lehet:
public void CopyDatabaseToIsolatedStorage()
{
// Obtain the virtual store for the application.
IsolatedStorageFile iso = IsolatedStorageFile.GetUserStoreForApplication();
// Create a stream for the file in the installation folder.
using (Stream input = Application.GetResourceStream(new Uri("Databases/db.sqlite", UriKind.Relative)).Stream)
{
// Create a stream for the new file in the local folder.
using (IsolatedStorageFileStream output = iso.CreateFile("db.sqlite"))
{
// Initialize the buffer.
byte[] readBuffer = new byte[4096];
int bytesRead = -1;
// Copy the file from the installation folder to the local folder.
while ((bytesRead = input.Read(readBuffer, 0, readBuffer.Length)) > 0)
{
output.Write(readBuffer, 0, bytesRead);
}
}
}
}Ez van a MainPage osztály konstruktorában:
if (!database.IsDbPresent().Result) // Ez egy bool-t ad vissza
{
Debug.WriteLine("Database file not found in Isolated Storage. Copying...");
database.CopyDatabaseToIsolatedStorage();
}Na most az a probléma, hogy ez szépen működik, amíg debug módban emulatorban, vagy telefonon tesztelem. Onnantól kezdve, hogy lehúzom a telefont a gépről és később indítom el, valamiért nem tudja olvasni az adatbázist.
Hogyan kell ezt "rendesen" megoldani? Van ennek egy bevált módszere?

Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Xbox One / Series X Játékok
- Új 2TB 2000GB m.2 Külső SSD, tesztelt, garancia
- ZBook Studio 15 G8 15.6" FHD IPS i7-11850H RTX A2000 32GB 512GB NVMe ujjlolv IR kam gar
- -ÚJ,2 ÉV GAR- DDR5 GAMER PC: RYZEN 5 8400F/9600X +RX 6600/6700XT +16-64GB DDR5! SZÁMLA! 70 féle ház!
- Garanciás - LG C2 55 OLED TV 4K, 120Hz, 2.1 - OLED55C21LA
- Samsung UE75DU7172U 189 cm / 75 4K UHD Smart TV 6 hó garancia Házhozszállítás
- HIBÁTLAN iPhone 13 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3432
- BESZÁMÍTÁS! 64GB(2x32GB) Kingston Fury Beast 3200MHz DDR4 memória garanciával hibátlan működéssel
- 134 - Lenovo Legion Pro 7 (16IRX8H) - Intel Core i9-13900HX, RTX 4090 - 3 év garancia
- Apple iPhone 15 PRO MAX 256 GB White Titanium 1 év Garancia Beszámítás Házhozszállítás
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő



