TableAdapter.Update(DataSet)使西里尔字母在dgv中显示为问号

时间:2016-01-03 21:56:05

标签: c# winforms datagridview tableadapter cyrillic

我有一个应用程序,它包含一个DataGridView和一些按钮,可以更轻松地管理它(它是关于管理健身房订阅)。我将这行添加到DataGridView中。

DataTable dataTable = ((SubscriptionsDatabaseDataSet)(tableBindingSource.DataSource)).Tables[0];
dataTable.Rows.Add(new object[] {id, name, dateMade, expiryDate, daysRemaining, sessionsRemaining, cardType});

之后,为了将数据保存到数据库,我这样做:

this.tableTableAdapter.Update(this.subscriptionsDatabaseDataSet);
this.tableTableAdapter.Update(this.subscriptionsDatabaseDataSet.Table);

卡片类型位于西里尔文中,如果我不拨打tableTableAdapter.Update(),它就会显示正常,只有在我调用该方法后它才会被破坏并显示为问号。

1 个答案:

答案 0 :(得分:2)

  

问:数据库中列的数据类型是什么?
  答:VARCHAR(MAX)。

您应该将列的类型更改为NVARCHAR(MAX)以支持可变长度的unicode数据。