c# - MVC 绑定(bind)到实体调用区域

标签 c# model-view-controller binding

我有一个名为 Area 的数据库实体。在我的 Create 模型中,我有以下代码:

public Entities.Entities.Area Area { get; set; }

然后在我看来,我只为 Area 中的每个属性输入了一个输入。

@Html.TextBoxFor(x => x.Area.Name)

当我保存表单时,Area 对象被传回为 null。但是,当我在 Create 模型中更改 Area 对象名称并更新 View 中的引用时,它会保存。

public Entities.Entities.Area AreaDetail { get; set; }

@Html.TextBoxFor(x => x.AreaDetail.Name)

为什么当 Area 对象被简单地命名为 Area 时绑定(bind)会失败?它与MVC区域有关吗?如果是这样,那将如何弄乱绑定(bind)?

最佳答案

我对类名 AREA 做了同样的事情,它工作得很好,这是代码

获取方法

[HttpGet]
    public ActionResult ByReleasedDate()
    {
        return View();
    }

POST方法

[HttpPost]
    public ActionResult ByReleasedDate(CreateModel model)
    {
        return Content($"Area name is {model.Area.Name}");
    }

创建模型

public class CreateModel
{
    public Area Area { get; set; }
}

区域模型

public class Area
{
    public string Name { get; set; }
}

post方法证明 Proof for post method

关于c# - MVC 绑定(bind)到实体调用区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53259179/

相关文章:

node.js - MVC 模式与带有公共(public)布局和部分的 Node.js

c++ - Boost.Python 自定义转换器

wpf - 如何将 MenuItem 的数据绑定(bind)列表合并到 WPF 中的另一个 MenuItem?

WPF将ItemsSource绑定(bind)到静态方法?

C# MVC4 - 将自定义类列表传回 Javascript

c# - 将带有值的变量传递给 postgresql 数据库

c# - 为什么写入 24 位结构不是原子的(当写入 32 位结构时似乎是)?

c# - 使用 WCF 在 app/web/config/settings 上自定义键值对

model-view-controller - 对于 Web 应用程序来说,正确的 MVC 图是什么?

model-view-controller - 您将什么称为通用(非 GUI 相关) "Model-View-Controller"架构?