【发布时间】:2017-10-18 16:27:04
【问题描述】:
我正在尝试在 pcl 项目中的 xamarin(C#) 上构建一个 sqlite 数据库。我正在关注this 教程。在 Android 实现(Step5)上,我收到以下错误:
错误 CS0104 'Environment' 是 'Android.OS.Environment' 和 'System.Environment' AlarmSQLite.Android c:\users\thomas\source\repos\AlarmSQLite\AlarmSQLite\AlarmSQLite.Android\SQLite_Android 之间的模糊引用。 cs 30 活跃
错误 CS0234 名称空间“SQLite”中不存在类型或名称空间名称“Net”(您是否缺少程序集引用?)AlarmSQLite.Android c:\users\thomas\source\repos\AlarmSQLite\AlarmSQLite\AlarmSQLite .Android\SQLite_Android.cs 33 激活
我使用 VisualStudio2017。我试图删除 .Net 并添加了 System.Environment 但我得到了更多新的错误。 我的代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Android.App;
using Android.Content;
using Android.OS;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using SQLite;
using Xamarin.Forms;
using AlarmSQLite.Droid;
using System.IO;
[assembly: Dependency(typeof(SQLite_Android))]
namespace AlarmSQLite.Droid
{
public class SQLite_Android : ISQLite
{
public SQLite_Android() { }
public SQLite.SQLiteConnection GetConnection()
{
var dbName = "AlarmDB.db3";
var documentsPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
var path = Path.Combine(documentsPath, dbName);
var platform = new SQLite.Net.Platform.XamarinAndroid.SQLitePlatformAndroid();
var connection = new SQLite.Net.SQLiteConnection(platform, path);
return connection;
}
}
}
教程的一切都是一样的。我究竟做错了什么?谢谢!
新错误:
错误 CS0234 命名空间“SQLite”中不存在类型或命名空间名称“Platform”(您是否缺少程序集引用?)AlarmSQLite.Android C:\Users\Thomas\source\repos\AlarmSQLite\AlarmSQLite\AlarmSQLite .Android\SQLite_Android.cs 33 激活
错误 CS0029 无法将类型“SQLite.Net.SQLiteConnection”隐式转换为“SQLite.SQLiteConnection”AlarmSQLite.Android C:\Users\Thomas\source\repos\AlarmSQLite\AlarmSQLite\AlarmSQLite.Android\SQLite_Android.cs 36 Active
【问题讨论】:
标签: c# android sqlite xamarin cross-platform