I faced a problem that I could not find any solution to by google...
JavaScriptSerializer js = new JavaScriptSerializer();
MyClass myObject = js.Deserialize<MyClass>(jsonstring);
What about if an attribute in the json data is called "short"? I cannot make a class like this:
public class MyClass
{
public int A;
public int B;
public int short;
}
So how can I get the jsonstring into an object in an easy way? Very thankful for all help I can get.
CodePudding user response:
You can use @ in
public class MyClass
{
public int A;
public int B;
public int @short;
}
CodePudding user response:
short is a keyword (documentation; you will need to call the variable something else. Short would work just fine since keywords are case sensitive, and all keywords are lowercase.
public class MyClass
{
public int A;
public int B;
public int @short;
}
The @ symbol is being used as a "verbatim identifier" (documentation;
see number 1). This allows the interpreter to understand @short as the identifier short instead of the keyword short.
Hope this cleared some things up.
