0

getFirstStudent メソッドを持つインターフェースを実装しようとしています。私の考えは、私の部分的なビューを使用しているすべてのビューモデルでこのメソッドを利用できるようにすることです。このようにして、複数のビューモデル(理論的には不可能)を部分ビューに渡す問題を解決します。

インターフェース

public Interface IMiniView 
{
       string GetFirstStudentId();
}

最初のビューモデル:

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 という名前の文字列があることに注意してください。

4

2 に答える 2

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;
        }
    }
}
于 2013-05-20T03:29:36.110 に答える
0

これを使用できます。

return StudentList.First().SutdentId;
于 2013-05-20T03:30:43.033 に答える