Php ile .Net Assembly Kullanımı

by Mehmet KURT 22. Ekim 2009 19:17

Seviye : İleri

Uzun zamandır sizlerden uzak kalmanın üzüntüsü içerisinde araştırma ve geliştirmelerime son gaz devam ederken, son dönemlerde php ve .net arasında kullanılmak üzere bir kütüphane geliştiriyorumdum. Kütüphaneyi .net ortamında C# ile yazıyorum. Kütüphaneyi yazdım iyi güzel'de php ile nasıl kullanacaktım ? Önce sorunun kaynağına inip aralarında nasıl bir ilişki olduğunu çözmek gerekiyordu. Araştırmalarım sonucunda iki ortamında ortak noktası olan Component Object Model(COM)'dan yararlanmanın en sağlıklı yöntem olduğuna kanaat getirdim. Aşağıdaki gibi bir .net class'ımız olduğunu düşünerek başlıyoruz. Kısaca bu class'ı php ortamında nasıl kullanacağımıza dair küçük bir örnek gösteriyor olacağım.

namespace VeriMask

{

    public class Product

    {

 

        public int ID { get; set; }

        public int Name { get; set; }

        public int Code { get; set; }

 

        public string GetNameAndCode()

        {

            return String.Format("Product Name : {0}, ProductCode : {1}", this.Name, this.Code);

        }

    }

}

Yukarıda oluşturduğumuz class'ımızı bir proje'ye include edip. Bu projeyi build ediyoruz. gacutil /i c:\projedizinimiz\dll dosyamızın adı şeklinde komut satırından çalıştırıp. Assembly Sisteme kayıt ettiriyoruz.

Bu işlemden sonrası çocuk oyuncağı :) İşte o sihirli kodlar.

<?
$objemiz = new COM ("dllAdımız.VeriMask.Product");
$objemiz ->GetNameAndCode = "05/08/2002";

echo "$objemiz->GetNameAndCode";
echo "<BR>Product ID : $MyObj->ID";
?>

Php dosyamızı çalıştırıp çıkan sonucu gördüğümüzde gözlerimiz yaşarıyor. Ne güzel bir kardeşlik oldu :)

Bu kısa makalemiz tamamen ileri seviye düşünülmüş ve ona göre yazılmıştır. Bu nedenle orta veya alt seviye bilgi sahibi arkadaşlar info@mehmetkurt.net email adresine bilgi almak için mail atabilirler.

Tags: , , ,

ASP.NET | Visual C# | Php

Yorumlar

22.02.2010 18:55:43 #


Teşekkürler paylaşım için emeğine sağlık.

msn indir Turkey

Yorum ekle




  Country flag

biuquote
  • Yorum
  • Canlı önizleme
Loading



Powered by BlogEngine.NET 1.5.0.7
Theme by Mads Kristensen

Çeviri - Translation

Calendar

<<  Mart 2010  >>
PaSaÇaPeCuCuPa
22232425262728
1234567
891011121314
15161718192021
22232425262728
2930311234

View posts in large calendar