2012-04-05 14 views
2

こんにちは私はWCFの学習を始めましたが、私は理解していないエラーが発生しました。C#オーバーロードされたメソッドエラー

この方法では、というエラーを返します。

をするための最良のオーバーロードされたメソッドの試合

を "「PersonKlient.ServiceReference1.PersonTjenesteGrensesnitt.searchAge(INT) は、いくつかの無効な引数を持っている" ここにありますコード

private void button3_Click(object sender, EventArgs e) 
    { 
     var personer = _tjeneste.searchAge(textBox2.Text); 

     listBox1.Items.Clear(); 
     foreach (var person in personer) 
     { 
      listBox1.Items.Add(person.Fornavn + " " + person.EtterNavn); 
     } 
    } 

しかし、呼び出されるメソッドはString引数を取ることになっています。 intではありません。

 public List<Person> searchAge(String age) 
    { 
     List<Person> result = new List<Person>(); 
     int numAge = Convert.ToInt32(age); 

     foreach (Person person in personer) 
     { 
      if (person.Alder == numAge) 
       result.Add(person); 
     } 
     return result; 
    } 

なぜこのエラーが発生しますか?

答えて

4

サービスを変更しました(パラメータをintからstringに変更しましたが)プロキシコードを再生成しませんでしたか?それは確かにそれを説明するでしょう - サービス参照を再生成し、すべてがうまくいくはずです。

+0

私はVisual Studioでも新しくなっていますので、リファレンスを再生成する方法を教えてください。 – SvennK

+1

@SvennK参照を右クリックし、コンテキストメニューから[Web /サービス参照の更新]を選択します。 –

関連する問題