Операция CRUD на .NET, WPF и Entity FrameworkC#

Место общения программистов C#
Ответить
Anonymous
 Операция CRUD на .NET, WPF и Entity Framework

Сообщение Anonymous »

У меня есть проект «Планирование ресурсов предприятия». Он использует базу данных SQLite. : < /p>

Код: Выделить всё

public class ArtistCollection : ObservableCollection
{
private ChinookdbContext _context;

public ArtistCollection(IEnumerable artists, ChinookdbContext context) : base(artists)
{
_context = context;
}

protected override void InsertItem(int index, Artist item)
{
Context.Artists.Add(item);
base.InsertItem(index, item);
Console.WriteLine("InsertItem");
}

protected override void RemoveItem(int index)
{
Context.Artists.Remove(this[index]);
base.RemoveItem(index);
}

public void Save()
{
try
{
Console.WriteLine("Clienti: Saved N° " + _context.SaveChanges());
}
catch (Exception ex)
{
System.Windows.MessageBox.Show(ex.ToString());
}
}

public ChinookdbContext Context
{
get
{
return _context;
}
}
}
< /code>
Это моя модифицированная сущность: < /p>
public partial class Artist : INotifyPropertyChanged, IEditableObject
{
private Artist backup;
private bool inTransaction;
public event PropertyChangedEventHandler PropertyChanged;

protected void OnPropertyChanged(string name)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name));
}

public void BeginEdit()
{
backup = new Artist();
backup.ArtistId = ArtistId;
backup.Name = Name;
inTransaction = true;
Console.WriteLine("- BeginEdit");
}

public void CancelEdit()
{
if (inTransaction)
{
ArtistId = backup.ArtistId;
OnPropertyChanged(nameof(ArtistId));

Name = backup.Name;
OnPropertyChanged(nameof(Name));

backup = null;
inTransaction = false;
Console.WriteLine("- CancelEdit");
}
}

public void EndEdit()
{
if (inTransaction)
{
OnPropertyChanged(nameof(ArtistId));
OnPropertyChanged(nameof(Name));
backup = null;
inTransaction = false;
Console.WriteLine("- EndEdit");
}
}
}
Все это для одной таблицы. p>
есть более простой способ? < /p>

Подробнее здесь: https://stackoverflow.com/questions/794 ... -framework
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»