在这里完成Noob - 尝试学习Dot Net Core 2 Razor Pages。试图找出怎样做" down and dirty"编辑我的一些模特。我打算尝试使用反射,但那不起作用 - 或者显然我不知道自己在做什么。
我们说我的数据模型定义为:
public class Book
{
public int Id { get; set; } = 0;
[Required]
[MaxLength(75)]
[Display(Name = "Book Title")]
public string Title { get; set; }
[Required]
[MaxLength(50)]
public string Author { get; set; }
[Required]
[Range(0,99)]
public decimal Price { get; set; }
[Required]
[Range(0, 5)]
public int Rank { get; set; }
}
我发现如果使用:
@Html.EditorFor(model => model.Book)
...在我的.cshtml(编辑或创建)页面上,我可以获得一个基本的编辑或创建屏幕,该屏幕尊重模型中所有字段的验证和其他属性。大!我可以用它来进行基本的管理数据编辑。
问题是双重的:
任何组合:
//[ScaffoldColumn(false)]
//[HiddenInput(DisplayValue =false)]
//[HiddenInput]
//[DefaultValue(0)]
//[ReadOnly(true)]
//[Editable(false)]
......似乎无法正常工作。
有没有办法完成上面列出的两个要求?
答案 0 :(得分:0)
不久前,我自己遇到了这个问题。 [HiddenInput(DisplayValue =false)]
确实可以工作,但是当您将数据模型放入页面(或视图)时,它仍会生成与其他输入相同的语法。但是,在运行时,输入将呈现为隐藏输入。