Quantcast
Channel: Recent Threads — Xamarin Community Forums
Viewing all articles
Browse latest Browse all 204402

Getting "Unhandled Exception: System.NotSupportedException"

$
0
0

Based on Xamarin University course sample, implementing SQLite usage in an app where I am getting the exception "Unhandled Exception: System.NotSupportedException: Don't know how to read AppPrefs.Models.Settings occurred"

My App.xaml.cs:

using System;
using System.IO;
using Xamarin.Forms;
using Xamarin.Forms.Xaml;

[assembly: XamlCompilation(XamlCompilationOptions.Compile)]
namespace AppPrefs
{
    public partial class App : Application
    {
        internal static SettingsDatabase SettingsDB;

        public App()
        {
            InitializeComponent();

            SettingsDB = SettingsDatabase.Initialize(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "SettingsSQLite.db3"));

            //MainPage = new MainPage();
            MainPage = new NavigationPage(new MainPage())
            {
                BarBackgroundColor = Color.Indigo,
                BarTextColor = Color.White
            };
        }

        protected override void OnStart()
        {
            // Handle when your app starts
        }

        protected override void OnSleep()
        {
            // Handle when your app sleeps
        }

        protected override void OnResume()
        {
            // Handle when your app resumes
        }
    }
}

My SettingsDatabase.cs

using AppPrefs.Models;
using SQLite;

namespace AppPrefs
{
    public class SettingsDatabase
    {
        private SQLiteAsyncConnection dbConn;
        public static SettingsDatabase instance;

        public SettingsDatabase() { }

        public SettingsDatabase(string dbPath)
        {
            dbConn = new SQLiteAsyncConnection(dbPath);
            dbConn.CreateTableAsync<Settings>().Wait();
        }

        public static SettingsDatabase Initialize(string filename)
        {
            if (instance != null)
                instance.dbConn.GetConnection().Dispose();

            instance = new SettingsDatabase(filename);

            return instance;
        }
    }
}

My Settings.cs:

using SQLite;

namespace AppPrefs.Models
{
    [Table ("settings")]
    public class Settings
    {
        [PrimaryKey, AutoIncrement]
        public int Id { get; set; }
        public string strSettings { get; set; }
    }
}

Viewing all articles
Browse latest Browse all 204402

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>