0

私は持っています、

var car = db.QuerySingle("SELECT * FROM Stock WHERE Id = @0", carId);

テーブル「ストック」には、画像データ列ImgF1、ImgF2、...、ImgF12があります。次に、これらの画像を次のように取得します

<ul>
@for(int i = 1; i < 12; i++){
    var imageName = "ImgF" + i;
    if(car.@imageName != null){
        <li>
            <img class="small_image" alt="image" src="@Href("~/Cars/XSThumbnail",carId, new{index = i})">
        </li>
    }else{

    }
}

問題は、car。@ imageNameまたはcar.imageNameが機能しないことです。これは、imageNameが列名ではなく、列名の単なる変数であるためです。


どうぞよろしくお願いします。何かアイデアがあればありがたいです!!

4

2 に答える 2

1

内部的には、メソッドは、列名でインデックス付けできるDynamicRecordインスタンスをQuerySingle返します。

@for(int i = 1; i < 12; i++){
    var imageName = "ImgF" + i;
    if(car[imageName] != null){
        <li>
            <img class="small_image" alt="image" 
                 src="@Href("~/Cars/XSThumbnail",carId, new{index = i})">
        </li>
    }else{

    }
}
于 2013-02-03T07:01:29.357 に答える
0

これを変更してみてください:

if(car.@imageName != null){

if(car[imageName] != null){

幸運を。

于 2013-02-03T07:01:13.570 に答える