0

私のaspxコードには、これがあります(DevExpress Image Control):

<dx:ASPxBinaryImage Value='<%# GetPhoto(Eval("Photo")) %>' ID="BinaryImagePreview"  runat="server" ClientIDMode="AutoID" Width="100px" />

次に、コードビハインドでこれを持っています:

    protected static byte[] GetPhoto(byte[] photo)
    {
        return photo;
    }

私のテーブル列 Photo は Varbinary(Max) 型です SqlDbType.Varbinary が byte[] にマップされていることを読んでいたので、ここで問題はないはずですが、コンパイラは常にエラーをスローします:

'StoreProfile.Admin.GetPhoto(byte[])' に最適なオーバーロードされたメソッドに無効な引数が含まれています

なんで?

私がやりたい理由は、写真が存在するかどうか (null かどうか) を確認することです。次に、ディスクから no_photo.jpg のようなデフォルトの写真を表示します。

4

1 に答える 1

0

わかりました。キャストが抜けていました。この方法でメソッドを呼び出すと、問題が解決しました。

GetPhoto((byte[])Eval("Photo"))
于 2011-07-14T15:30:53.197 に答える