SORU
25 Kasım 2011, Cuma


Nasıl bir ekleme yapabilirim ve Dapper ile eklenen kimlik geri?

Nasıl veritabanı ve Dapper ile eklenen kimlik dönmek için bir ekleme yapabilirim?

Böyle bir şey denedim:

string sql = "DECLARE @ID int; "  
             "INSERT INTO [MyTable] ([Stuff]) VALUES (@Stuff); "  
             "SELECT @ID = SCOPE_IDENTITY()";

var id = connection.Query<int>(sql, new { Stuff = mystuff}).First();

Ama işe mi yaradı.

@Marc Gravell teşekkürler cevap için. Çözümünüzü denedim ama hala aynı Durum İzleme altında

System.InvalidCastException: Specified cast is not valid

at Dapper.SqlMapper.<QueryInternal>d__a`1.MoveNext() in (snip)\Dapper\SqlMapper.cs:line 610
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
at Dapper.SqlMapper.Query[T](IDbConnection cnn, String sql, Object param, IDbTransaction transaction, Boolean buffered, Nullable`1 commandTimeout, Nullable`1 commandType) in (snip)\Dapper\SqlMapper.cs:line 538
at Dapper.SqlMapper.Query[T](IDbConnection cnn, String sql, Object param) in (snip)\Dapper\SqlMapper.cs:line 456

CEVAP
25 Kasım 2011, Cuma


Yokdestekgiriş DynamicParameters, kullanırsanız çıkış parametreleri (RETURN değeri dahil)/ama bu durumda daha basit bir seçenek sadece

string sql = @"
INSERT INTO [MyTable] ([Stuff]) VALUES (@Stuff);
SELECT CAST(SCOPE_IDENTITY() as int)";

var id = connection.Query<int>(sql, new { Stuff = mystuff}).Single();

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Benjamin Heckendorn

    Benjamin Hec

    4 Mayıs 2008
  • Evan Coury

    Evan Coury

    29 NİSAN 2007
  • modica89

    modica89

    24 HAZİRAN 2007