У нас есть работающая бизнес-система с ошибкой, которая время от времени возникает. Ошибка в соответствии с трассировкой стека, полученной от поставщика членства asp.net. Кажется, не имеет значения, какой пользователь в данный момент вошел в систему. Насколько я могу судить, таблицы членства asp.net в базе данных в порядке.
Пример строки кода, генерирующей ошибку:
if (Membership.GetUser() != null)
Описание ошибки:
Unable to cast object of type 'System.Int32' to type 'System.String'.
Трассировка стека:
[InvalidCastException: Unable to cast object of type 'System.Int32' to type 'System.String'.]
System.Data.SqlClient.SqlBuffer.get_String() +141
System.Data.SqlClient.SqlDataReader.GetString(Int32 i) +96
System.Web.Security.SqlMembershipProvider.GetNullableString(SqlDataReader reader, Int32 col) +35
System.Web.Security.SqlMembershipProvider.GetUser(String username, Boolean userIsOnline) +1110
System.Web.Security.Membership.GetUser(String username, Boolean userIsOnline) +82
System.Web.Security.Membership.GetUser() +19
Кто-нибудь имеет представление о том, что не так?
Обновление: мы не смогли найти решение этой ошибки. Но в конце концов он исчез.
Теперь, когда мы мигрировали на другой сервер, эта ошибка полностью наносит вред нашему приложению. У меня совершенно нет идей: (* 1017 *