2017-11-04 5 views
3

私は、次のようなオブジェクトのリストを渡す方法しました:動的パスリスト

public void BindGridView(int pageIndex, List<Users> lstUsers, GridView grd, Panel pl) 
{ 

} 

リストList<Users>上記固定されている中で参照を、私は静的で、それを渡すことができます方法。同じ方法を使用してグリッド内のデータを表示し、オブジェクトの他のリストがあるときは常に動的に渡すように計画します。上記のように、私は以下のように、すべてのリストを宣言しました:

public void BindGridView(int pageIndex, List<Groups> lstGroups, GridView grd, Panel pl) 
{ 
} 

public void BindGridView(int pageIndex, List<GroupDetails> lstGroupDetails, GridView grd, Panel pl) 
{ 
} 

は私がそうするたびに、私は任意のリストを渡すことができ、実用的な目的のために言って、動的にList<Dynamic>のようなものを、それを宣言することができます任意の方法THERですオブジェクトの?

+1

読むと方法は、一般的な作りと 'たくさん@Giladグリーンと私はそれを得た一覧' –

+0

感謝を渡します。 1つは、このリストのようなリストを宣言できますか?List lst = null; '試してみてください。**タイプまたは名前空間 'T'が見つかりませんでした**。 – user8512043

答えて

4

あなたはおそらくジェネリック医薬品を探しています。すなわち:ジェネリック医薬品について

public void BindGridView<T>(int pageIndex, List<T> lstUsers, GridView grd, Panel pl) 
{ 
    ... 
} 
+0

それをありがとう@Aominèこれは私が探していたものです。 1つは、このリストのようなリストを宣言できますか?List lst = null; '試してみてください。**タイプまたは名前空間 'T'が見つかりませんでした**。 – user8512043

+1

これはメソッドのスコープ内にある場合にのみ行うことができますが、 'T'メソッドの外側には存在しません。また、 'T'は単にプレースホルダなので、メソッドを呼び出すときに具体的な型、すなわち' List ' –

+1

を渡す必要があることに注意してください。クラス全体で 'T 'を使用できるクラス自体を一般化する必要があります。 [**ジェネリックス入門(C#プログラミングガイド)**](https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/generics/introduction-to-generics)を参照してください。 –