[ad_1]
私は C# WPF を使用しています。SQL Server データベースを使用して会計プログラムをプログラミングしています。この会計プログラムでは、テキスト ボックスとコンボボックス要素を含むデータ グリッドで、ユーザーがデータを直接挿入、更新、および削除します。
私が非常に混乱した問題では、データベースに接続してデータ グリッドを介してデータを格納する方法として、どの方法が優れていますか?
私が試したこと:
次のような DataSet と TableAdapter を使用した ADO.NET :
C#
private void LoadData() { nOTELBOOKDBDataSet = ((SIMPLE_MVVM.NOTELBOOKDBDataSet)(this.FindResource("nOTELBOOKDBDataSet"))); // Load data into the table PERSONEL. You can modify this code as needed. nOTELBOOKDBDataSetPERSONELTableAdapter = new SIMPLE_MVVM.NOTELBOOKDBDataSetTableAdapters.PERSONELTableAdapter(); nOTELBOOKDBDataSetPERSONELTableAdapter.Fill(nOTELBOOKDBDataSet.PERSONEL); System.Windows.Data.CollectionViewSource pERSONELViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("pERSONELViewSource"))); pERSONELViewSource.View.MoveCurrentToFirst(); } void SaveData() { NOTELBOOKDBDataSet changes = (NOTELBOOKDBDataSet)nOTELBOOKDBDataSet.GetChanges(); if (changes != null) { //Data has changes. //use update method in the adapter. it should update your datasource int updatedRows = nOTELBOOKDBDataSetPERSONELTableAdapter.Update(changes); nOTELBOOKDBDataSet.AcceptChanges(); } }
2 番目のケース:
C#
public void LoadData() { using (DataModeling.Entities dbms = new DataModeling.Entities()) { var RES = dbms.Database.SqlQuery<HUMANS_TBMODEL>("SELECT ID,NAME,TEL,REMARKS FROM PERSONEL").ToList(); foreach (var item in RES) { MY_ALL_HUMANS.Add(item); } } }
最善かつ最も簡単な方法を教えてください。
解決策 1
DataGrid にバインドされたデータ モデルとのデータ バインディング。 EntityFramework または Dapr は、よりクリーンでシンプルなデータベース フレームワークです。 両方を行う方法を説明する Google 検索可能なチュートリアルがたくさんあります。
[ad_2]
コメント