@model Efdbfirst.Models.Student@{ VIEwBag.Title = "Details";}<h2>Details</h2><div> <h4>Student</h4> <hr /> <dl > <dt> @HTML.displaynameFor(model => model.Lastname) </dt> <dd> @HTML.displayFor(model => model.Lastname) </dd> <dt> @HTML.displaynameFor(model => model.Firstname) </dt> <dd> @HTML.displayFor(model => model.Firstname) </dd> <dt> @HTML.displaynameFor(model => model.EnrollmentDate) </dt> <dd> @HTML.displayFor(model => model.EnrollmentDate) </dd> <dt> @HTML.displaynameFor(model => model.MIDdlename) </dt> <dd> @HTML.displayFor(model => model.MIDdlename) </dd> </dl> <table > <tr> <th> Course Title </th> <th> Grade </th> <th> Credits </th> </tr> @foreach (var item in Model.Enrollments) { <tr> <td> @HTML.displayFor(modelitem => item.Course.Title) </td> <td> @HTML.displayFor(modelitem => item.Grade) </td> <td> @HTML.displayFor(modelitem => item.Course.Credits) </td> </tr> } </table></div><p> @HTML.Actionlink("Edit","Edit",new { ID = Model.StudentID }) | @HTML.Actionlink("Back to List","Index")</p>
在第一行有模型和模型.我很确定模特
指的是项目根目录中的“Models”文件夹.
在那里有几行@ HTML.displaynameFor(model => model.Lastname),里面有模型.这个与第一行中的模型有什么不同?
然后再次出现@foreach(Model.Enrollments中的var项),其中包括Model,现在这个不以“s”结尾,所以我认为它不是指项目根目录中的Models文件夹.那是什么?
还有modelitem,我不确定它只是一个参数还是指这个类中的东西.
最后一个是@ HTML.Actionlink(“编辑”,“编辑”,新{ID = Model.StudentID})
,它类似于foreach中使用的那个,这指的是同一个东西吗?
在您查看的内部,您可以使用模型参考您的模型.因此,如果您想要迭代已传递给此视图的学生对象的注册,则只需执行以下 *** 作:
@foreach(var enrollment in Model.Enrollments){}
对此,@ HTML.displaynameFor(model => model.Lastname)这是一个HTML帮助器,在这种情况下将为您创建一个名为Lastname的模型属性的标签.
关于HTML助手,请看看here.此外,你可以传递给这个帮手:
@HTML.displaynameFor(m => m.Lastname)
或这一行:
@HTML.displaynameFor(x => x.Lastname)
你使用模型并不重要.这只是对传递给VIEw的模型的引用.
最后但同样重要的是,@ HTML.Actionlink(“编辑”,新的{ID = Model.StudentID})也是一个创建HTML链接的HTML助手.
总结以上是内存溢出为你收集整理的c# – 对ASP.NET视图中的“模型”含义感到困惑全部内容,希望文章能够帮你解决c# – 对ASP.NET视图中的“模型”含义感到困惑所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)