C# 如何将字符串转换为nvarchar?
我有一个文本框,我想将输出结果保存到Unicode(SQL Server中的C# 如何将字符串转换为nvarchar?,c#,winforms,entity-framework,C#,Winforms,Entity Framework,我有一个文本框,我想将输出结果保存到Unicode(SQL Server中的nvarchar),对于使用Entity Framework的保存操作,我的代码工作正常,我的问题只是将文本框结果转换为Unicode,因为当我保存结果时,它在SQL Server中保存为“?”。 注意:我使用阿拉伯语字母。,这是我的代码和列定义: 代码: //Button add new car into database private void BtnAddNewCar_Click(object sende
nvarchar
),对于使用Entity Framework的保存操作,我的代码工作正常,我的问题只是将文本框结果转换为Unicode,因为当我保存结果时,它在SQL Server中保存为“?”。
注意:我使用阿拉伯语字母。,这是我的代码和列定义:
代码:
//Button add new car into database
private void BtnAddNewCar_Click(object sender, EventArgs e)
{
v.brand = TxBoxBrand.Text;
v.car_number = TxBoxCarNumber.Text;//Text Box that i want to convert to Unicode (Arabic letters)
v.color = CmBoxColorPicker.Text;
v.model = TxBoxModel.Text;
v.picture = ImageToByteArray(filename);
v.cin_driver= CmBoxCarOwner.Text;
context.Vehicles.Add(v);
context.SaveChanges();
NotifyWelcome.ShowBalloonTip(1000, "The vehicle " + TxBoxBrand.Text + " was successfully added", " Have a ice drive", ToolTipIcon.Info);
CarClear();
VLoad.Enabled = true;
CmVLoad.Enabled = false;
MyMessageBox.ShowBox("The vehicle " + TxBoxBrand.Text + " as successfully added", "Notify");
}
// TxBoxCarNumber
//
this.TxBoxCarNumber.Font = new System.Drawing.Font("Ubuntu", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.TxBoxCarNumber.Location = new System.Drawing.Point(272, 30);
this.TxBoxCarNumber.Name = "TxBoxCarNumber";
this.TxBoxCarNumber.Size = new System.Drawing.Size(142, 21);
this.TxBoxCarNumber.TabIndex = 0;
this.TxBoxCarNumber.TabStop = false;
列定义:
//Button add new car into database
private void BtnAddNewCar_Click(object sender, EventArgs e)
{
v.brand = TxBoxBrand.Text;
v.car_number = TxBoxCarNumber.Text;//Text Box that i want to convert to Unicode (Arabic letters)
v.color = CmBoxColorPicker.Text;
v.model = TxBoxModel.Text;
v.picture = ImageToByteArray(filename);
v.cin_driver= CmBoxCarOwner.Text;
context.Vehicles.Add(v);
context.SaveChanges();
NotifyWelcome.ShowBalloonTip(1000, "The vehicle " + TxBoxBrand.Text + " was successfully added", " Have a ice drive", ToolTipIcon.Info);
CarClear();
VLoad.Enabled = true;
CmVLoad.Enabled = false;
MyMessageBox.ShowBox("The vehicle " + TxBoxBrand.Text + " as successfully added", "Notify");
}
// TxBoxCarNumber
//
this.TxBoxCarNumber.Font = new System.Drawing.Font("Ubuntu", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.TxBoxCarNumber.Location = new System.Drawing.Point(272, 30);
this.TxBoxCarNumber.Name = "TxBoxCarNumber";
this.TxBoxCarNumber.Size = new System.Drawing.Size(142, 21);
this.TxBoxCarNumber.TabIndex = 0;
this.TxBoxCarNumber.TabStop = false;
我更新了我的问题,而不是我要求的信息。它完成了,我更新了代码是的,它正在变得更好。但是
TxBoxCarNumber
不是我的意思,问题在于v.car\u number
。您应该能够使用调试器进行验证。那么什么是v
?实体框架?仍然没有信息。WinForms生成的代码在这里是无用和无关的,Henk希望从数据库中获得列定义。很可能该列只是一个varchar
列,因此文本被破坏。好的,列类型是nvarchar(50),是的,v是实体框架