C# stackoverflow上的垫子是空的。或者,如果这是对原始问题的澄清,您应该编辑该问题。在任何情况下,都不太可能有人注意到你的附加问题,并试图回答它。这看起来是第二个问题。如果是这样,您应该问另一个问题,因为stackoverflow的首选格式是。或者

C# stackoverflow上的垫子是空的。或者,如果这是对原始问题的澄清,您应该编辑该问题。在任何情况下,都不太可能有人注意到你的附加问题,并试图回答它。这看起来是第二个问题。如果是这样,您应该问另一个问题,因为stackoverflow的首选格式是。或者,c#,json,C#,Json,stackoverflow上的垫子是空的。或者,如果这是对原始问题的澄清,您应该编辑该问题。在任何情况下,都不太可能有人注意到你的附加问题,并试图回答它。这看起来是第二个问题。如果是这样,您应该问另一个问题,因为stackoverflow的首选格式是。或者,如果这是对原始问题的澄清,您应该编辑该问题。在任何情况下,任何人都不太可能注意到这个答案中包含的其他问题,并尝试回答它。 { "displayFieldName": "REPNAME", "fieldAliases": { "DIST


stackoverflow上的垫子是空的。或者,如果这是对原始问题的澄清,您应该编辑该问题。在任何情况下,都不太可能有人注意到你的附加问题,并试图回答它。这看起来是第二个问题。如果是这样,您应该问另一个问题,因为stackoverflow的首选格式是。或者,如果这是对原始问题的澄清,您应该编辑该问题。在任何情况下,任何人都不太可能注意到这个答案中包含的其他问题,并尝试回答它。
{
 "displayFieldName": "REPNAME",
 "fieldAliases": {
  "DISTRICT": "DISTRICT",
  "REPNAME": "REPNAME"
 },
 "fields": [
  {
   "name": "DISTRICT",
   "type": "esriFieldTypeDouble",
   "alias": "DISTRICT"
  },
  {
   "name": "REPNAME",
   "type": "esriFieldTypeString",
   "alias": "REPNAME",
   "length": 150
  }
 ],
 "features": [
  {
   "attributes": {
    "DISTRICT": 21,
    "REPNAME": "Ira Anders"
   }
  }
 ]
}
public class FieldAliases
{
    public string DISTRICT { get; set; }
    public string REPNAME { get; set; }
}

public class Field
{
    public string name { get; set; }
    public string type { get; set; }
    public string alias { get; set; }
    public int? length { get; set; }
}

public class Attributes
{
    public int DISTRICT { get; set; }
    public string REPNAME { get; set; }
}

public class Feature
{
    public Attributes attributes { get; set; }
}

public class RootObject
{
    public string displayFieldName { get; set; }
    public FieldAliases fieldAliases { get; set; }
    public List<Field> fields { get; set; }
    public List<Feature> features { get; set; }
}
Attributes attr = new Attributes();
MemoryStream stream1 = new MemoryStream(Encoding.UTF8.GetBytes(MoRepjson));
stream1.Position = 0;
DataContractJsonSerializer deserializer = new DataContractJsonSerializer(typeof(Attributes));
attr = deserializer.ReadObject(stream1) as Attributes;
string dist = attr.DISTRICT.ToString();
string repname = attr.REPNAME;
stream1.Close();
JavaScriptSerializer ser = new JavaScriptSerializer();
Attributes attr = ser.Deserialize<Attributes>(MoRepjson);
string dist = attr.DISTRICT.ToString();
string repname = attr.REPNAME;
Attributes attr = JsonConvert.DeserializeObject<Attributes>(MoRepjson);
string dist = attr.DISTRICT.ToString();
string repname = attr.REPNAME;
Attributes attr = new Attributes { DISTRICT = 9999, REPNAME = "Some Representative" };
RootObject ro = JsonConvert.DeserializeObject<RootObject>(MoRepjson);
string test = ro.displayFieldName;
RootObject ro = JsonConvert.DeserializeObject<RootObject>(MoRepjson);
string test = ro.features.???
public List<Feature> features { get; set; }
public Feature features { get; set; }
RootObject ro = JsonConvert.DeserializeObject<RootObject>(MoRepjson);
List<Feature> features = ro.features;
Feature firstFeature = features[0];
Attributes attributes = firstFeature.attributes;
string repname = attributes.REPNAME;
var rootObject = JsonConvert.DeserializeObject<RootObject>(MoRepjson);

var firstAttributes rootObject.features
    .Select(x => x.attributes)
    .FirstOrDefault();

if(firstAttributes != null)
{
    string repName = firstAttributes.REPNAME;
    int district = firstAttributes.DISTRICT;
}
RootObject rootObject = JsonConvert.DeserializeObject<RootObject>(MoRepjson);
var attributes = rootObject.features.Select(f => f.attributes);

foreach (var a in attributes)
{
    Console.WriteLine("DISTRICT: " + a.DISTRICT);
    Console.WriteLine("REPNAME: " + a.REPNAME);
}
string json = ...
var root = JObject.Parse(json);
var fieldAliases = root["fieldAliases"];
string district = fieldAliases["DISTRICT"].Value<string>();
string repName  = fieldAliases["REPNAME"].Value<string>();
public class Attributes
public int DISTRICT { get; set; }