Я использую VSTS2008 + C# + .Net 3.0. Вот мой код и связанное с ним исключение из ADO.Net. Вот мой ввод двух строк как в бинарной форме, так и в текстовой форме, любые идеи, что не так? Почему две разные строки будут обрабатываться ADO.Net одинаково?очень странная строка уникальная проблема в C#
Сообщение об исключении:
An unhandled exception of type 'System.Data.ConstraintException' occurred in System.Data.dll
Additional information: Column 'Name' is constrained to be unique. Value '������' is already present.
Входные строки в двоичной форме и текстовой форме:
alt text http://i32.tinypic.com/23lidcx.jpg
alt text http://i29.tinypic.com/250p3ib.jpg
StackOverflow не отображается правильно для моего кода для строк , вот скриншот экрана для того, что на самом деле выглядит в моем редакторе VSTS 2008.
alt text http://i28.tinypic.com/2j10ehg.jpg
Мой код:
static void Main(string[] args)
{
string[] buf = new string[] { "����", "������" };
CompareInfo ci = System.Globalization.CultureInfo.InvariantCulture.CompareInfo;
ci.Compare(buf[0], buf[1], CompareOptions.IgnoreWidth);
Console.WriteLine (String.Compare(buf[0], buf[1], StringComparison.InvariantCultureIgnoreCase));
DataTable bulkInserTable = new DataTable("BulkRequestTable");
bulkInserTable.CaseSensitive = true;
DataColumn column = null;
DataRow row = null;
// add Keyword column to datatable
column = new DataColumn();
column.DataType = System.Type.GetType("System.String");
column.ColumnName = "Name";
column.ReadOnly = true;
column.Unique = true;
bulkInserTable.Columns.Add(column);
foreach (string item in buf)
{
row = bulkInserTable.NewRow();
row["Name"] = item;
bulkInserTable.Rows.Add(row);
}
}
Вы пробовали испытывать значение BUF [0] == ЬиЕ [1]? Я не могу сказать, что происходит с « » в строках. – JoshJordan
@JoshJordan, см. Ссылки на изображения –
Спасибо JoshJordan, от String.Compare, результат равен 0, поэтому означает, что они одинаковы. С точки зрения перспективы (перспектива человеческого глаза), они разные. Вот скриншот экрана VSTS 2008, любые идеи, что не так? http://i28.tinypic.com/2j10ehg.jpg – George2