Использование типа столбца SQL uniqueidentifier с платформой Entity

Для моего первичного ключа и идентификатора в нашей таблице клиентов я использую столбец uniqueidentifier со значением по умолчанию, равным newsequentialid (). Вставка новых строк с помощью инструмента управления создает значения для идентификатора штрафа.

Вставка из .NET 4 кода через EF приводит к нулю GUID (00000-0000 ....) при вставке. Я создаю сущность с новым, устанавливаю некоторые значения и выполняю EF AddToClients (например). Если отлажено, значение для свойства id показывает нулевой GUID. Я не устанавливаю идентификатор в явном виде через Guid.NewGuid () в моем коде, потому что я хочу оставить его в newsequentialid () в SQL Server. Проблема в том, что это не работает. При первом выполнении кода строка вставляется с нулевым GUID. В следующий раз это, очевидно, завершится неудачей и приведет к исключению нарушения первичного ключа.

Как я могу заставить это работать без необходимости устанавливать GUID в моем клиентском коде?

5
задан mare 19 August 2010 в 14:12
поделиться