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

  • LearnKey

    LearnKey

    19 AĞUSTOS 2008
  • The10HourMan

    The10HourMan

    28 EYLÜL 2012
  • UnboxTechnology

    UnboxTechnol

    20 Ocak 2011