Как получить Guid из уникального идентификатора SqlDataReader ⇐ C#
Как получить Guid из уникального идентификатора SqlDataReader
SQL Server 2008 (версия 10.50.2550).
У меня есть запрос на выборку, который возвращает один столбец типа uniqueidentifier.
Я хочу поместить это в переменную C# типа Guid.
Все следующие методы приводят к исключениям.
читатель имеет тип SqlDataReader.
с использованием (var reader = command.ExecuteReader()) { если (читатель.Читать()) { Guid guid = reader.GetGuid(reader.GetOrdinal("integ_schemehistoryId")); //1 Guid guid = Guid.Parse((string)reader["integ_schemehistoryId"]); //2 Guid guid = (Guid)reader["integ_schemehistoryId"]; //3 Guid guid = new Guid((string)reader["integ_schemehistoryId"]); //4 Guid guid = Guid.Parse(reader["integ_schemehistoryId"].ToString()); //5 } } Ошибка 1:
System.Data.SqlClient.SqlException (0x80131904): Ошибка преобразования при преобразовании символьной строки в уникальный идентификатор. в System.Data.SqlClient.SqlConnection.OnError (исключение SqlException, логическое значение BreakConnection) в System.Data.SqlClient.SqlInternalConnection.OnError (исключение SqlException, логическое значение BreakConnection) в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() в System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet BulkCopyHandler, TdsParserStateObject stateObj) в System.Data.SqlClient.SqlDataReader.HasMoreRows() в System.Data.SqlClient.SqlDataReader.ReadInternal (логическое значение setTimeout) в System.Data.SqlClient.SqlDataReader.Read() в Simego.DataSync.DynamicColumns.DataSourceRowOverride.get_EpochSchemeHistoryID() Ошибка для 2:
System.InvalidCastException: невозможно привести объект типа «System.Guid» к типу «System.String». в Simego.DataSync.DynamicColumns.DataSourceRowOverride.get_EpochSchemeHistoryID() Ошибка 3:
System.Data.SqlClient.SqlException (0x80131904): Ошибка преобразования при преобразовании символьной строки в уникальный идентификатор. в System.Data.SqlClient.SqlConnection.OnError (исключение SqlException, логическое значение BreakConnection) в System.Data.SqlClient.SqlInternalConnection.OnError (исключение SqlException, логическое значение BreakConnection) в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() в System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet BulkCopyHandler, TdsParserStateObject stateObj) в System.Data.SqlClient.SqlDataReader.HasMoreRows() в System.Data.SqlClient.SqlDataReader.ReadInternal (логическое значение setTimeout) в System.Data.SqlClient.SqlDataReader.Read() в Simego.DataSync.DynamicColumns.DataSourceRowOverride.get_EpochSchemeHistoryID() Ошибка 4:
System.InvalidCastException: невозможно привести объект типа «System.Guid» к типу «System.String». в Simego.DataSync.DynamicColumns.DataSourceRowOverride.get_EpochSchemeHistoryID() Ошибка 5:
System.Data.SqlClient.SqlException (0x80131904): Ошибка преобразования при преобразовании символьной строки в уникальный идентификатор. в System.Data.SqlClient.SqlConnection.OnError (исключение SqlException, логическое значение BreakConnection) в System.Data.SqlClient.SqlInternalConnection.OnError (исключение SqlException, логическое значение BreakConnection) в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() в System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet BulkCopyHandler, TdsParserStateObject stateObj) в System.Data.SqlClient.SqlDataReader.HasMoreRows() в System.Data.SqlClient.SqlDataReader.ReadInternal (логическое значение setTimeout) в System.Data.SqlClient.SqlDataReader.Read() в Simego.DataSync.DynamicColumns.DataSourceRowOverride.get_EpochSchemeHistoryID()
SQL Server 2008 (версия 10.50.2550).
У меня есть запрос на выборку, который возвращает один столбец типа uniqueidentifier.
Я хочу поместить это в переменную C# типа Guid.
Все следующие методы приводят к исключениям.
читатель имеет тип SqlDataReader.
с использованием (var reader = command.ExecuteReader()) { если (читатель.Читать()) { Guid guid = reader.GetGuid(reader.GetOrdinal("integ_schemehistoryId")); //1 Guid guid = Guid.Parse((string)reader["integ_schemehistoryId"]); //2 Guid guid = (Guid)reader["integ_schemehistoryId"]; //3 Guid guid = new Guid((string)reader["integ_schemehistoryId"]); //4 Guid guid = Guid.Parse(reader["integ_schemehistoryId"].ToString()); //5 } } Ошибка 1:
System.Data.SqlClient.SqlException (0x80131904): Ошибка преобразования при преобразовании символьной строки в уникальный идентификатор. в System.Data.SqlClient.SqlConnection.OnError (исключение SqlException, логическое значение BreakConnection) в System.Data.SqlClient.SqlInternalConnection.OnError (исключение SqlException, логическое значение BreakConnection) в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() в System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet BulkCopyHandler, TdsParserStateObject stateObj) в System.Data.SqlClient.SqlDataReader.HasMoreRows() в System.Data.SqlClient.SqlDataReader.ReadInternal (логическое значение setTimeout) в System.Data.SqlClient.SqlDataReader.Read() в Simego.DataSync.DynamicColumns.DataSourceRowOverride.get_EpochSchemeHistoryID() Ошибка для 2:
System.InvalidCastException: невозможно привести объект типа «System.Guid» к типу «System.String». в Simego.DataSync.DynamicColumns.DataSourceRowOverride.get_EpochSchemeHistoryID() Ошибка 3:
System.Data.SqlClient.SqlException (0x80131904): Ошибка преобразования при преобразовании символьной строки в уникальный идентификатор. в System.Data.SqlClient.SqlConnection.OnError (исключение SqlException, логическое значение BreakConnection) в System.Data.SqlClient.SqlInternalConnection.OnError (исключение SqlException, логическое значение BreakConnection) в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() в System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet BulkCopyHandler, TdsParserStateObject stateObj) в System.Data.SqlClient.SqlDataReader.HasMoreRows() в System.Data.SqlClient.SqlDataReader.ReadInternal (логическое значение setTimeout) в System.Data.SqlClient.SqlDataReader.Read() в Simego.DataSync.DynamicColumns.DataSourceRowOverride.get_EpochSchemeHistoryID() Ошибка 4:
System.InvalidCastException: невозможно привести объект типа «System.Guid» к типу «System.String». в Simego.DataSync.DynamicColumns.DataSourceRowOverride.get_EpochSchemeHistoryID() Ошибка 5:
System.Data.SqlClient.SqlException (0x80131904): Ошибка преобразования при преобразовании символьной строки в уникальный идентификатор. в System.Data.SqlClient.SqlConnection.OnError (исключение SqlException, логическое значение BreakConnection) в System.Data.SqlClient.SqlInternalConnection.OnError (исключение SqlException, логическое значение BreakConnection) в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() в System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet BulkCopyHandler, TdsParserStateObject stateObj) в System.Data.SqlClient.SqlDataReader.HasMoreRows() в System.Data.SqlClient.SqlDataReader.ReadInternal (логическое значение setTimeout) в System.Data.SqlClient.SqlDataReader.Read() в Simego.DataSync.DynamicColumns.DataSourceRowOverride.get_EpochSchemeHistoryID()
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Вставка GUID в поле «uniqueidentifier» в SQL Server приводит к пустому guid.
Anonymous » » в форуме C# - 0 Ответы
- 91 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Вставка GUID в поле «uniqueidentifier» в SQL Server приводит к пустому guid [закрыто]
Anonymous » » в форуме C# - 0 Ответы
- 78 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Ошибка получения значения ссылки уникального идентификатора в PHP isset GET
Anonymous » » в форуме Php - 0 Ответы
- 46 Просмотры
-
Последнее сообщение Anonymous
-