MVC5中的一个对象是什么?

时间:2016-07-05 18:47:41

标签: c# asp.net-mvc

通常会看到额外的值或属性传递到

之类的内容中

new {...}

new {...}部分叫什么?它是一个对象吗?它看起来不像是一个对象,因为新对象{...}会导致错误。

我经常使用它,但实际上我并没有深入了解#include <stdio.h> #include <malloc.h> double ****PsiDDiffj, ****PsiDDiffi, ****sDDiff, r_h = 10; int ****NorDiff, numv = 100; Generate_PsiDuopolyDiff() { int aa, bb, cc, dd; double vv_ja, vv_jb, vv_ia, vv_ib, deltav = r_h / numv, ll; PsiDDiffj = (double ****)malloc((numv + 2) * sizeof(double***)); PsiDDiffi = (double ****)malloc((numv + 2) * sizeof(double***)); sDDiff = (double ****)malloc((numv + 2) * sizeof(double***)); NorDiff = (int ****)malloc((numv + 2) * sizeof(int***)); for (aa = 0; aa <= numv; aa++) { PsiDDiffj[aa] = (double ***)malloc((numv + 2) * sizeof(double**)); PsiDDiffi[aa] = (double ***)malloc((numv + 2) * sizeof(double**)); sDDiff[aa] = (double ***)malloc((numv + 2) * sizeof(double**)); NorDiff[aa] = (int ***)malloc((numv + 2) * sizeof(int**)); for (bb = 0; bb <= numv; bb++) { PsiDDiffj[aa][bb] = (double **)malloc((numv + 2) * sizeof(double*)); PsiDDiffi[aa][bb] = (double **)malloc((numv + 2) * sizeof(double*)); sDDiff[aa][bb] = (double **)malloc((numv + 2) * sizeof(double*)); NorDiff[aa][bb] = (int **)malloc((numv + 2) * sizeof(int*)); for (cc = 0; cc <= numv; cc++) { PsiDDiffj[aa][bb][cc] = (double *)malloc((numv + 2) * sizeof(double )); //where the error happened PsiDDiffi[aa][bb][cc] = (double *)malloc((numv + 2) * sizeof(double )); sDDiff[aa][bb][cc] = (double *)malloc((numv + 2) * sizeof(double )); NorDiff[aa][bb][cc] = (int *)malloc((numv + 2) * sizeof(int )); } } } } void main() { Generate_PsiDuopolyDiff(); } 语法是什么。

3 个答案:

答案 0 :(得分:3)

这是一个anonymous type对象 - C#的一个功能,而不是MVC5。编译器创建一个具有只读属性的匿名类型,匹配initalizer中使用的名称和类型。在运行时,会创建此类型的实例,MVC使用反射对其属性进行迭代。

答案 1 :(得分:1)

在此处添加更多信息,匿名类型是使用new关键字和一些只读属性创建的类型。

var AnonType =  new {propertyName1  = "property", propertyName2 = "Prop"};

属性的数据类型是根据您插入的数据决定的,例如,如果将int分配给属性,它将变为整数,依此类推。这些是只读属性,因此您不能更改它们的值。

enter image description here

在您的情况下,ValidationSummary是HtmlHelper类的扩展方法,并采用各种重载。这里htmlAttribute是object(匿名)类型的参数之一。希望它有所帮助。

答案 2 :(得分:0)

这是一个匿名对象。

见这里:

https://msdn.microsoft.com/en-us/library/bb397696.aspx