Oct202011

Javada ArrayList generic ile dönüş yapınca .NET te görememe problemi

Published by admin at 7:34 PM under

CustomerFindResponse isminde bir class ımız olsun, bunu biz ListArray olarak döndürmek istersek eğer ve bu web service imizi .NET ile çağırırsak sorun olacaktır.
Bir uyumsuzluktan ötürü .NET te ListArray dönüş değerini görmiyecektir.
Bunu engellemek için şöyle bir trick yapabiliriz, Öncelikle methodumuzun dönüş değerini ListArray değil normal Array olarak veriyoruz.
Biz Array döndüreceğiz ama içeride ListArray ile işlem yapacağız ve en son aşamada ListArray mizi Array e dönüştüreceğiz.
Bu dönüşüm işlemini yapan kodumuzda aşağıdaki gibidir.

Methodumuzun dönüş değeri Array oluyor
public CustomerFindResponse[]  customerFind ( CustomerFindRequest req )

Ama içeride işlemleri kolayca yapabilmek için biz ArrayList ile işlem yapıyoruz.
ArrayList<CustomerFindResponse> resArray=new ArrayList<CustomerFindResponse>();

En son dönüş aşamasında ise ArrayList imiz Arraye convert ediyoruz :)
CustomerFindResponse[] dataArr = resArray.toArray(new CustomerFindResponse[resArray.size()]);



[KickIt] [Dzone] [Digg] [Reddit] [del.icio.us] [Facebook] [Technorati] [Google] [StumbleUpon]

Tags:

E-mail | Permalink | Trackback | Post RSSRSS comment feed 0 Responses