Nasıl Varlık içinde Saklı Yordamını çağırmak için Çerçeve 6 (Kod-İlk)? | Netgez.com
SORU
3 Ocak 2014, Cuma


Nasıl Varlık içinde Saklı Yordamını çağırmak için Çerçeve 6 (Kod-İlk)?

Varlık Çerçevesi 6 için çok yeni ve ben projemde Saklı Prosedürleri uygulamak istiyorum. Aşağıdaki gibi bir Saklı Yordam var

ALTER PROCEDURE [dbo].[insert_department]
@Name [varchar](100)
AS
BEGIN
INSERT [dbo].[Departments]([Name])
VALUES (@Name)

DECLARE @DeptId int
SELECT @DeptId = [DeptId]
FROM [dbo].[Departments]
WHERE @@ROWCOUNT > 0 AND [DeptId] = scope_identity()

SELECT t0.[DeptId]
FROM [dbo].[Departments] AS t0
WHERE @@ROWCOUNT > 0 AND t0.[DeptId] = @DeptId
END

Bölüm Sınıf

public class Department
{

    public int DepartmentId { get; set; }       
    public string Name { get; set; }

}

modelBuilder 
.Entity<Department>() 
.MapToStoredProcedures(s => 
s.Update(u => u.HasName("modify_department") 
               .Parameter(b => b.Department, "department_id") 
               .Parameter(b => b.Name, "department_name")) 
 .Delete(d => d.HasName("delete_department") 
               .Parameter(b => b.DepartmentId, "department_id")) 
 .Insert(i => i.HasName("insert_department") 
               .Parameter(b => b.Name, "department_name")));

protected void btnSave_Click(object sender, EventArgs e)
  {
          string department = txtDepartment.text.trim();

         // Here i want to call the stored procedure to insert values

  }

Benim sorunum:Nasıl saklı yordam çağrısı ve parametreleri içine alabilir miyim?

CEVAP
3 Ocak 2014, Cuma


Şöyle DbContext sınıfından bir saklı yordam çağrısı.

this.Database.SqlQuery<YourEntityType>("storedProcedureName",params);

Ancak, Saklı Yordam örnek kod olarak birden çok sonuç kümeleri döndürmek, sonra MSDN'DE bu yararlı makale görebilirsiniz http://msdn.microsoft.com/en-us/data/jj691402.aspx

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • listedabive

    listedabive

    30 Ocak 2007
  • Rozetked | Обзоры

    Rozetked | Ð

    5 AÄžUSTOS 2011
  • TomOdellVEVO

    TomOdellVEVO

    29 Mayıs 2012