Seperti yang sudah kita tahu bersama bahwa penggunaan Stored Procedure memiliki banyak kelebihan dibandingkan anda menuliskan kode T-SQL pada kode aplikasi anda. Banyak database administrator yang lebih memilih menggunakan Stored Procedure untuk menyembunyikan table/query dari aplikasi. Stored Procedure juga sering digunakan untuk proses CRUD (create, read, update, delete) untuk manipulasi table yang ada di database.
Masalah yang dihadapi adalah VS Lightswitch tidak menyediakan feature built-in untuk berinteraksi dengan Stored Procedure, sehingga ini menjadi masalah bagi kita yang hanya mengijinkan pengaksesan database dilakukan melalui Stored Procedure.
Pada artikel ini akan dibahas bagaimana cara untuk menggakses stored procedure dari Lightswitch menggunakan WCF RIA Services.
Kebutuhan untuk mencoba tutorial ini adalah :
· Visual Studio Lightswitch (VS 2012)
· Database sample : Northwind
· SQL Management Studio dan SSMS Tools Pack
Membuat Stored Procedure
1. Buka database Northwind pada SQL Server Management
2. Klik kanan pada table Customers – kemudian pilih SSMS Tools – Create CRUD
3. Maka secara otomatis kita akan dibuatkan Stored Procedure untuk proses CRUD pada table Customers
4. Tekan execute untuk mengeksekusi perintah pembuatan Stored Procedure.
5. Maka akan terbentuk 4 Stored Procedure untuk table Customers.
Membuat Project Lightswitch dan Class Library (WCF RIA Services)
1. Langkah selanjutnya adalah membuat project baru dengan Lightswitch, beri nama ‘SampleStoreProcedure’.
2. Pada solution tambahkan Class Library dengan nama ‘NorthwindWCFServices’, kita akan membuat WCF Service pada library ini.
Menambahkan ADO.NET Entity Framework
1. Pada Class Library project yang baru saja anda ambil tambahkan ADO.NET Entity framework, beri nama NorthwindModel.edmx
2. Pilih database Northwind dari Sql Server
3. Pilih table Customer, dan Stored Procedure yang sudah anda buat untuk melakukan operasi CRUD pada table Customers.
4. Hapus file dengan ekstensi .tt
5. Ubah property code generation pada ADO.NET EF menjadi ‘Default’.
6. Klik kanan pada Customer model, kemudian pilih Stored Procedure Mapping
7. Tambahkan Stored Procedure yang telah anda buat sebelumnya untuk perintah Insert, Update, dan Delete
Membuat WCF RIA Services
1. Tambahkan Domain Services Class pada Class Library project dengan nama ‘NorthwindDomainServices’.
2. Pilih entities Customer dan check bagian Enable Editing.
3. Tambahkan kode berikut pada domain services
<Query(IsDefault:=True)> _ Public Function GetCustomers() As IQueryable(Of Customer) Return Me.ObjectContext.Customers End Function
Mengambil Services dari Lightswitch
1. Langkah terakhir adalah mengakses WCF Services yang sudah anda buat dari LightSwitch
2. Copy connection string dari file App.Config di Class Library
3. Kemudian masukan kedalam web.config pada folder Server di LightSwitch (mode File View).
4. Tambahkan data source pada Lightswitch (mode Logical View)
5. Pilih WCF RIA Services
6. Tambahkan referensi dari WCF
7. Pilih Entity yang akan diakses dari Lightswitch
8. Terakhir tambahkan Screen.
9. Maka anda sudah dapat membuat screen dengan data source yang diambil dari Stored Procedure yang kita akses menggunakan WCF Services
10. Anda dapat menambah, edit, dan delete data pada form (menggunakan Stored Procedure).
mas erik , kalo yang store procedure nya bukan CRUD ,apakah bisa di lightswitch ?
Maksudnya gimana mas? yg bukan CRUD apa? biasanya ya cm untuk CRUD setahu saya