0

グリッドビューのテンプレートにevalがあるaspxページにevalがあります。私の問題は、そのevalがオブジェクトであるパラメーターを持つメソッドを呼び出すことです。適切なパラメーターを受け入れるようにメソッドを変更し、evalstamentでキャストを使用できますか?

私はこのようなものが必要です:

<%# MyClas.MyMethod((string)Eval("Param1"),(int)Eval("Param2"), (string)Eval("Param3"))%>

4

1 に答える 1

1

適切なタイプまたはタイプオブジェクトを含む署名を作成できます。これは完全にデータとあなたの好みに依存します。パラメータのいずれかがNULLを返す場合、評価されたデータ項目のキャストに例外がある可能性があります。私は個人的に最初のオプションを好みますが、結果セットにnullがないことを常に確認します。

オプション1:

<%# MyClas.MyMethod((string)Eval("Param1"),(int)Eval("Param2"), (string)Eval("Param3"))%>

コード:

public string MyMethod(string param1, int param2, string param3) {
    return "";
}

またはオプション2:

<%# MyClas.MyMethod(Eval("Param1"),Eval("Param2"), Eval("Param3"))%>

コード:

public string MyMethod(object param1, object param2, object param3) {
    return "";
}

これがお役に立てば幸いです。

于 2012-11-06T10:33:00.073 に答える