0

私は次のMVCコードを持っています:

@model ExchangeSite.Entities.BicycleSellerListing


    <fieldset>
    <legend>Images</legend>

        <div>
            <div class="imagelabel">
                Image #1
            </div>

            <div>
                <input type="file" name="[0].files" id="files_0" style="width:275px"/>
            </div>

            <div class="imagelabel">
                Image #2
            </div>

            <div>
                <input type="file" name="[1].files" id="files_1" style="width:275px"/>
            </div>

            <div class="imagelabel">
                Image #3
            </div>

            <div>
                <input type="file" name="[2].files" id="files_2" style="width:275px"/>
            </div>
        </div>
    </fieldset>

これが私のモデル/エンティティ、またはその少なくとも一部です。

public class BicycleSellerListing
{
    [HiddenInput(DisplayValue=false)]
    public int BicycleSellerListingId { get; set; }

    public virtual ICollection<BicycleImage> ImageList { get; set; }
}

関連するコントローラーが呼び出されると、ユーザーがシステムに既にアップロードしたファイル(最大3つ)をデータベースから取得します。方法がわからないのは、上記のMVCビューにそれらのファイルの名前を表示することです。

4

1 に答える 1

0

モデルにファイルのリストを配置し(MyList以下の例)、ビュー上でかみそりでforeachリストを反復処理してhtmlを繰り返すことができます。このようなもの(アイテムからIDを取得することもできます):

<fieldset>
<legend>Images</legend>

    <div>
    @foreach (var item in Model.MyList) {    
        <div class="imagelabel">
                Image #1
            </div>

            <div>
                <div>@item.FileName</div>
            </div>
          }     
    </div>
</fieldset>

更新:入力要素をdivに置き換えました。

于 2013-03-01T22:55:23.583 に答える