问题标签 [editortemplates]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1884 浏览

asp.net-mvc - ASP.NET MVC - 当由于不显眼的 js 验证而已经存在类时,如何向 Html.EditorFor 添加一个类?

我正在尝试将 a添加Class到.EditorForEditorTemplate

问题是因为我使用的是Unobtrusive Validation,所以输入元素已经分配了类。

这是我的编辑器模板

这是输出

您可以在此处看到datepicker该类尚未添加,但“值”已正确格式化。

基本上我可以看到它EditorTemplate正在工作,但Class没有被附加到<input>元素上的其余类中。

你们中有人知道如何解决这个问题吗?

0 投票
1 回答
651 浏览

asp.net-mvc - Why isn't my EditorTemplate firing?

Here's the item from the View

Here's the code from the EditorTemplate (simplified)

but the output doesn't have the span tags.

The datatype of the model.BirthDate is Date?

The folder structure is

  • Views
    • Shared
      • EditorTemplates
        • Date.vbhtml

EDIT

Ok, so after some digging, I found that if I add <UIHint("Date")> to my BuddyClass, then the template works.

So my "new" question would be... why wouldn't it pick this up by default?

0 投票
1 回答
2129 浏览

asp.net - 用于集合的 Asp MVC3 自定义编辑器模板(是否为空)

经过大量谷歌搜索、stackoverflowing(?)和博客阅读后,我仍然无法完全解决问题。希望这个专家社区可以来救援!

给定:具有字段 ICollection 的 Company 类(一个 Company 可以有多个地址)。每个地址都有几个简单的字符串字段。

简洁版本:

我希望用户能够向公司添加任意数量的地址。首先,我想显示一组地址文本框,然后显示“添加更多地址”按钮。Javascript 没有问题,而 mvc 部分。如果不清楚,功能应该与此类似: http ://www.mdelrosso.com/sheepit/index.php?lng=en_GB&sec=demo3

我需要使用 MVC EditorForModel() 函数,这意味着所有配置都需要进入编辑器模板。

目前状态:

  • 为编辑公司页面创建 ViewModel (CompanyViewModel)
  • 将 [UIHint("Addresses")] 添加到字段 public ICollection Addresses { get; 放; }
  • 创建地址编辑器模板

在 Addresses EditorTemplate 中,添加新公司时,传入的模型为 Null(这并不奇怪)。如何为额外地址创建编辑器?我尝试了多个化身(使用 Razor):

但即使远程工作也无法生产任何东西。(上面的确切行给出了错误“模板只能用于字段访问、属性访问、单维数组索引或单参数自定义索引器表达式。”)

感谢您的任何指点!

/胜利者

0 投票
2 回答
4104 浏览

asp.net-mvc - 在 Razor 中创建 EditorTemplates 时出错

我在 ASP.NET MVC 3 中有一个完美运行的 ascx 编辑器模板,并尝试将其转换为 razor:

Ascx:

剃刀:

我重命名了 ascx,这样当 ASP.NET 选择编辑器模板时它不会发生冲突,我保存了带有 cshtml 扩展名的 razor 文件,所有这些。但在运行时,我收到此错误:

我究竟做错了什么?ASP.NET MVC 不识别 Razor EditorTemplates 吗?

0 投票
4 回答
13684 浏览

asp.net-mvc-3 - 日期时间字段错误的 ASP.Net MVC 3 EditorTemplate

此代码是从本教程中的一些 ASP.Net MVC 2 代码转换而来的:
MVC 2 Editor Template with DateTime

它是存储为“EditorTemplates/DateTime.cshtml”的 DateTime 字段的自定义 EditorTemplate。

但是,使用时出现以下错误@Html.EditorFor(model => model.NewAbsence.StartDate)

CS1973:“System.Web.Mvc.HtmlHelper”没有名为“TextBox”的适用方法,但似乎具有该名称的扩展方法。扩展方法不能动态调度。考虑强制转换动态参数或在没有扩展方法语法的情况下调用扩展方法。

我在这里看到了一些类似的帖子,其中提到了转换 EditorFor 方法的参数,但是我似乎无法在我的示例中使用它。

有人可以指出我需要在我的代码中更改什么。谢谢。

0 投票
5 回答
69321 浏览

asp.net-mvc - ASP.NET MVC 3 - 部分与显示模板与编辑器模板

所以,标题应该不言自明。

要在 ASP.NET MVC 中创建可重用的组件,我们有 3 个选项(可能是我没有提到的其他选项):

局部视图:

自定义编辑器模板:

自定义显示模板:

就实际的 View/HTML 而言,所有三个实现都是相同的:

所以,我的问题是 - 您何时/如何决定使用这三个中的哪一个?

我真正在寻找的是在创建一个问题之前要问自己的问题列表,其答案可用于决定使用哪个模板。

这是我发现使用 EditorFor/DisplayFor 更好的两件事:

  1. 他们在渲染 HTML 帮助器时尊重模型层次结构(例如,如果您的“Foo”模型上有一个“Bar”对象,“Bar”的 HTML 元素将使用“Foo.Bar.ElementName”渲染,而部分将具有“元素名称”)。

  2. 更健壮,例如,如果您List<T>的 ViewModel 中有 a of ,您可以使用@Html.DisplayFor(model => model.CollectionOfFoo),并且 MVC 足够聪明,可以看到它是一个集合并为每个项目呈现单个显示(而不是 Partial,这需要显式的 for环形)。

我还听说 DisplayFor 呈现“只读”模板,但我不明白 - 我不能在上面扔一个表格吗?

有人可以告诉我其他一些原因吗?有没有比较这三者的列表/文章?

0 投票
1 回答
851 浏览

asp.net-mvc - 帮助 asp.net mvc EditorFor

我有一个项目模型和一个任务模型。

在我的控制器中说我有

在我的项目强类型视图中,我有

我怎样才能让它显示项目的字段以及每个任务的字段?

请帮忙!

--------为澄清而添加

这段代码是我首先将 EconomicActivityIncomeDeclarations 与 IncomeDeclaration 关联起来的地方。

在视图中,对于 IncomeDeclaration 的强类型,我只是有

0 投票
1 回答
358 浏览

c# - 在外部库中存储编辑器模板

是否可以在外部库中创建编辑器模板以便在应用程序之间共享它们?我不想将 cshtml 文件存储在库中,只是想知道是否有一种方法可以像使用 html 助手一样创建和存储它们。有一些我经常使用,如果将它们全部放在一个库中以供参考,那就太好了。

0 投票
4 回答
4131 浏览

c# - ASP.NET MVC 3 通用显示模板

我刚刚使用 ASP.NET MVC 3 开始了一个项目。我在现有对象系统之上构建,所以我要做的第一件事就是为现有的各种类型定义显示和编辑器模板。

在 MVC 中是否可以使用通用参数定义 DisplayTemplate?例如,我们有一个BitString<T>类,它将枚举作为通用参数,并表示包装提供的枚举的选项列表。我希望我可以定义一个处理所有 BitString 实例的显示/编辑器模板。

我目前正在将 Razor 用于我的视图,但我不介意与 ascx(或直接 C#,如果有办法的话)混合和匹配来实现这一点

谢谢

编辑:我认为这可能是这个问题的一个重复......但它已经一年半了,所以也许有人在这一点上有更好的答案? 泛型部分视图:如何将泛型类设置为模型?

0 投票
1 回答
7822 浏览

asp.net-mvc - 列表的编辑器模板

我希望在我的 ASP.NET MVC3 站点中为一些基本模型创建一个通用编辑器。现在它们可以包含字符串、布尔值、枚举和列表集合。我想要做的是扩展默认编辑器模板以识别列表并显示一个自定义编辑器,该编辑器可以向该列表添加和删除字符串。所有其他工作都很好。

因为我当然不能命名文件 List.cshtml 有没有办法让它工作?另外为什么默认情况下枚举不下拉枚举列表?

我知道我可以创建名为模板的模型,但直到运行时我才知道类名。

感谢您的任何帮助和指导。