在我的操作方法中,我尝试返回匿名类型:
public JsonResult GetAssociatedProperty(int id)
{
try
{
var property = _repository.GetLayerProperty(id);
return Json(new { Result = "OK", new { property.Id, property.VectorLayerId, property.FieldName, property.FieldType, property.FieldValue, property.Required} }, JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
throw;
}
}
但是我收到了这个错误:
无效的匿名类型成员声明符。必须使用成员分配,简单名称或成员访问声明匿名类型成员。
在这一行:
return Json(new { Result = "OK", new { property.Id, property.VectorLayerId, property.FieldName, property.FieldType, property.FieldValue, property.Required} }, JsonRequestBehavior.AllowGet);
知道如何修复错误并将匿名类型发送给客户端?
答案 0 :(得分:3)
正如错误消息所示,您需要匿名类型的第二个成员名称:
return Json(new {
Result = "OK",
Prop = new { property.Id, property.VectorLayerId, property.FieldName, property.FieldType, property.FieldValue, property.Required} },
JsonRequestBehavior.AllowGet);
答案 1 :(得分:-2)
public JsonResult GetAssociatedProperty(int id)
{
try
{
var property = _repository.GetLayerProperty(id);
return Json(new {
Result = "OK",
Id = property.Id,
VectorLayerId = property.VectorLayerId,
FieldName = property.FieldName,
FieldType = property.FieldType,
FieldValue = property.FieldValue,
Required = property.Required
}, JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
throw;
}
}
以上代码可能会对您有所帮助。