Хм, как насчет просто:
Repeater1.DataSource = list;
Это, конечно, то, что я бы ожидал ... Вы пробовали это?
Я подозреваю, что выснова и снова видеть одни и те же значения - это потому, что вы заполняете свой список несколькими ссылками на один объект.Вы должны создать свой NewAddedFile
внутри вашего цикла:
foreach (FileInfo fi in FileList)
{
NewAddedFiles file = new NewAddedFiles();
string relativeFilePath = "~//" +
fi.FullName.Replace(Request.ServerVariables["APPL_PHYSICAL_PATH"], "");
file.FileName = fi.Name;
file.FilePath = relativeFilePath;
file.FileCreationDate = fi.CreationTime;
list.Add(file);
}
Или использовать LINQ:
List<NewAddedFiles> list = FileList.Select(fi =>
new NewAddedFiles {
FileName = fi.Name,
FilePath = "~//" + fi.FullName
.Replace(Request.ServerVariables["APPL_PHYSICAL_PATH"], ""),
FileCreationPath = fi.CreationTime
}).ToList();
В отношении FilePath
, кстатиЯ подозреваю, что есть лучшие подходы ...