asp.net-mvc – {get;组; }在ViewModel中使用

我正在使用c#以及将视图模型从控制器传递给视图的viewmodel.

在我的视图模型中,以下内容似乎按照预期的方式工作,因为它将描述信息从视图传递回控制器:

public string Description { get; set; }

但是如果我有以下的内容,它不会传回描述.说明显示为空

public string Description

为什么
{get;组; }

很重要?

解决方法

我不太了解asp.net MVC / Razor,但您的2个代码示例之间有重要的区别.
public string Description { get; set; }

创建一个属性,一旦编译,在类中有一个生成的私有字段,get / set方法访问该字段.使用{get; set;}声明的属性相当于:

private string _description;
    public string Description
    {
        get
        {
            return _description;
        }
        set
        {
            this._description = value;
        }
    }

但是以下内容

public string Description;

创建一个简单的公共字段.

我的猜测是,剃刀使用反射来从viewmodel获取值,它可能会查找一个属性,而不是一个字段.所以它确定属性不存在,因此返回null

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....