Hello World WCF

by Agus Kurniawan 20. August 2009 16:48
Seperti sebelumnya gw jelas mengenai singkat WCF di http://blog.aguskurniawan.net/post/Introduction-to-Windows-Communication-Foundation-(WCF).aspx. Saatnya kita coba mempraktekan WCF. Lab Environment Untuk keperluan ini dibutuhkan OS Windows XP/Vista atau Windows Server 2000/2003/2008 Visual Studio 2008 Membuat Aplikasi Hello World WCF 3.5 Disini kita membuat aplikasi WCF yang dihosting di web ASP.NET. Sedangkan client akan berbentuk console app. WCF Server Pertama-tama kita buat aplikasi WCF server yang bertindak sebagai service server. Berikut ini langkah-langkahnya: Buat project dan pilih templet ASP.NET Web Application, lihat gambar dibawah  Beri nama project dan solution. Jika selesai klik tombol OK. Selanjutnya pada project tersebut, klik kanan dan pilih Add->New Item, contohnya seperti gambar dibawah    Kemudian akan muncul kotak dialog seperti gambar dibawah Pilih WCF Service dan tulis nama file nya. Jika selesai, klik tombol Add. Misalkan disini namanya MyWCF maka akan dihasilkan file IMyWCF.cs, MyWCF.svc, dan MyWCF.svc.cs Berikut ini code untuk IMyWCF.cs [ServiceContract] public interface IMyWCF { [OperationContract] string DoWork(string data); } Sedangkan implementasi pada file MyWCF.svc.cs public class MyWCF : IMyWCF { public string DoWork(string data) { return string.Format("Data={0}", data); } } Jika selesai, lakukan compile dan build. Pastikan tidak ada error. Kalau sudah ok, kita test WCF server nya. Caranya klik kanan file MyWCF.svc dan pilih menu View in Browser Selanjutnya pada browser akan muncul tampilan seperti dibawah ini Ok, pekerjaan pembuatan WCF server sudah selesai. WCF Client Setelah WCF server selesai dibuat, kita akan membuat aplikasi client berbasis console. Tambahkan project baru dengan template Console Application. Setelah project console dipilih maka pertama-tama kita menghubungkan aplikasi WCF client ke WCF Server. Caranya klik kanan project dan pilih menu Add Service Reference seperti gambar dibawah ini Selanjutnya akan muncul kotak dialog seperti gambar dibawah ini Isi URL WCF Server dan kemudian klik tombol Go. Jika selesai, klik tombol OK. Ini akan menghasil Service Reference dan penambahan file baru yaitu app.config. Isinya: <?xml version="1.0" encoding="utf-8" ?> <configuration> <system.serviceModel> <bindings> <wsHttpBinding> <binding name="WSHttpBinding_IMyWCF" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false"> <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" /> <reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false" /> <security mode="Message"> <transport clientCredentialType="Windows" proxyCredentialType="None" realm="" /> <message clientCredentialType="Windows" negotiateServiceCredential="true" algorithmSuite="Default" establishSecurityContext="true" /> </security> </binding> </wsHttpBinding> </bindings> <client> <endpoint address="http://localhost:3569/MyWCF.svc" binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_IMyWCF" contract="RefWCF.IMyWCF" name="WSHttpBinding_IMyWCF"> <identity> <dns value="localhost" /> </identity> </endpoint> </client> </system.serviceModel> </configuration> Nilai http://localhost:3569/MyWCF.svc, dapat diganti disesuaikan dengan URL dan port nya. Selanjutnya pada file Program.cs, tulis code sebagai berikut: using System;   using ClientWCF.RefWCF; namespace ClientWCF { class Program { static void Main(string[] args) { Console.WriteLine("Call WCF");   MyWCFClient wcf = new MyWCFClient(); string resultData = wcf.DoWork("Selamat datang WCF"); Console.WriteLine(resultData);   Console.ReadLine(); } } } Jika selesai, lakukan compile dan build. Pastikan tidak ada error yang terjadi. Menjalankan Aplikasi Pertama-tama jalan app WCF Server nya. Selanjutnya baru jalankan WCF client, berikut ini contohnya Apabila app WCF client dijalankan melalui VS 2008 dengan mode debugging maka mungkin mendapatkan error seperti dibawah ini Supaya gak keluar error diatas, pada bagian  WCF server, pastikan debug dibuat true Source Code Source aplikasi ini dapat didownload di http://download.aguskurniawan.net/DownloadFile.aspx?file=3975b820-6099-4f80-914b-105a9be0c883 Semoga berguna….

Tags: , ,

.NET | Distributed System

Introduction to Windows Communication Foundation (WCF)

by Agus Kurniawan 19. August 2009 06:19
Beberapa tahun lalu Microsoft meluncurkan suatu library atau framework yang dikenal Windows Communication Foundation atau disingkat dengan WCF. Library ini memungkinkan kita membantu kita dalam membangun aplikasi berbasis distribusi data. WCF ini sebenarnya merupakan enkapsulasi dari Socket sehingga para developer tidak perlu fokus ke level socket dalam membuat aplikasi distribusi data tetapi lebih fokus pada format data yang merupakan suatu kontrak yang mengikat ketika ingin melakukan komunikasi. Pada saat peluncuran library WCF, Microsoft sudah meluncurkan development tool yaitu Visual Studio 2005 yang targetnya untuk .NET Framework 2.0. Sedangkan library WCF tersebut berjalan diatas .NET Framework 3.0 atau diatasnya sehingga untuk membuat aplikasi WCF dengan menggunakan Visual Studio 2005 maka kita memerlukan WCF Extension yang diinstall dimana Visual Studio 2005 diinstall atau menggunakan Visual Studio 2008 yang baru-baru ini diluncurkan. Unified Programming Model WCF tidak hanya hadir untuk menyelesaikan permasalahan dasar pada sistem distribusi tetapi juga memperbaiki dalam proses pengembangan perangkat lunak. WCF menawarkan model programming yang memungkinkan untuk integrasi beberapa model pemrograman. Tujuan integrasi model programming tidak lain hanya untuk meningkatkan kualitas dan mengurangi lamanya proses pengembangan perangkat lunak. Model pemrograman yang ditawarkan pada WCF seperti yang terlihat pada gambar 1. Setidaknya ada 5 model pemrograman yang dapat kita gunakan untuk berkomunikasi dengan aplikasi WCF. Kelima model pemrograman ini antara lain Web Service (WS)/WS Enhancement (WSE) Web Service (WS) seperti kita ketahui merupakan salah satu cara untuk mendistribusi data dalam bentuk service dan model WS ini diimplementasi dengan pendekatan Service Orientation Architecture (SOA). Sedangkan WS Enhancement (WSE) adalah salah satu jawaban untuk menyelesaikan permasalahan pada WS terutama pada data transfer yang berupa plain text sehingga WSE memberikan alternatif lain yang memungkinknan data transfer dapat berupa binary. Selain itu, WSE juga menawarkan sistem sekuriti yang lebih baik. WS dan WSE dengan berbagai fitur yang mengesankan menjadikan ini salah satu solusi yang ditawarkan oleh Microsoft dan WCF sebagai pengembangan baru dari WS secara inline dapat berkomunikasi dengan WS maupun WSE melalui interop. Attribute-Based Programming Pemrograman berbasis Attribute adalah fitur yang ditawarkan oleh .NET Framework guna membuat aplikasi dengan mudah yaitu cukup dengan memasang attribute pada objek yang didefinisikan. Enterprise service adalah bentuk implementasi dari pemrograman attribute-based. Contoh enterprise service adalah COM+. WCF dapat berkomunikasi dengan COM+ melalui attribute-based. REST/HTTP Programming WCF tidak hanya berkomunikasi dengan platform tetapi juga dapat berkomunikasi pada protokol jaringan seperti HTTP. Protokool ini digunakan oleh WCF untuk distribusi data Message-Oriented Programming Salah satu bentuk message-oriented adalah MSMQ (Microsofr Message Queuing) yang dapat digunakan untuk distribusi data dan juga fitur antrian. WCF dan MSMQ dapat berkolaborasi guna menghasilkan aplikasi yang lebih baik. .NET Remoting .NET Remoting adalah platform komunikasi yang secara implementasinya hanya dapat digunakan pada lingkungan aplikasi berbasis .NET. WCF bisa dikatakan secara implisit merupakan pengganti dari teknologi .NET Remoting dengan fitur yang jauh lebih lengkap. Walau WCF dapat menggantikan .NET Remoting tetapi WCF sendiri dapat langsung berkomunikasi dengan .NET Remoting. ----------------- Bersambung ke [V]

Tags: , ,

.NET | Windows | Distributed System

Buku Trilogi Clustering Technology

by Agus Kurniawan 17. August 2009 07:43
Seperti yang sebelumnya gw tulis di blog mengenai dua buku yang semua bercerita tentang clustering: Windows Server 2008 R2 Clustering SQL Server 20008 Clustering Sebenarnya ada satu lagi buku mengenai clustering yang akan gw tulis yaitu Web Server Clustering. Buku ini akan memaparkan mengenai clustering pada Web Server baik NLB maupun Failover Clustering. Web Server yang digunakan adalah IIS 7.5 yang running diatas Windows Server 2008 R2 Clustering. Buku Trilogi Clustering Yeah, anda tidak salah membaca. Gw sudah lama ingin membuat buku trilogi Clustering yang membahas skenario clustering pada Windows. 3 Buku yang gw ditulis adalah Windows Server 2008 R2 Clustering SQL Server 20008 Clustering Web Server Clustering Ide buku trilogi clustering karena sedikitnya informasi mengenai teknologi clustering. Diperburuk lagi tidak semua mempunyai kesempatan untuk implementasi atau mengerjakan project berbasis clustering. Sharing ilmu inilah diharapakan dapat meningkatkan stimulasi untuk lebih giat belajar. 3 buku ini dirancang untuk para admin dan IT pro untuk membantu deployment teknologi clustering dari Microsoft. Semoga semuanya bisa kelar sebelum akhir tahun 2009. Harus bisa

Tags: , ,

Books | Database | Windows

SQL Server 2008 Clustering

by Agus Kurniawan 17. August 2009 07:27
Setelah seleseai RTM buku Windows Server 2008 R2 Clustering, next plan adalah menulis buku mengenai SQL Server 2008 Clustering yang mana berjalan diatas Windows Server 2008 R2 Failover Clustering. Buku ini dirancang untuk para admin atau IT pro dalam melakukan deployment SQL Server 2008 Clustering sehingga mempermudah proses deployment. Buku ini akan full Hands-on-Lab (HOL). Berikut garis besar daftar isinya: 1. Mengenal SQL Server 2008 2. Persiapan SQL Server 2008 Clustering 3. Instalasi dan Deployment SQL Server 2008 Clustering 4. Manajemen SQL Server 2008 Clustering 5. Uninstall SQL Server 2008 Clustering -------------- Untuk memahami isi buku ini, pembaca harus sebelumnya memahami Windows Server 2008 R2 Clustering karena pada buku ini tidak membahas mengenai ini. Disarankan untuk membaca buku yang saya tulis Windows Server 2008 R2 Clustering Progress buku ini dapat dilihat di blog ini, semoga bermanfaat

Tags: , ,

Books | Database | Windows

My Book :: Windows Server 2008 R2 Clustering

by Agus Kurniawan 17. August 2009 06:38
Gw mempersiapkan buku Windows Server 2008 R2 Clustering sejak Microsoft release Windows Server 2008 R2. Setelah release RTM [v], akhirnya gw cek apa ok semua dan hasilnya. Jadi buku ini gw kirim ke penerbit untuk di cetak. Windows Server 2008 R2 Clustering Buku ini disusun dengan harapan dapat membantu para IT professional dalam implementasi Windows Failover Clustering pada Windows Server 2008 R2 termasuk didalamnya mengenai File Server. Buku ini lebih memfokuskan ke hands-on-lab. Berikut ini daftar isi buku ini Kata Pengantar    Daftar Isi    1. Sekilas Mengenal Windows Server 2008 R2        1.1 Fitur Baru Pada Windows Server 2008 R2            1.1.1 Core Services            1.1.2 Networking dan Mobility            1.1.3 Sekuriti            1.1.4 Server Management        1.2 Edisi Windows Server 2008 R2        1.3 System Requirements        1.4 Instalasi Windows Server 2008 R2        1.5 Aktivasi Windows    2. Windows Clustering        2.1 Mengenal Windows Clustering            2.1.1 Apakah Itu Clustering?        2.2 Network Load Balancing        2.3 Windows Failover Cluster            2.3.1 Fitur Baru Windows Server 2008 R2 Failover Cluster        2.4 Topik Bahasan    3. Planning dan Design Windows Failover Clustering        3.1 Terminologi Windows Failover Clustering            3.1.1 Node            3.1.2 Cluster Service            3.1.3 Shared Disks            3.1.4 Resource            3.1.5 Resource Dependencies            3.1.6 Services dan Application            3.1.7 Quorum            3.1.8 Heartbeat            3.1.9 Virtual Server            3.1.10 Failover            3.1.11 Failback        3.2 Mengenal Failover Cluster Design Process        3.3 Skenario Failover Cluster            3.3.1 File and Print Serve            3.3.2 Clustered Instance untuk Service dan Application    4. Persiapan Windows Failover Clustering        4.1 Persiapan Windows Failover Clustering        4.2 Hardware Untuk Windows Failover Clustering        4.3 Software Untuk Windows Failover Clustering        4.4 Storage        4.5 Networking        4.6 Simulasi Windows Failover Clustering    5. Instalasi dan Deployment Windows Failover Clustering        5.1 Studi Kasus Windows Failover Clustering            5.1.1 Skenario             5.1.2 Logical Design            5.1.3 Physical Design        5.2 Active Directory            5.2.1 Instalasi Active Directory            5.2.2 Join Cluster Node ke Active Directory        5.3 Storage        5.4 Instalasi Cluster            5.4.1 Menambahkan Failover Clustering Features            5.4.2 Validasi Cluster            5.4.3 Membuat Cluster        5.5 Failover Cluster Manager    6. Deployment File Server Pada Windows Failover Clustering        6.1 File Server        6.2 Deployment            6.2.1 Menambah File Service Role            6.2.2 Instalasi File Server Pada Windows Failover Clustering    Daftar Pustaka Profile    ------------------ So semoga bisa langsung tercetak sekitar 2-3 minggu dari sekarang, tunggu saja informasinya disini..   Update 28.01.2014, buku ini dapat dimiliki melalui pembelian online ini, http://hijaubuku.com/?p=43

Tags: ,

Books | Windows

Windows Server 2008 R2 is released Now…

by Agus Kurniawan 17. August 2009 06:05
Akhirnya Microsoft meluncurkan Windows Server 2008 R2. Anda bisa mengunduh versi evaluasi 180 hari di http://msdn.microsoft.com/en-us/evalcenter/dd459137.aspx Disini tersedia satu versi saja yaitu 64-bit (x64) edition. So hurry up

Tags:

Windows

Microsoft Sync Framework

by Agus Kurniawan 15. August 2009 23:05
Untuk topik majalah PC Media, gw menulis mengenai Microsoft Sync Framework. Seperti kita ketahui sinkronisasi data dapat dikatakan aktivitas yang sering dilakukan pada suatu aplikasi baik antar aplikasi atau sembarang perangkat keras. Membangun aplikasi sinkronisasi yang reliable tidak mudah, oleh karena itu Microsoft menyediakan platform sinkronisasi yang dapat diimplementasi dengan berbagai skenario. Solusi yang ditawarkan adalah Microsoft Sync Framework. Apa itu Microsoft Sync Framework? Microsoft Sync Framework adalah sebuah platform sinkronisasi yang memungkinkan untuk melakukan kolaborasi dan kemampuan mengakses secara offline pada suatu aplikasi, servis, dan perangkat keras. Teknologi ini mempunyai karekteristik yang dapat melakukan roaming, sharing dan berkomunikasi dengan data offline. Dengan menggunakan Microsoft Sync Framework, programmer dapat membuat ekosistem sinkronisasi yang dapat diintegrasikan dengan sembarang aplikasi dengan data apapun pada protokol jaringan. …. Lebih lengkapnya dapat dibaca di majalah edisi nopember 2009

Tags: ,

Papers | Windows

SharePoint Designer 2007 is Free

by Agus Kurniawan 14. August 2009 22:34
Bagi pencinta SharePoint terutama para designer, Microsoft sudah mengratiskan SharePoint Designer 2007 sehingga ini mempermudah kita dalam membangun aplikasi SharePoint. SharePoint Designer 2007 ini dapat diunduh pada alamat berikut http://www.microsoft.com/downloads/details.aspx?FamilyID=baa3ad86-bfc1-4bd4-9812-d9e710d44f42&displaylang=en So seharusnya ini dapat memicu untuk lebih giat belajar SharePoint

Tags: ,

Windows | SharePoint

Tampilan ASP.NET jadi Ladyboy ketika Dibuka dengan IE8

by Agus Kurniawan 5. April 2009 11:00
Minggu lalu gw install IE8 pada notebook Windows Vista 32-bit. Secara fitur memang banyak sekali ditawarkan oleh IE8. Ada bisa melihat para developer blogger memberikan informasi kelebihan dari IE8. Terlepas pro dan kontro terhadap IE8. Gw sendiri setelah install ada beberapa anomali seperti ketika kita masuk website yang ada flash kadang kalanya IE8 mengalami hang walaupun flash gw sudah di upgrade ke flash 10. kalau anda pakai flash 9 lebih parah hang ketikan memakai browser IE8. Aplikasi ASP.NET Setelah gw upgrade browser IE8, gw melanjutkan untuk coding ASP.NET. Gw perhatikan seperti ada anomali yaitu tampilan berubah. Gw oprek sana-sini rupanya tidak berubah sama sekali…oh.shiit..ini apa sih. Gw coba jalanin Virtual OS gw dengan Windows Vista tetapi IE7 dengan gw browse lagi aplikasi ASP.NET, well bagus dan tidak berubah. Haaah, ini kambing merah ada di IE8. Gw coba google dan masuk diskusi baik eksternal dan internal mengenai IE8, rupanya memang banyak sekali cerita dibalik IE8. So bagi anda yang sudah membangun aplikasi ASP.NET dengan memanfaatkan CSS, menangis anda karena tampilan ASP.NET akan berubah ketika dilihat dengan browser IE8 Solusi tercepat supaya tampilan aplikasi ASP.NET normal pada IE8 maka setiap page dipasang script diantara tag <HEAD> </HEAD>: 1: <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> kalau page banyak banget dan gak paka masterpage yang sial anda tapi kalau pakai masterpage maka cukup menambahhkan di masterpage saja. Solusi panjang maka aplikasi mesti revisi CSS sesuai dengan kebaruan pada IE8, cek di URL ini http://msdn.microsoft.com/en-us/library/cc288472.aspx Alternatif anda bisa menggunakan CSS Adapter, itu info dari komunitas tapi tetap aja masih problem ketika browse melalui IE8

Tags:

.NET | Windows

About Agus Kurniawan

Agus Kurniawan

For more detail about me click here [V]

Please entry your name into my guestbook [V]

If you want to contact me, please go here [V]

Go here for my professional services [V]

My Books

Vue.js Programming by Example 

Arduino MKRFOX1200 Development Workshop  Intelligent IoT Projects in 7 Days

Teensy Development Workshop Teensy 3.5 and Teensy 3.6 Boards Edition OpenMV Development Workshop

ESPresso Lite V2.0 Development Workshop  MicroPython for ESP32 Development Workshop

Arduino FIO Development Workshop  Getting Started with Android Things for Raspberry Pi 3

Pycom WiPy 2.0 Development Workshop  XBee ZigBee Development Workshop

SparkFun ESP32 Thing Development Workshop Getting Started With BBC micro:bit

Getting Started With Raspberry Pi Zero W Espruino Pico Development Workshop

Getting Started with ASP.NET Core for OS X, Linux, and Windows  Arduino TIAN Development Workshop

SimpleLink Wi-Fi CC3200 LaunchPad Development Workshop  MicroPython for ESP8266 Development Workshop

Smart Internet of Things Projects  Arduino UNO WiFi Development Workshop

XBee Wi-Fi development workshop SparkFun Simblee BLE Development Workshop

Mengenal Microsoft Azure ML Getting Started with Windows 10 IoT Core for Raspberry Pi 3

Arduino and Genuino Zero Development Workshop Go and SQL Server Programming By Example

Arduino and Genuino MKR1000 Development Workshop  Mengenal Microsoft Azure IoT

Getting Started with Raspberry Pi 3 PHP and PostgreSQL Programming By Example

Arduino and Genuino 101 Development Workshop Getting Started with Raspberry Pi Zero

Getting Started with Arduino Wiring for Windows 10 IoT Core Getting Started with Wolfram Language and Mathematica for Raspberry Pi

Arduino Uno: A Hands-On Guide for Beginner Arduino Leonardo and Arduino Micro: A Hands-On Guide for Beginner

RedBearLab CC3200 Development Workshop The Photon Kit Development Workshop

Python Programming by Example Raspberry Pi LED Blueprints

Bluno Beetle Development Workshop BeagleBone Black Programming using Matlab

Arduino Programming using MATLAB Digispark USB Development Workshop

Near Field Communication (NFC) for Embedded Applications Arduino Development for OSX and iOS

SparkFun ESP8266 Thing Development Workshop Teensy Development Workshop

Getting Started with Windows 10 for Raspberry 2 NodeMCU Development Workshop

Getting Started with ASP.NET 5 for OS X, Linux, and Windows Getting Started with Windows Remote Arduino

Redis Programming by Example The Hands-on ARM mbed Development Lab Manual

Getting Started With STM32 Nucleo Development Getting Started with Windows IoT and Intel Galileo

Learning C by Example Getting Started with Raspberry Pi 2

Getting Started with Arduino and Go The Hands-on Arduino Yún Manual Lab

The Hands-on MEAN Lab Manual, Volume 1 Go Programming by Example

Getting Started with Scratch for pcDuino Raspberry Pi Wireless Networks

BeagleBone Black Programming by Example Database Programming Using R

Learning R in 120 Minutes The Hands-on Intel Edison Manual Lab

Getting Started with pcDuino3 TI ARM Cortex-M LaunchPad Programming by Example

Raspberry Pi I/O Programming using Python Getting Started with Intel IoT and Intel Galileo

Pemrograman Java Tingkat Lanjut PHP and MongoDB Programming By Example

ASP.NET SignalR Programming By Example KnockoutJS Programming by Example

Getting Started with Java ME Embedded 8 and Raspberry Pi XBee IEEE 802.15.4 Programming

Raspberry Pi System Programming for Beginner Backbone.js Programming By Example

PHP and SQL Server Programming By Example AngularJS Programming by Example

jQuery Programming by Example Getting Started with Arduino and Ruby

Raspberry Pi Command Line for Beginner Getting Started with Arduino and Python

MSP430 LaunchPad Programming TypeScript Programming by Example

Getting Started with Matlab Simulink and Arduino SQL Server for Node.js

Pocket Reference: Netduino for Beginner Database Programming using Matlab

Pocket Reference: Basic Sensors in Windows 8 Getting Started with Matlab Simulink and Raspberry Pi

Getting Started with Arduino and Java  Pocket Reference: Raspberry Pi Programming

Getting Started with Arduino and Matlab Getting Started with Arduino and .NET

Pocket Reference: Raspberry Pi Getting Started with Arduino and Node.js

MongoDB for VB.NET Panduan Praktis Windows Azure

Network Forensics: Panduan Analisis Dan Investigasi Paket Data Jaringan Menggunakan Wireshark Object-Relational Mapping (ORM): MongoDB, Mongoosejs and Node.js By Example

Nodejs Programming by Example MongoDB for by Example

Pemrograman Parallel Dengan MPI dan C Panduan Lengkap iPad 2 Untuk Pemula

Pemrograman Jaringan Dengan Java Aplikasi Pilihan iPad Untuk Anak-Anak

Buku lainnya [V]

Agus Kurniawan is Microsoft MVP (Most Valuable Professional)

Agus Kurniawan- Github Profile

Agus Kurniawan- Codeplex Profile

Follow Me

Follow agusk2010 on Twitter

Month List