我正在尝试实现一个具有getFirstStudent方法的接口。我的想法是让所有使用我的局部视图的视图模型都可以使用此方法。通过这种方式,我将解决将多个视图模型(理论上不可能)传递给局部视图的问题。
接口
public Interface IMiniView
{
string GetFirstStudentId();
}
FirstViewmodel:
namespace XXX.ViewModel
{
public class StudentsViewModel: IMiniView
{
public IEnumerable<StudentInfoViewModel> StudentList { get; set; }
public string GetFirstStudentId()
{
return = ???????
}
}
}
我过去常常把第一个学生视为......
@Model.StudentsViewModel.StudentList.ElementAt(0).StudentID
现在我想在GetFirstStudent方法中访问它。请注意,StudentInfoViewModel有一个名为StudentID的字符串
答案 0 :(得分:0)
这有帮助吗?
namespace CivicaEducation.Business.Ces.ViewModel
{
public class StudentsViewModel: IMiniView
{
public IEnumerable<StudentInfoViewModel> StudentList { get; set; }
private StudentInfoViewModel FirstStudent
{
get
{
if (StudentList == null || StudentList.Count() == 0) {
return null;
}
return StudentList.FirstOrDefault();
}
}
public string GetFirstStudentId()
{
return FirstStudent == null : string.Empty ? FirstStudent.Id;
}
// you can add more methods / properties to you interface like this
public string GetFirstStudentName()
{
return FirstStudent == null : string.Empty ? FirstStudent.Name;
}
}
}
答案 1 :(得分:0)
你可以使用它。
return StudentList.First().SutdentId;