В настоящее время я играю с Silverlight3, C # и LinqToSQL.
Я создал базу данных на сервере SQLExpress с несколькими таблицами, например:
Сотрудники (Id, Name, DepartmentId, TimeStamp)
Отделы (Id, Name, TimeStamp)
Поля Id - это VarChar (50), поля имени - это VarChar (100), а поля TimeStamp имеют тип timestamp.
В моем решении Silverlight у меня есть два проекта:
Серверная часть, которая включает в себя модель LinqToSQL, представляющую базу данных, и WCFService, включая методы для запроса объектов с помощью запросов linq, что делает данные доступными для второго проекта.
Второй проект - это простое приложение Silverlight, которое должно получать результаты от сервиса и отображать их на странице.
Эти запросы подходят для некоторых объектов, другие вызывают исключение операции (еще до того, как запросы будут выполнены), которое говорит следующее:
Элементы «Byte [] TimeStamp» и «System.String Id» оба помечены как преобразование строк.
Я дважды проверил все, даже удалил эти таблицы из конструктора и добавил их снова, но не повезло, я продолжаю получать эти ошибки. Все таблицы почти идентичны, но почему-то эта ошибка вызывает только некоторые из них, в то время как другие в порядке.
Столбец TimeStamp имеет тип Byte [], а столбец Id имеет тип System.String внутри модели LinqToSQL. Но только TimeStamp помечается как метка времени и объявляется как версия строки NOT NULL для своего типа данных сервера. Столбец Id с другой стороны не имеет ни одного из установленных значений, что заставило бы меня догадаться, почему выдается ошибка, связанная с этим конфликтом версий строк.
Есть ли какие-либо предложения, которые могут вызвать этот конфликт?