标签: tag-helpers

在ASP.NET Core MVC中选择Tag Helper

我需要帮助ASP.NET Core中的select标签助手.

我有一个员工列表,我正在尝试绑定到选择标记帮助程序.我的员工在一个List<Employee> EmployeesList和选定的价值将进入EmployeeId财产.我的视图模型如下所示:

public class MyViewModel
{
   public int EmployeeId { get; set; }
   public string Comments { get; set; }
   public List<Employee> EmployeesList {get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我的员工类看起来像这样:

public class Employee
{
   public int Id { get; set; }
   public string FullName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我的问题是如何告诉我的选择标记助手在下拉列表中Id显示时使用该值作为值FullName

<select asp-for="EmployeeId" asp-items="???" />
Run Code Online (Sandbox Code Playgroud)

我很感激这方面的一些帮助.谢谢.

c# asp.net-core-mvc tag-helpers asp.net-core

141
推荐指数
3
解决办法
15万
查看次数

如何在ASP.NET Core MVC中向asp标记助手添加链接参数

我对ASP.NET MVC 1-5有很多经验.现在我学习ASP.NET Core MVC并且必须将参数传递给页面中的链接.例如,我有以下Action

 [HttpGet]
 public ActionResult GetProduct(string id)
 {
      ViewBag.CaseId = id;
      return View();
 }
Run Code Online (Sandbox Code Playgroud)

如何使用标记帮助程序实现此操作的链接?

<a asp-controller="Product" asp-action="GetProduct">ProductName</a>
Run Code Online (Sandbox Code Playgroud)

c# url-parameters asp.net-core-mvc tag-helpers asp.net-core

81
推荐指数
3
解决办法
5万
查看次数

TagHelper用于将路由值作为链接的一部分传递

在指定asp-controllerasp-action链接时,传递id属性的语法是什么?

例如,如果我想链接到给定对象的编辑URL,则所需的URL将是/user/edit/5例如.

有没有一种方法可以使用TagHelper实现这一目标,还是我们仍然需要回归@Html.ActionLink()

asp.net-core-mvc tag-helpers asp.net-core

43
推荐指数
3
解决办法
4万
查看次数

使用Select TagHelper设置默认值/空值

在asp.net mvc中你可以使用:

@Html.DropDownListFor(model => model.Category, ViewBag.Category as IEnumerable<SelectListItem>, "-- SELECT --", new { @class = "form-control" })
Run Code Online (Sandbox Code Playgroud)

使用asp.net 5,如何 在taghelper中包含default或null值( - SELECT - ):

<select asp-for="Category" asp-items="@ViewBag.Category"  class="form-control"></select>
Run Code Online (Sandbox Code Playgroud)

c# asp.net-core-mvc tag-helpers asp.net-core

27
推荐指数
2
解决办法
1万
查看次数

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

我没有在ASP.NET 5 MVC 6中看到任何用于单选按钮的标记助手.在我需要使用单选按钮的情况下,处理表单元素的正确方法是什么?

c# asp.net-mvc asp.net-core-mvc tag-helpers asp.net-core

25
推荐指数
2
解决办法
3万
查看次数

MVC 6标签助手和foreach

为了显示集合中的项目,我将为asp-for标签标签助手的属性提供什么?下面的代码生成编译错误.

@foreach (var item in Model)
{
    <label asp-for="item.BookingCode"></label>
}
Run Code Online (Sandbox Code Playgroud)

collections asp.net-core-mvc tag-helpers

23
推荐指数
1
解决办法
1万
查看次数

asp.net有条件地禁用标记助手(textarea)

我想启用或禁用textarea取决于从模型中评估的条件,我正在使用textarea标记帮助器.换句话说,这样的事情:

<textarea asp-for="Doc" @(Model.MustDisable ? "disabled" : "")></textarea>
Run Code Online (Sandbox Code Playgroud)

但是我得到了以下设计时错误:标签帮助器'textarea'在元素的属性声明区域中不能有C#.

然后我尝试了:

<textarea asp-for="Doc" disabled='@(Model.MustDisable ? "disabled" : "")'></textarea>
Run Code Online (Sandbox Code Playgroud)

它没有显示任何设计时错误但它呈现如下: Model.MustDisable==true渲染disabled='disabled'Model.MustDisable==false渲染disabled.因此,文本区域将始终被禁用.

然后我尝试(删除's):

textarea asp-for="Doc" disabled=@(Model.MustDisable ? "disabled" : "")></textarea>
Run Code Online (Sandbox Code Playgroud)

它没有显示任何设计时间错误,但它呈现与前一个相同.

我怎样才能以正确的方式实施?

razor asp.net-core-mvc tag-helpers

23
推荐指数
3
解决办法
9062
查看次数

我可以在返回html的自定义Tag Helper中使用Tag Helper吗?

我最近遇到了一种情况,我想在标签助手中使用标签助手.我环顾四周,找不到其他人试图这样做,我使用的是一个糟糕的惯例,还是我缺少文档?

防爆.Tag Helper A输出包含另一个标记助手的HTML.

防爆.

[HtmlTargetElement("tag-name")]
public class RazorTagHelper : TagHelper
{
    public override void Process(TagHelperContext context, TagHelperOutput output)
    {
        StringBuilder sb = new StringBuilder();
        sb.Append("<a asp-action=\"Home\" ");
        output.Content.SetHtmlContent(sb.ToString());
    }
}
Run Code Online (Sandbox Code Playgroud)

有没有办法让我<a asp-action> </a>从C#处理标签助手?或者使用标记帮助程序重新处理输出HTML?

c# asp.net asp.net-mvc asp.net-core-mvc tag-helpers

20
推荐指数
3
解决办法
3281
查看次数

在MVC 5中使用MVC 6 Tag Helpers

Tag Helpers是ASP.NET中HTML Helpers的一个很好的替代品.代码在使用时更容易阅读.据我所知,它们可以在ASP.NET Core(以前版本ASP.NET 5)中使用MVC 6.

是否可以使用标签助手ASP.NET 4.x MVC 5?如果是这样,那我该怎么做呢?

如果没有,有没有办法编写代码来创建自己的标签助手ASP.NET 4.x MVC 5

asp.net-mvc-5 tag-helpers

18
推荐指数
1
解决办法
3046
查看次数

.Net核心标记助手智能感知和颜色编码不起作用

我遇到了.NET核心和标记助手的问题.当我输入asp-for时,颜色编码和智能感知不显示或被注册.我已经尝试在单独的实例中创建一个新的解决方案,验证了intellisense的工作原理,然后将project.json复制到没有工作智能感知/颜色编码的项目中,并且它不能解决问题.

这是我的project.json

{
  "dependencies": {
    "Microsoft.NETCore.App": {
      "version": "1.0.0",
      "type": "platform"
    },
    "Microsoft.AspNet.Tooling.Razor": "1.0.0-rc1-final",
    "Microsoft.AspNetCore.Diagnostics": "1.0.0",
    "Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0",
    "Microsoft.AspNetCore.Mvc": "1.0.1",
    "Microsoft.AspNetCore.Mvc.TagHelpers": "1.0.1",
    "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.1",
    "Microsoft.AspNetCore.StaticFiles": "1.0.0",
    "Microsoft.EntityFrameworkCore.SqlServer": "1.0.1",
    "Microsoft.Extensions.Configuration.FileExtensions": "1.1.0",
    "Microsoft.Extensions.Configuration.Json": "1.1.0",
    "Microsoft.Extensions.Logging.Console": "1.0.0",
    "Microsoft.Extensions.Logging.Debug": "1.0.0",
    "Microsoft.AspNetCore.Routing": "1.0.1",
    "Microsoft.AspNetCore.Razor.Tools": {
      "version": "1.0.0-preview2-final",
      "type": "build"
    },

    "Microsoft.VisualStudio.Web.CodeGeneration.Tools": {
      "version": "1.0.0-preview2-final",
      "type": "build"
    },
    "Microsoft.VisualStudio.Web.CodeGenerators.Mvc": {
      "version": "1.0.0-preview2-final",
      "type": "build"
    }
  },

  "tools": {
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final",
    "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final"
  },

  "frameworks": {
    "netcoreapp1.0": {
      "imports": [
        "dotnet5.6",
        "portable-net45+win8"
      ]
    }
  }, …
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc intellisense json tag-helpers

14
推荐指数
1
解决办法
4350
查看次数