Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 在ASP.NET MVC中,将属性值保留在HTTP POST上,并且在视图中为只读_Asp.net Mvc_Asp.net Mvc 3_Asp.net Mvc 2 - Fatal编程技术网

Asp.net mvc 在ASP.NET MVC中,将属性值保留在HTTP POST上,并且在视图中为只读

Asp.net mvc 在ASP.NET MVC中,将属性值保留在HTTP POST上,并且在视图中为只读,asp.net-mvc,asp.net-mvc-3,asp.net-mvc-2,Asp.net Mvc,Asp.net Mvc 3,Asp.net Mvc 2,我想在MVC视图中将属性显示为只读,当视图被HTTP发回时,属性值保持不变,而不是null 我尝试了下面的代码,但是model binder返回null @model Car @Html.DisplayFor(x => x.Name); //need to be read only, but returns the value on HTTP POST public class Car { public string Name { get; se

我想在MVC视图中将属性显示为只读,当视图被HTTP发回时,属性值保持不变,而不是null

我尝试了下面的代码,但是model binder返回null

@model Car

    @Html.DisplayFor(x => x.Name); //need to be read only, but returns the value on HTTP POST

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


 public ActionResult Index()
        {


            var car = new Car() {Name = "1"};
            return View(car);
        }

        [HttpPost]
        public ActionResult Index(Car car)  **//Name is NULL**
        {           
            return View(car);
        }
提前谢谢

添加怎么样

@Html.HiddenFor(x => x.Name)

您仍然可以将
@Html.DisplayFor(x=>x.Name)
放在页面上进行显示。

取决于您想要显示的内容-模型属性的值或属性的名称
@Html.LabelFor
默认情况下将显示属性名称(例如,“名称”),除非您使用
[DisplayName(“Car name”)]
或任何您想要显示的内容对viewmodel进行注释。我想你是想表现出它的价值,对吧?谢谢。是否存在使用一个字段而不是两个字段的替代方案。因为有很多属性要显示。嗯。。好的,您可能可以执行类似于
@Html.TextBoxFor(x=>x.Name,new{@readonly=“readonly”})
的操作,并且能够在页面上显示Name属性,并在文章中进行反馈。不过我还没试过。我相信这会奏效。值得一试。