cshtml页面内部@的用法不正确



我正在尝试创建一个按钮,向我的控制器发送POST请求。我的问题是.cshtml页面不想呈现,因为两个注释之间存在一些问题。我不知道如何将@正确应用于页面。你能帮我吗?

谢谢。

@if (identity.IsInRole("AdminAFM") || identity.IsInRole("ResponsabilAFM"))
{
if (Model.ValidationMessages.Contains("VIN") == true)
{
<div class="form-group">
<div class="col-xs-6">
<a class="btn btn-lg btn-block btn-default faa-parent animated-hover" href="@Url.Action("DownloadFile", "InvoiceValidation", new { fileName = Model.FileInfoGuid })">
<i class="fa fa-download faa-tada"></i>&nbsp;Descarcare fisier
</a>
</div>
<div class="col-xs-6">
<a id="ValidareManuala" class="btn btn-lg btn-block btn-success animated-hover" href="@Url.Action("ValidateInvoiceManual", "InvoiceValidation", new { ValidationID = Model.InvoiceValidationID })">
<i class="fa fa-check"></i>&nbsp;Validare manuala
</a>
</div>
</div>
// Zone with problem
using (Html.BeginForm("ValidateInvoiceManualWithoutRequestNumber", "InvoiceValidation", FormMethod.Post))
{
@Html.TextBoxFor(Model => Model.RequestName);
<button type="submit">Setare Numar inregistrare</button>
}
// end of zone with problem
}
}

我试过像这个

@using (Html.BeginForm("ValidateInvoiceManualWithoutRequestNumber", "InvoiceValidation", FormMethod.Post))
{
Html.TextBoxFor(Model => Model.RequestName);
<button type="submit">Setare Numar inregistrare</button>
}

版本2:

@using (Html.BeginForm("ValidateInvoiceManualWithoutRequestNumber", "InvoiceValidation", FormMethod.Post))
{
@Html.TextBoxFor(Model => Model.RequestName);
<button type="submit">Setare Numar inregistrare</button>
}

版本3:

@using (@Html.BeginForm("ValidateInvoiceManualWithoutRequestNumber", "InvoiceValidation", FormMethod.Post))
{
Html.TextBoxFor(Model => Model.RequestName);
<button type="submit">Setare Numar inregistrare</button>
}

版本4:

@using (@Html.BeginForm("ValidateInvoiceManualWithoutRequestNumber", "InvoiceValidation", FormMethod.Post))
{
@Html.TextBoxFor(Model => Model.RequestName);
<button type="submit">Setare Numar inregistrare</button>
}

我的控制器

[HttpPost]
public ActionResult ValidateInvoiceManualWithoutRequestNumber(InvoiceModel model) 
{
using (var conn = new SqlConnection(connectionString))
using (var command = new SqlCommand("ProcedureName", conn) { CommandType = CommandType.StoredProcedure }) 
{
conn.Open();
command.ExecuteNonQuery();
}
return RedirectToAction("Index");
}

应该是这样的,你错过了几个@

@if (identity.IsInRole("AdminAFM") || identity.IsInRole("ResponsabilAFM"))
{
@if (@Model.ValidationMessages.Contains("VIN") == true)
{
.....  
@using (Html.BeginForm("ValidateInvoiceManualWithoutRequestNumber", "InvoiceValidation", FormMethod.Post))
{
@Html.TextBoxFor(model => model.RequestName);
....

但我看不出身份。IsInRole。它在哪里被定义?也可能是问题所在

最新更新