我有一个奇怪的问题,即我的vbhtml文件中的模型将正确引用并显示1项的模型属性,而不是另一项。 仅供参考,页面将添加为部分页面,并连接到另一个vbhtml页面。
我的页面的结构使得我想在每个问题(问题文本)下面列出一些人(受益人)。
我使用以下语法引用我的Model类型:@ModelType RHEAL_START.QuestionWithAnswers,因此这应该会自动允许在实例化时声明模型项。
@ModelType声明正确地允许引用第二个模型字段(Model.benAnswers),但不是我声明的第一个模型字段(Model.questionText)。
这两个项目都是同一模型的一部分,我尝试移动和标题上方和下方的声明但是,这并没有为Model.questionText带来智能感知。
我查看了以下文章,并尝试在布局文件的引用中添加,但唉,这也没有带来智能感知。 MVC3 - render view that is not a method in a controller
请参阅下面的代码。任何人都可以建议我哪里出错了我还能尝试什么? 如果您需要更多信息,请告诉我。
@ModelType RHEAL_START.QuestionWithAnswers
@Code
Layout = "~/Views/MedicalQuestions/MedicalQuestions.vbhtml"
End Code
<div id="questionPanel">
@Code
Dim qAndARef As Integer = 0
End Code
<!-- Show question text and number -->
<h1><a href="#">Model.questionText</a></h1>
<table>
<tr>
<td style="font-weight: bold">
Beneficiary </td>
<td style="font-weight: bold">
Yes/No </td>
<td style="font-weight: bold">
Details </td>
</tr>
<!-- !!Iterating over each beneficiary for Medical Question -->
@For Each benanswer As RHEAL_START.BeneficiaryAnswer In Model.benAnswers
Html.Partial("../MedicalQuestions/BeneficiaryAnswerPartial", benanswer)
Next
</table>
@*@Html.ValidationSummary()*@
</div>
@Section Scripts
@Scripts.Render("~/Scripts/RHEAL/YesNoDropDownValidation.js")
End Section
答案 0 :(得分:0)
我对Razor的VB语法并不熟悉,但看起来你错过了@Model.questionText
前面的@符号