Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/68.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
C# 我只能返回一个带有Json的任意类吗?_C#_Json - Fatal编程技术网

C# 我只能返回一个带有Json的任意类吗?

C# 我只能返回一个带有Json的任意类吗?,c#,json,C#,Json,我有以下代码: return Json(new { ent = vm.ent, errors = e.Message, fld = vm.fld, pk = vm.pk, success = false, rk = vm.rk, _rk = _rk,

我有以下代码:

            return Json(new {
                ent = vm.ent,
                errors = e.Message,
                fld = vm.fld,
                pk = vm.pk,
                success = false,
                rk = vm.rk,
                _rk = _rk,
                val = vm.val
            });

代码是可以工作的,但是我想知道我是否可以用一个类而不是一个匿名数组来完成这项工作。使用匿名方式似乎不需要检查字段名。

您可以返回任何您想要的类。我还没有测试过它,但是只使用匿名类是没有意义的。更重要的是,如果您有一个正在运行的项目,那么尝试它似乎很容易

我不知道“检查字段名”的确切含义,但可以使用以下匿名类:

new { vm.val, vm.pk } 
在本例中,匿名类的属性采用已分配属性的名称


另外,您正在打破所有.NET惯例,为公共成员使用小写名称。

匿名对象数组应具有相同属性的“不检查字段名”是什么意思?你想得到什么Json?谢谢你提醒我关于约定的事情。我通常不使用小写,我会马上解决这个问题。我的意思是,接收json的javascript需要pk、rk等名称。在C#端使用匿名类时,不会进行错误检查。我可以很容易地用pkx和rkx编码。我可以创建匿名类,直到运行时它才会被检查。无论如何,你不能对发送到JS的C代码进行编译时检查。毕竟,代码是用不同的语言编写的,并在不同的计算机上执行。