Я скачал пакет sqlite-net-pcl
nuget из Visual Studio, но в моем файле .XAML я получаю следующее исключение:
Невозможно загрузить DLL 'e_sqlite3': указанный модуль не найден (Исключение из HRESULT: 0x8007007E)
специально в строке
<vm:NotesVM x:Key="vm"/>
полный .XAML:
<Window x:Class="EverNoteApp.View.NotesWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:EverNoteApp.View"
xmlns:vm ="clr-namespace:EverNoteApp.ViewModel"
mc:Ignorable="d"
Title="NotesWindow" Height="450" Width="800">
<!--Add reference to View Model-->
<Window.Resources>
<vm:NotesVM x:Key="vm"/>
</Window.Resources>
<Grid>
</Grid>
</Window>
Код для NotesVM
в пространстве имен EverNoteApp.ViewModel
:
using EverNoteApp.Model;
using EverNoteApp.ViewModel.Commands;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
namespace EverNoteApp.ViewModel
{
public class NotesVM
{
private NoteBook m_selectedNotebook;
public NotesVM()
{
NewNoteBookCommand = new NewNoteBookCommand(this);
NewNoteCommand = new NewNoteCommand(this);
NoteBooks = new ObservableCollection<NoteBook>();
Notes = new ObservableCollection<Note>();
}
public NewNoteBookCommand NewNoteBookCommand { get; set; }
public NewNoteCommand NewNoteCommand { get; set; }
/// <summary>
/// Will display notebooks in UI, in list view
/// </summary>
public ObservableCollection<NoteBook> NoteBooks { get; set; }
/// <summary>
/// Notes will be stored in this ObservableCollection every time the
/// SelectedNotebook changes
/// </summary>
public ObservableCollection<Note> Notes { get; set; }
public NoteBook SelectedNotebook
{
get { return m_selectedNotebook; }
set
{
m_selectedNotebook = value;
//TODO: Get notes
}
}
/// <summary>
/// Create a new Note book and add it to the
/// data base
/// </summary>
public void CreateNoteBook()
{
// Create new note book
NoteBook newNoteBook = new NoteBook()
{
Name = "New notebook",
};
// Insert Note book in data base
DataBaseHelper.Insert<NoteBook>(newNoteBook);
}
/// <summary>
/// Create a new Note and add it to the
/// data base
/// </summary>
/// <param name="noteBookId"> The note book unique id </param>
public void CreateNote(int noteBookId)
{
// Create new note
Note newNote = new Note()
{
NotebookId = noteBookId,
CreatedTime = DateTime.Now,
UpdatedTime = DateTime.Now,
Title = "New note"
};
// Insert Note in data base
DataBaseHelper.Insert<Note>(newNote);
}
}
}
Я видел несколько похожих постов, но они были за многие годы go, поэтому я не пытался тратить много времени на чтение темы.
Я использую .NET Framework 4.7.2