2011-11-25 23 views
5

Bu, muhtemelen çok basit. Bir WCF hizmeti ile uygulama arasında bilgi iletişiminde kullanılan bir [DataContract] sınıfının içinde bir kod oluşturmak istedim.Paylaşılan [DataContract] sınıfı için taşınabilir sınıf kitaplığı

Yeni bir Taşınabilir Sınıf Kitaplığı projesi oluşturdum ve bunun içinde [DataContract] sınıfım oluşturdum. Bu gerçekten basit - birkaç kolay öznitelikleri (çoğunlukla dizeleri) vardır. WCF hizmetimde DLL'ye bir başvuru ekledim ve yeniden yayımladı. Daha sonra servis referansımı tüketici projemden sildim ve tekrar ekledim. Çok güzel, sorun yok.

Aslında kullanmak istediğimde sorun geliyor. Bakın, tür 'Eval' denir. Bazı WCF yöntemleri bu 'Eval' türünü döndürür. Bu yüzden referans referansımın içinde bulunan Reference.cs dosyasında 'Eval' serisinin bu serileştirilmiş versiyonuna sahibim. Açıkçası bu sadece serileştirilmiş sürümü olduğundan beri aradığım yöntemi içermiyor. Müşteri projesine de dll ekleyebilirim, ancak iki ad alanında iki farklı Eval nesnesine sahibim ve yalnızca service.cs dosyasındaki servis çağrıları için döndürülen geçerli.

Peki, nasıl ... erm ... ikisini birleştiririm? Böylece WCF servis çağrılarından gelen Eval nesneleri de söz konusu yönteme erişebiliyor mu?

Okuma için teşekkürler ve bu yollarda güvende kalın.

cevap

5

servis başvurusu oluştururken size sınıfları yeniden kullanılmalıdır ve hangi dersleri orada hizmet enter image description here

+1

1 Güzel çözüm :) – Venemo

+0

Merhaba oluşturulabilir gerektiğini belirtebilir. Belki biraz yoğun olabilirim, ama biraz detaylandırır mısın? Demek istediğim, dlls'i hizmetten nasıl tekrar kullanabileceğinizi konuşuyorsunuz, ama tam olarak ne yapacağımı bilmiyorum. 'EvalPortableClassLibrary' (projenin adı) için bir onay kutum var. Varsayilanin yeniden kullanilmasi gerektigini düsündüm, EvalPortableClassLibrary haricindeki herşeyi tiklamak istiyorum. Bunu yaparsam, yine de Eval'in varsayılan kullanımı olarak kullandığı References.cs içinde bir genel kısmi sınıf Eval'ı verir. Yanlış anladım mı? – user738383

+0

Referansınızı silin ve derlemeniz hariç yeniden ekleyin. Bazen referansı doğru şekilde güncellemez –

İlgili konular