खोज…


परिचय

MVC की दृश्य परत में कई मॉडल वर्ग का उपयोग करते हुए इस विषय का मुख्य फोकस

डायनेमिक ExpandoObject के साथ एक दृश्य में कई मॉडल का उपयोग करना

ExpandoObject ( System.Dynamic नाम स्थान) एक वर्ग है जिसे .Net Framework 4.0 में जोड़ा गया था। यह क्लास हमें रनटाइम पर किसी ऑब्जेक्ट पर गतिशील रूप से गुण जोड़ने और हटाने की अनुमति देती है। एक्सपेंडो ऑब्जेक्ट का उपयोग करके हम अपने मॉडल वर्गों को गतिशील रूप से निर्मित एक्सपेंडो ऑब्जेक्ट में जोड़ सकते हैं। निम्नलिखित उदाहरण बताते हैं कि हम इस गतिशील वस्तु का उपयोग कैसे कर सकते हैं।

शिक्षक और छात्र मॉडल:

public class Teacher  
{  
    public int TeacherId { get; set; }    
    public string Name { get; set; }  
} 

public class Student  
{  
    public int StudentId { get; set; }  
    public string Name { get; set; }  
}

शिक्षक और छात्र सूची के तरीके:

public List<Teacher> GetTeachers()  
{  
    List<Teacher> teachers = new List<Teacher>();  
    teachers.Add(new Teacher { TeacherId = 1, Name = "Teacher1" });  
    teachers.Add(new Teacher { TeacherId = 2, Name = "Teacher2" });  
    teachers.Add(new Teacher { TeacherId = 3, Name = "Teacher3" });  
    return teachers;  
}   

public List<Student> GetStudents()  
{  
    List<Student> students = new List<Student>();  
    students.Add(new Student { StudentId = 1, Name = "Student1"});  
    students.Add(new Student { StudentId = 2, Name = "Student2"});  
    students.Add(new Student { StudentId = 3, Name = "Student3"});  
    return students;  
}

नियंत्रक (डायनामिक मॉडल का उपयोग करके):

public class HomeController : Controller  
{  
    public ActionResult Index()  
    {  
        ViewBag.Message = "Hello World";  
        dynamic mymodel = new ExpandoObject();  
        mymodel.Teachers = GetTeachers();  
        mymodel.Students = GetStudents();  
        return View(mymodel);  
    }  
}

राय:

@using ProjectName ; // Project Name  
@model dynamic  
@{  
    ViewBag.Title = "Home Page";  
}  
<h2>@ViewBag.Message</h2>  

<h2>Teacher List</h2>  

<table>  
    <tr>  
        <th>Id</th>    
        <th>Name</th>  
    </tr>  
    @foreach (Teacher teacher in Model.Teachers)  
    {  
        <tr>  
            <td>@teacher.TeacherId</td>  
            <td>@teacher.Name</td>  
        </tr>  
    }  
</table>  

<h2>Student List</h2>  

<table>  
    <tr>  
        <th>Id</th>  
        <th>Name</th>  
    </tr>  
    @foreach (Student student in Model.Students)  
    {  
        <tr>  
            <td>@student.StudentId</td>   
            <td>@student.Name</td>  
        </tr>  
    }  
</table> 


Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow