2012-12-28 20 views
5

VS2010'da bir web hizmeti oluşturmaya çalışıyorum ve bunu 3.5 Framework Web Hizmeti projesi olarak yapıyorum.VS2010 Web Hizmetinde Yöntemler Framework 3.5 yerel olarak çalıştırıldığında görünmüyor

Orada varsayılan Hello World yöntemini ve eklediğim bazı var. Eklediklerim, veri kümesine bağlanan veri sağlayıcı sınıfına bir çağrı var. Ancak yerel olarak çalıştırdığımda, sadece Merhaba Dünya yöntemini görüyorum ve yeni yöntemlerim değil. Daha sonra merhaba dünya yöntemini silip tekrar çalıştırıyorum ve hala görüyorum.

Bu yerel olarak çalıştırmak için ne yapmam gerekiyor ve bu benim hazırlama ve üretim sunucularında çalıştırmak için aynı işlem mi?

1.1'de hizmet oluşturmaya alışkınım ve bu benim ilk oluşturduğum 3.5.

+3

Hizmet Referansını Güncellemeyi Denediniz mi? –

+0

Hizmeti nasıl oluşturdunuz? Bir WCF servisi mi, ASMX mi? –

cevap

5

"Gösterilmiyor" ifadesiyle, web hizmetleri web sitesini çalıştırdığınızda ve .asmx sayfasına gittiğinizde, yöntemin, gösterilen servis çağrıları listesinde görünmediği anlamına gelir. Bu ekran görüntüsü:

enter image description here

Eğer kastettiğin buysa ....

sadece fonksiyon tanımlamasından önce [WebMethod()] beyanı kaçırıyorsun ya Büyük olasılıkla EĞER, veya yöntem kamuya açıklanmamıştır.

Örnek: yerel olarak web hizmeti projesi çalıştırdığınızda

[WebMethod()] 
public string GetName(int EmployeeNumber) 
{ 
    // some code to get name from emplyee # 
    return ReturnValue; 
} 

göstermek gerekir.

hiçbiri bu olur:

public string GetName(int EmployeeNumber) 
{ 
    // some code to get name from employee # 
    return ReturnValue; 
} 

veya Dahası

[WebMethod()] 
private string GetName(int EmployeeNumber) 
{ 
    // some code to get name from employee # 
    return ReturnValue; 
} 

, ben tahmin ediyorum o size MerhabaDünya yöntemini silmek ne zaman yöntemine bakın sebebi, nedeni Sadece yöntemi siliyor ve [WebMethod()] bildirimini bırakıyorsunuz. Bu, daha sonra kodu, [WebMethod()] bildiriminin işlevinize uygulanacak şekilde değiştirecektir; çünkü bu, bildirimin ardından muhtemelen ilk işlevdir.

+0

"Gösterilmiyor" ile başka bir şey ifade ediyorsanız, bana bildirin ve bu cevabı sileceğim veya değiştireceğim. – David

0

İşlevinizin statik olarak bildirilip bildirilmediğini kontrol edin. Yani hatta [WebMethod()] aşağıdaki durumda çalışmaz:

[WebMethod()] 
public static string GetName(int EmployeeNumber) 
{ 
// some code to get name from employee # 
return ReturnValue; 
} 

statik çıkarın ve işe yarayacak !!

İlgili konular