O Visual Studio não reconhece a parte do GetFolderPath
no projeto Android.
Environment.GetFolderPath(Environment.SpecialFolder.Personal)
No Android é diferente?
O Visual Studio não reconhece a parte do GetFolderPath
no projeto Android.
Environment.GetFolderPath(Environment.SpecialFolder.Personal)
No Android é diferente?
Oi Luis!
Pra sua sorte, eu também fiz esse curso e tenho o código aqui na minha máquina :-)
Provavelmente o Visual Studio está pegando essa classe Environment
de outro namespace. Isto é, o Environment
que você está vendo pode não ser o mesmo Environment
que é usado no curso.
De qualquer forma, estou colocando aqui o código inteiro da minha classe SQLite_android.cs
, que funcionou comigo.
using AluraNutricao.Data;
using AluraNutricao.Droid;
using SQLite;
using System;
using System.IO;
using Xamarin.Forms;
[assembly: Dependency(typeof(SQLite_android))]
namespace AluraNutricao.Droid
{
public class SQLite_android : ISQLite
{
public SQLite_android()
{
}
public SQLiteConnection GetConnection()
{
var sqliteFilename = "Refeicao.db3";
string documentsPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal); // Documents folder
var path = Path.Combine(documentsPath, sqliteFilename);
var conn = new SQLite.SQLiteConnection(path);
return conn;
}
}
}
um abraço
ahhh entendi. Obrigado.
Aproveitando o assunto. Como ficaria essa classe para UWP? Tentei o código abaixo mas não funcionou... diz que não pode abrir o arquivo db3.
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Windows.Storage;
using Refeicao.Data;
using Refeicao.UWP;
using SQLite.Net;
using System.IO;
using SQLite.Net.Platform.WinRT;
using Xamarin.Forms;
[assembly:Dependency(typeof(SqLiteUwp))]
namespace Refeicao.UWP
{
public class SqLiteUwp : ISqLite
{
public SqLiteUwp() { }
public SQLiteConnection Connection()
{
var fileName = "Refeicoes.db3";
var documents = ApplicationData.Current.LocalFolder.ToString();
var path = Path.Combine(documents, fileName);
return new SQLiteConnection(new SQLitePlatformWinRT(), fileName);
}
}
}