2017-03-08 8 views
0

に静的メソッドからリスト を渡すことができない:別のクラスにおいて なぜ私はこのような静的メソッド持つ非静的メソッドのC#

private static void UpdateExportDate(List<string> lstWithdraw, List<string> lstUnit) 
    { 
     ServiceReference3.PSSWebServiceSoapClient pwssc = new ServiceReference3.PSSWebServiceSoapClient("PSSWebServiceSoap12"); 
     ((IContextChannel)pwssc.InnerChannel).OperationTimeout = new TimeSpan(2, 0, 0); 

     pwssc.UpdateInfo(lstWithdraw, lstUnit); 
    } 

を、私はこのような非静的メソッドを持っています。

public void UpdateInfo(List<string> lstWithdraw, List<string> lstUnit) 
    { 
     UvAccountConversion uac = new UvAccountConversion();   
    } 

cannot convert from 'System.Collections.Generic.List<string>' to 'string[]' 

私はWHIリストを(削除しようとしている:私はプロジェクトを実行すると

が、それは誤りがあると述べていますchは2弦のみを渡すことを意味します)、それは成功しています。しかし、私はレコードを 'リスト'として渡したいと思います。

助けてください!

+0

を試してみてください、あなたは含めるために何かを見逃したのか?どの行が実際のエラーを示していますか? –

答えて

-1

私は、現在のコードに何か問題が表示されていないList.ToArray()

pwssc.UpdateInfo(lstWithdraw.ToArray(), lstUnit.ToArray()); 
+0

'pwssc.UpdateInfo'の署名に気付きましたか? –

+2

これはエラーを生成します: "文字列[]から 'System.Collections.Generic.Listに変換できません' –

+0

これは質問に答えることはありません – Enigmativity

3

エラーメッセージ自体は「System.Collections.Generic.List」から「string []」に変換できません」パースパラメータに関しては、静的メソッドとインスタンスメソッドの違いはありません。

エラーがどこかではなく、リスト

リストの配列を持っている必要があることを示しているあなたは、配列を返すために、リスト上のメソッドを呼び出すことができますが、配列と同じではありません。

List<string> someList = new List<string>{"a","B","c"}; 
someList.ToArray(); //string[] containing ["a","B","c"] 
+0

質問にどのように答えますか?おそらくこれはコメントになります –

+0

これは質問に答えません。 – Enigmativity

+0

エラーメッセージ自体は「System.Collections.Generic.List 」から「string []」に変換できません」パースパラメータに関して静的メソッドとインスタンスメソッドの違いはありません。エラーは、*どこか*リストの代わりに配列を持つ必要があることを示しています。

関連する問題