WCF (Windows Communication Foundation) farklı sistemlerin birbirleri ile iletişimini sağlmak için geliştirilmiş bir sistemdir. Özellikle windows store app veya windows phone app gibi uygulamalar için önemli bir yapıdır. Veritabanı ile uygulamanız arasında bir katman oluşturan wcf ile sunucu ve istemci arasındaki ilişkinin temel taşını oluşturmaktadır.
Bu yazıda daha önce windows azure platformuna aktardığımız veritabanımızı kullanarak bir windows store app geliştireceğiz ancak bu iki işlem arasındaki veri iletişimini kurabilmek için WCF servisinden faydalanacağız. Oluşturacağımız WCF servisinide windows azure üzerinde host ederek bu işlemi gerçekleştireceğiz.
İlk olarak Visual studio üzerinden cloud app oluşturarak başlıyoruz.
Projeyi oluştuduktan sonra karşımıza çıkan Azure Cloud Service penceresi üzerinden WCF Web Role seçeneğini sağ tarafa aktarıyoruz.
WCF Web role oluşturduktan sonra solution explorer’da görebileceğiniz üzere 2 adet farklı proje dosyası göreceksiniz birisi oluşturacağınız servise ait olan dosya diğeri bu servisin azure platformu üzerinde sağlanacağı dosyadır.
denemeServis kısmında bulunan Roles sekmesi altındaki WCFServiceWebRole1’e çift tıklayarak Settings sekmesinde yeni bir Configration Setting oluşturmamız gerekmektedir.
Bu işlemi yaptıktan sonra sayfayı save ederek kapatabiliriz. Bu işlemden sonra azure projesi altındaki ServiceConfguration.Cloud.csfg dosyası üzerinde yeni bir configruation ayarı görebilirsiniz.
Gerekli konfügrasyonları sağladıktan sonra servisimizin içeriğini oluşturabiliriz. Bunun için öncelikle servisimizin bulunduğu solution içerisine ADO.NET Entity Data Model eklememiz gerekmektedir.
Oluşturduğumuz data modeli daha önce azure platformundaki database ile entegre ediyoruz.
Oluşturduğumuz bu .edmx uzantılı dosyayı kaydederek kapatabiliriz. Servisimizin içeriğini oluşturacak olan kodlamaya geçebiliriz.
Servis1.svc.cs klasörü içeriğini aşağıdaki gibi yazıyoruz.
IService1.cs üzerindeki kodlamayı aşağıdaki şekilde görebiliriz.
Kodlama işlemini bitirdikten sonra projemizi azure üzerine publish etmemiz gerekiyor. bunun için servis üzerine sağ tık ve Publish To Windows Azure seçeneği ile deploy işlemini başlatabiliriz.
Windows Azure Publish Settings adımlarını takip ederek publis işlemini bitirebilirsiniz. Tabi bu işlem biraz zaman alabilir. Visual Studio üzerinde windows azure Activity Log ile işlemin ilerlemesini izleyebilirsiniz.
Bu işlem son bulduktan sonra servisimiz windows azure üzerinde host edilmiş olacaktır. bunu görebilmek için azure management portalın eski sürümü olan windows.azure.com adresine girerek host edilen servislerinizi görebilirsiniz.
ve son olarak servisimizi oluşturduğumuz cloud servis’in bize sunduğu domain adresi ile girerek görebiliriz. Bu adresi deployement sırasında görebilirsiniz.
svcutil.exe http://onurvm.cloudapp.net/Service1.svc?wsdl
Oluşturulan adresi projelerimize servis referans ekleyerek kullanabiliriz.
Teşekkürler….