asp.net查看语法和html助手

duxfox--

这实际上是两个问题合二为一。

第一个问题是关于以下方面的:

<div class="form-group">
 @Html.LabelFor(model => model.xxx, htmlAttributes: new { @class = "control-label col-md-2" })
 <div class="col-md-10">
  @Html.EditorFor(model => model.xxx , new { htmlAttributes = new { @class = "form-control" } })
  @Html.ValidationMessageFor(model => model.xxx, "", new { @class = "text-danger" })
 </div>
</div>

我不明白这model => model.xxx意味着什么,我知道它在做什么,但是我不知道如何解释语法。

第二个问题是,例如,如果我有-

foreach (var item in Model)

我该如何更换

@Html.EditorFor(model => model.xxx , new { htmlAttributes = new { @class = "form-control" } })

@Html.EditorFor(item.stringProperty , new { htmlAttributes = new { @class = "form-control" } })

当我尝试此操作时,它给了我错误,是否有一个重载的EditorFor helper接受此信息?

谢谢你!

马雷克·沃尼亚克(MarekWoźniak)

一个视图可以具有0或1个从控制器发送的模型。

public class Person
{
    public string Name {get;set;}
    public int Age {get;set;}
}

public ViewResult Index()
{
    Person p = new Person() { Name = "P1", Age = 100};
    return View(p);//
}

如果您的视图的名称为“索引”,则可以使用第二种方法查看,其中包含2个参数:ViewNamemodel

return View("Index", model: p);

那么View您可以使用model,如果已实现以下功能:

@model Person//and remember about namespace
@
{
 ...
}

@using(Html.BeginForm("ActionName", "controllerName", FormMethod.Post))
{
     @Html.EditorFor(model => model.Name); // it create input, check in F12 in your browse - then you can exactly understand.
}

如果要为项目创建编辑器,则必须使用:

  @Html.TextBox("YourName")

例如:

@using(Html.BeginForm("Action", "controller")
{
   @Html.TextBox("YourName")
   <input type="submit" value="ok"/>
}

并在您的controller控制器中:

public ViewResult Action(string YourName)
{
     //here you got value for string YourName
     return View();
}

并在这里有帮助地回答:ASP.NET MVC获取文本框输入值

编辑,回答有关确切问题的信息(包含在问题下方的评论中):

我有一个列表,我想为列表中的每个项目显示一个输入文本框,但是我希望每个文本框在创建时都在其中包含文本,列表中每个项目的文本(来自该项目的属性)

@foreach(var item in Model)
@using(Html.BeginForm("MyMethod", "Controller"))
{
   @Html.TextBox("item", item)
   <input type="submit" value="ok" />
}

并在您的控制器中添加MyMethod

[HttpPost]
public ViewResult MyMethod(string item)
{
 ...
}

或者

[HttpPost]
public ViewResult MyMethod(int item) //if it's an int
{
 ...
}

如果您想拥有更好的安全页面,请阅读以下内容Html.AntiForgeryTokenhttp : //msdn.microsoft.com/zh-cn/library/dd470175(v=vs.118).aspx

@using(Html...())
{
@Html.AntiForgeryToken()
(...)
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将HTML助手迁移到ASP.NET Core

ASP.NET“ asp-route”标记助手多义

asp.net 核心 post 方法、标签助手和查询字符串

ASP.Net MVC:为什么我的内联 html 助手不打印任何内容

在ASP.NET Core MVC中选择标签助手

ASP.Net中的图表助手显示DateTime

ASP.NET Core:标记助手“选择”为空

Asp.Net Core 2复杂标记助手

ASP.NET Core MVC 标签标签助手

如何将Jquery与Asp.Net Mvc Core 2.2的html助手一起使用

ASP.NET Core的“ asp-fallback-*” CDN标记助手如何工作?

ASP 核心:@Html.ValidationMessage 迁移到 asp-validation-for 或类似的标签助手

ASP.NET-@语法和<%%>之间的区别?

ASP.NET 5 MVC 6中的单选按钮标记助手

用于ntext属性的ASP.NET MVC textarea标记助手不起作用

asp.net核心单选按钮助手为每个单选按钮始终呈现相同的ID

标记助手在ASP.NET Core 2中未得到处理

ASP.Net Core:从一个标签助手输出2个标签

在ASP.NET Core MVC中使用标签助手的优势是什么

asp.net vnext中的自定义输入标签助手

如何在Asp.Net MVC助手方法中使用简单注入器

ASP.NET Core中的单元测试标签助手-填充标签公共属性

将ASP.NET MVC Razor @helper函数转换为助手类的方法

ASP.NET图表助手的自定义标题字体

ASP .Net Core自定义标签助手将CamelCase属性转换为空格

静态 ID - ASP.NET Core 分布式缓存标签助手

asp.net Web API csv助手写入流不起作用

ASP.NET Core自定义标签助手无法正常工作

VB ASP.NET DisplayFor枚举无法使用DisplayFor助手正确显示