【发布时间】:2019-11-15 00:49:08
【问题描述】:
这些实体是我想要完成的虚构等价物(实际上更复杂)。
只有在创建文章时,我才需要额外的字段(SendToSubscribers 字段),这些字段不是实体本身的一部分。
public class Article {
public string Title { get; set }
}
public class ArticleCreateForm : Article {
public bool SendToSubscribers { get; set; }
}
在创建/更新的cshtml中有:
@model Article
...
@if (string.IsNullOrEmpty(Model.Id))
{
<admin-input asp-for="SendToSubscribers" />
不幸的是,这是我得到的错误:
“Article”不包含“SendToSubscribers”的定义,并且找不到接受“Article”类型的第一个参数的可访问扩展方法“SendToSubscribers”(您是否缺少 using 指令或程序集引用?)
对不起,如果方法一点都不好,我来自 PHP 背景。
我想这不是一个好的解决方案,所以我怎样才能使它正确?谢谢。
【问题讨论】:
-
不需要创建另一个模型只是为了隐藏title字段,当razor页面渲染成html表单时,只会渲染razor页面中定义的字段。
-
在这种情况下它不起作用,因为该字段是 SendToSubscribers
-
c# 不适合这个。
-
@dctremblay 请检查 formcollection 对象以传递类中的动态实体
标签: c# asp.net-mvc asp.net-core razor