Forum

Asp.net Web service...
 
Bildirimler
Hepsini Temizle

Asp.net Web services Web Metot oluşturma hatası

3 Yazılar
2 Üyeler
0 Reactions
637 Görüntüleme
 vids
(@vids)
Gönderiler: 11
Eminent Member
Konu başlatıcı
 

Merhaba

 Ben  bir  E-ticaret projesi  içindeyim  metotları döndürmesi için bir web services oluşturdum  siparişlerin durumuna göre Sepet dizisi döndüren metodunda  bir  hata alıyorum  bir türlü  çözemedim  yaşta küçük  olduğundan  ingilizcem  fazla  yok sözlüklerle idare etmekteyim detaylı anlatamamış  olabilirim bunun için özür dilerim yardım ederseniz  sevinirim  

 Sepetler Listesi Class

 

[URL= http://img203.imageshack.us/img203/8092/adsztrd.jp g" target="_blank">http://img203.imageshack.us/img203/8092/adsztrd.jp g"/> [/IMG][/URL]

Hata  aldığım  Services Kodu

/

[URL= http://img156.imageshack.us/img156/8620/ads1n.jp g" target="_blank">http://img156.imageshack.us/img156/8620/ads1n.jp g"/> [/IMG][/URL]

Yazı olarak  belirttim

------------------------------------------------------------------------------------------------------- 

[WebMethod(true, MessageName = "SiparislerDurumaGore")]

        public Entity.Sepetler[] SepetListesi(byte durum)

        {

            if (Session["Anahtar"] != null)

            {

                return DvdDukkani.Facade.Sepetler.SepetlerListesi(durum).

                ToArray();

                

            }

            else

                return null;

        } 

 

 

Sepetler Listesi  CLass 

------------------------------------------------------------------------- 

 public static List<Entity.Sepetler> SepetlerListesi()

        {

            SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["DvdDukkaniConStr"].ConnectionString);

            SqlCommand cmd = new SqlCommand("SepetlerListesi", con);

            cmd.CommandType = CommandType.StoredProcedure;

            List<Entity.Sepetler> sepetlerListesi = new List<Entity.Sepetler>();

            try

            {

                con.Open();

                SqlDataReader dr = cmd.ExecuteReader();

                if (dr.Read())

                {

                    Entity.Sepetler sepet = new Entity.Sepetler();

                    sepet.SepetId1 = (int)dr["SepetId"];

                    sepet.Durumu1 = (byte)dr["Durumu"];

                    sepet.OlusturulmaTarihi1 = (DateTime)dr["OlusturulmaTarihi"];

                    sepet.UyeId1 = (int)dr["UyeId"];

                    sepet.OdemeTamamMi1 = (bool)dr["OdemeTamamMi"];

                    sepetlerListesi.Add(sepet);

                }

            }

            catch (Exception ex)

            {

                throw ex;

            }

            finally

            {

                con.Close();

            }

            return sepetlerListesi;

        }

 
 
Hata
 
Web  metotda 

'object' does not contain a definition for 'ToArray' and no extension method 'ToArray' accepting a first argument of type 'object' could be found (are you missing a using directive or an assembly reference?)

 

 

 

 
Gönderildi : 04/02/2011 23:33

(@ferhatkaratas)
Gönderiler: 100
Estimable Member
 

Selam,

Extention methodlar, . (nokta) konulup çağrılabilen metodlardır. Aldığınız hata da, ToArray() metodunun, kullandığınız yerde desteklenmediği.

ToArray metodu, Entiy Framework yapısında oldukça basit bir kullanıma sahip. 

Ayrıca bir e-ticaret projesinde, metodlarınızı neden Web Service'e yüklediğinizi de anlamadım 

Tavsiyem; eğer dışarıda başka bir sisteme veri sağlamayacaksanız, fonksiyonlarınızı bir web service üzerinde değil, static bir class üzerinde konumlandırmanız. 

Veri erişimini de "entity framework" ile gerçekleştirmeniz. EF kullandığınızda yukarıdaki sqlcommand, sqlconnection ortadan kalkacak, linq sorgularınız da ToArray extention metodlarını otomatik destekleyecektir.

 
Gönderildi : 05/02/2011 14:47

 vids
(@vids)
Gönderiler: 11
Eminent Member
Konu başlatıcı
 

Teşekkürler

 
Gönderildi : 05/02/2011 22:44

Paylaş: