我编写了以下C#模型。
public class Account
{
[HiddenInput]
public int Id { get; set; } // id
public string AccountName { get; set; } // aName
}
在Razor页面中,我写了如下表格。
@using (Html.BeginForm("Modify", "Account", FormMethod.Post))
{
@Html.AntiForgeryToken();
&
我有一个页面,您可以添加公司。一家公司有多名员工。以下是我的视图模型:
public class CompanyViewModel
{
[ScaffoldColumn(false)]
public int CompanyId { get; set; }
public string Name{ get; set; }
public List<EmployeeViewModel> Employees { get; set; }
}
public class EmployeeViewModel
{
[ScaffoldColumn(false)
对于work请求,如果我使用的是局部视图,那么模型绑定似乎不起作用。
主视图的模型是MainViewModel。
public class MainViewModel
{
ModelPart Model {get;set;}
}
public class ModelPart
{
Public string MyVariable {get; set;}
}
如果我将主视图模型传递给分部视图,则绑定成功,并且在Controller Post方法中可以找到MyVariable中的任何输入。
MainPage
@model TEST.MainViewModel
@using (Htm
我正在尝试发布PersonViewModel的列表,只要PersonViewModel没有任何IFormFile属性,它就可以正常工作。 Razor页面模型: public class TestModel : PageModel
{
[BindProperty]
public PersonViewModel[] People { get; set; }
public void OnGet()
{
}
public void OnPost()
{
// Do something with People propert
我有一个带有Html.BeginForm()的视图,它调用一个局部视图(下面提到,没有表单),传入主视图模型。该模型具有数据注释。
在页面的初始加载中,如果我没有选择适当的值就尝试提交,那么验证就能完美地工作。
我在页面上还有另一个按钮,如果单击该按钮,将使用$.ajax() post to Controller加载页面上同一局部视图的另一个实例,它只返回PartialView,并将其附加到现有的div。
如果我现在尝试提交表单这些动态控件,尽管它们被绑定到相同的模型,尽管我已经设置了正确的.ValidationMessageFor帮助器,但不会对它们进行验证,因为这些控件似乎不是使用data
我有两个这样的类(简单地说)
public class Page
{
int pageNumber;
string content;
}
public class Book
{
public string name;
public List<Page> pages;
}
现在,在剃须刀视图中,我有一个表单,允许添加一本书,表单中有一个页面列表,可以添加页面。
目前,页面是动态地添加到表单中的,我使用Request.Form在控制器中获取值,用于在控制器中构建页面列表。问题是,在输入控制器中的操作之前,我如何使用页面(例如,页面必须有一个不为空的内容
我有一个强类型的局部视图,它的模型包含一个与父页面的视图模型同名的属性。由于某些原因,呈现引擎呈现的是父视图模型的值,而不是期望值(嗯,至少是我期望的值!)
父页面视图模型提取:
public class ParentPageViewModel
{
public int Id { get; set; } // problem property
...
public IEnumerable<ChildViewModel> Children { get; set; }
}
子页面视图模型提取:
public class ChildViewModel
{
我想要一个标签,它基本上在我的剃刀页面模型上执行post操作,包括一个参数。理想情况下,我不希望在它周围有一个表单,并在href="post-to-action"中有到相应操作的链接
在MVC中,我总是能够调用一个控制器操作,而不需要一个包含以下按钮/的表单:
<a href="@Url.Action("Information", "Admin", new { id = UrlParameter.Optional })">Add an Admin</a>
这对剃刀页面不起作用,我很确定。我正在努力寻找剃刀