我在由sql数据绑定的组合框中有客户端名称。我需要在组合框中添加另一个名为“新客户端”的客户端。我知道如何使用数据集执行此操作,但不确定如何执行此操作。我需要使用“新客户端”和ID = -1添加客户端数据模型类的新实例。
我尝试创建一种创建“新客户端”的方法,但是它总是会覆盖SQL数据,我需要以某种方式将新客户端合并到SQL设置的数据中。
Code to get SQL data into the Client data model.
var clients = new ObservableCollection<Client>();
try
{
using (SqlConnection conn = new SqlConnection(connectionString))
{
conn.Open();
if (conn.State == System.Data.ConnectionState.Open)
{
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "select CLIENT_ID, CLIENT_NAME, EMAIL, ADDRESS_LINE_1, ADDRESS_LINE_2, ADDRESS_LINE_3, ADDRESS_LINE_4, POSTCODE, TELEPHONE_NUMBER from CLIENT";
{
using (SqlDataReader reader = cmd.ExecuteReader())
{
while (reader.Read())
{
var client = new Client
{
clientID = reader.GetInt32(0),
clientName = reader.GetString(1),
clientEmail = reader.GetString(2),
add1 = reader.GetString(3),
add2 = reader.GetString(4),
add3 = reader.GetString(5),
add4 = reader.GetString(6),
postcode = reader.GetString(7),
telephoneNumber = reader.GetString(8)
};
clients.Add(client);
}
}
}
}
}
return clients;
}
}
添加“新客户端”的代码:
public ObservableCollection<Client> newClientRow()
{
var clients = new ObservableCollection<Client>();
var client = new Client
{
clientID = -1,
clientName = "New Client",
clientEmail = "f",
add1 = "f",
add2 = "R",
add3 = "l",
add4 = "F",
postcode = "f",
telephoneNumber = "01244"
};
clients.Add(client);
return clients;
}
将数据绑定到组合框的代码:
public ObservableCollection<Client> Source
{
get
{
daClient daClient = new daClient();
newClientRow();
return daClient.GetClients((App.Current as App).ConnectionString);
}
}
我只获取从SQL创建的数据,我需要合并“新客户端”。
答案 0 :(得分:0)
已修复。
让我感到困惑的是,它是存储数据的数据模型类,但是存储了ObservableCollection。
我要做的就是在数据绑定函数中创建一个新的ObservableCollection变量。使用变量,我将所有SQL数据添加到集合中,然后使用.Add函数将Client数据模型类的新实例(包含“ New Client”)添加到集合中。然后,您可以返回该集合以在组合框中使用。
还有一种非常简单的方式对此进行编码。您可以在更新的代码中看到它。
在创建“新客户端”的函数中,我还必须将返回类型更改为数据模型,这样您可以在调用它时将其添加到集合中。
更新的代码(SQL函数中未更改)
创建新的客户数据:
db = mysql.connector.connect(user='root', password='1234', host='localhost', database='sosyalbe')
cursor = db.cursor()
cursor.execute("SELECT * FROM siparisler WHERE siparis_durum ='İptal'")
order = cursor.fetchone()
id = order[0]
dss = 10
cursor.execute("UPDATE siparisler SET urun_baslangic = '%s' WHERE order_id ='%s'" %dss % id) #errror
cursor.execute("UPDATE siparisler SET urun_baslangic = (?) WHERE id = (?)" (dss, id)) #ERROR
将新的客户端数据和sql数据添加到集合中以进行绑定:
# [IIS] Configure Module elements and properties which are configured in globalModules section
# Case1: List all native modules
(Get-WebConfiguration //globalmodules).collection -PSPath iis:
# Case4: List all of enabled modules from 'server' level
(get-webconfiguration //modules -PSPath iis:).collection -PSPath iis:
# Case5: Get the attributes for a specific module
$modules=(get-webconfiguration //modules -PSPath iis:).collection
$modules | foreach {if ($_.name -eq "cgiModule") { $_.attributes | select name, value}}