Службы WCF RIA получают идентификатор вставленной строки - PullRequest
1 голос
/ 02 июля 2011

Я пользуюсь услугами WCF RIA. Я не использую юридические лица и прямые sql's. В моем случае хранимые процедуры и сложные типы делают всю работу. Поэтому я столкнулся с такой проблемой: Когда я использую процедуру хранилища для вставки строки, невозможно автоматически обновить ее идентификатор из базы данных. В случае использования entity и direct sql все идет хорошо. Вот моя хранимая процедура:

BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    insert into Product
    (       
       [Name]
      ,[Note]  )
      values
      (      
    @Name,
    @Note   
      )      
      select SCOPE_IDENTITY() as ID

END

Единственный способ решить эту проблему - перезагрузить все данные, появляющиеся после вставки. Я думаю, что не стоит загружать все данные, когда необходимо обновить только одну строку. Второй подход - написать еще несколько. код для получения нового идентификатора вручную с SQL Server, но я считаю, что должен быть лучший подход.

...