Ana içeriğe geç

DataSourceApi Üzerinden Sonucu Dictionary’ye Aktararak DataSource Çalıştırmak

Kullanılması Gereken Kütüphaneler

Aşağıdaki iki kütüphane projeye eklenmelidir.

using Bimser.CSP.DataSource.Api;

using <ProjeAdı>.DataSources;

Kullanım Örneği

Bu örnekte, DataSource çalıştırıldıktan sonra sorgudan gelen sonuç, Dictionary<string, object> tipinde bir List’e doldurulur. Böylece farklı veri tiplerinde (object) sonuç alınabilir.

Adım 1: DataSource’un Tanımlanması

Örnek olarak proje içerisinde, TestDataSource adıyla aşağıdaki sorguyu içeren bir DataSource tanımlanır.

SORGU : SELECT ID, USERNAME, FIRSTNAME, LASTNAME FROM OSUSERS

Adım 2: DataSource’u Çalıştıracak Kodların Hazırlanması

DataSourceApi sınıfının GetData isimli method’una aşağıda detayları anlatılan parametreler verilerek bir DataSource çalıştırılabilir.

ÖNEMLİ NOT: Çalıştırılacak DataSource, bu örneğin hazırlandığı projenin içerisinde bulunmalıdır. Bu senaryoda, dışarıdaki başka bir projedeki DataSource çalıştırılamaz.

Aşağıdaki kod bloğunda hangi kısmın nasıl yazılması gerektiği parçalar halinde anlatılmıştır.

Örnek Kod:

List<Dictionary<string, object>> allUsers = DataSourceApi.GetData<Dictionary<string, object>, TestDatasourceRequest>(

                "TestDatasource",

                new TestDatasourceRequest ()

{

PARAMETRE1 = “Değer1”,

PARAMETRE2 = “Değer2”
},

                Context

            );
  • DataSourceApi.GetData<Dictionary<string, object>, TestDatasourceRequest>( ” Dictionary<string, object>” yazan kısım, dönüşü bu şekide alacağımız için verilmiştir. “TestDatasourceRequest” kısmı için, “Request”e kadar olan kısımda, çalıştırılacak DataSource’un adı verilir. Yani DataSource’un adı ve Request kelimesi bitişik olarak yazılır.

  • "TestDatasource" : Çalıştırılacak DataSource’un adı verilir.

  • new TestDatasourceRequest () … : Sorguya gönderilecek parametreler verilir. Eğer parametre verilmeyecekse de aşağıdaki gibi bırakılmalıdır. new TestDatasourceRequest ()

  • Context: Burada context bilgisi verilir. Olduğu gibi bırakılabilir.

Listeden Sonucun Okunması

Aşağıdaki örnekle, sorgudan gelen sonucun nasıl okunabileceği anlatılmıştır. Farklı yöntemler de kullanılabilir.

if (allUsers.Count > 0 ) // sonuç geliyor demektir.

{

// Örnek olarak List’ten gelen ilk satır okunacaktır.

    Dictionary<string, object> firstItem = allUsers[0];

    int userID = Convert.ToInt32(firstItem["ID"]);

    string userName = firstItem["USERNAME"].ToString();

    string firstName = firstItem["FIRSTNAME"].ToString();

    string lastName = firstItem["LASTNAME"].ToString();

}