私はあなたのスナップショットに十分な注意を払っていませんでした。 Model
はIEnumerable<UploadedFile>
のコレクションなので、最初にIEnumerable<UploadedFile>
を取得するには[0]
が本当に必要です。
List<Upload.Models.UploadedFile> files = Model.ToList()[0].ToList();
それとも、ただのようなファイルを列挙できます:だから、あなたは何をする必要があるかである
@foreach (var item in Model.ToList()[0])
{
...
}
EDIT:それは強い型付きを返すように良い方法がある があなたのコントローラを変更しますモデル、および不要なネストされたリストを取り除く:
public ActionResult TestPDF(List<int> fileid)
{
var myModel = new List<UploadedFile>();
foreach (var id in fileid)
{
myModel.Add(db.UploadedFiles.Find(id));
}
return View(myModel);
}
次に、あなたがあなたのビュートンで@model
を修正することができます確認
public ActionResult TestPDF(List<int> fileid)
{
List<Upload.Models.UploadedFile> myModel = fileid == null ? new List<Upload.Models.UploadedFile>() : db.UploadedFiles.Where(o => fileid.Contains(o.ID)).ToList();
return View(myModel);
}
うん、:あなたと仮定すると
EDIT 2 によって
とループファイルは、Entity Frameworkのを使用しているO、あなたはそれ以上にコントローラをさらに絞り込むことができそれ。それでも例外が発生します。 @ m.rogalski – Vasja
UploadedFileをListに 'as'を使用してキャストしようとしているため、有効でないためnullが返されます。 –