Struct JsonVar
Namespace: Tool.Utils
Assembly: Tool.Net.dll
一种获取 Json 格式数据的实现
public readonly struct JsonVar : IEnumerable<JsonEnumerator>, IEnumerableImplements
IEnumerable<JsonEnumerator>, IEnumerable
Inherited Members
object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.ReferenceEquals(object?, object?), object.ToString()
Extension Methods
ObjectExtension.Add<T>(object, object, object), ObjectExtension.CopyEntity(object, object, params string[]), ObjectExtension.EntityToJson(object), ObjectExtension.EntityToJson(object, bool), ObjectExtension.EntityToJson(object, bool, string), DictionaryExtension.GetDictionary(object), TypeExtension.GetFieldKey(object, string, out bool), TypeExtension.GetFieldKey<T>(object, string, out bool), TypeExtension.GetFieldKey(object, Type, string, out bool), ObjectExtension.GetIntPtr(object), ObjectExtension.GetIntPtrInt(object), TypeExtension.GetPropertieFind(object, string, bool), TypeExtension.GetProperties(object), TypeExtension.GetPropertyKey(object, string, out bool), TypeExtension.GetPropertyKey<T>(object, string, out bool), TypeExtension.GetPropertyKey(object, Type, string, out bool), TypeExtension.GetValue(object, PropertyDescriptor), TypeExtension.GetValue(object, string, bool), TypeExtension.GetValue(object, string), ObjectExtension.Read<T>(object, object, int, int), ObjectExtension.Read<T>(object, int, object, int, int), DictionaryExtension.SetDictionary(object, IDictionary<string, object>), TypeExtension.SetFieldKey(object, string, object), TypeExtension.SetFieldKey<T>(object, string, object), TypeExtension.SetFieldKey(object, Type, string, object), TypeExtension.SetPropertyKey(object, string, object), TypeExtension.SetPropertyKey<T>(object, string, object), TypeExtension.SetPropertyKey(object, Type, string, object), TypeExtension.SetValue(object, PropertyDescriptor, object), TypeExtension.SetValue(object, string, object, bool), TypeExtension.SetValue(object, string, object), ObjectExtension.ToBase64String(object), ObjectExtension.ToBytes(object), ObjectExtension.ToBytes(object, out Type), DictionaryExtension.ToDictionary(object), DictionaryExtension.ToDictionary<T>(object), DictionaryExtension.ToIDictionary(object), DictionaryExtension.ToIDictionary<T>(object), ObjectExtension.ToJson(object), ObjectExtension.ToJson(object, JsonSerializerOptions), ObjectExtension.ToJsonWeb(object), ObjectExtension.ToJsonWeb(object, Action<JsonSerializerOptions>), ObjectExtension.ToTryVar<T>(object, T), ObjectExtension.ToVar<T>(object), ObjectExtension.ToVar(object, Type, bool), ObjectExtension.ToVar(object, string), ObjectExtension.ToXml(object)
Constructors
JsonVar(object)
添加任意的数据,无规则。
public JsonVar(object data)Parameters
data object
一类数据结构
Properties
Count
当前 层 可能存在的 集合 长度 (string 会显示 字符长度)
public int Count { get; }Property Value
Data
当前 Json 的数据结构
public object Data { get; }Property Value
IsEnumerator
判断是否支持枚举器
public bool IsEnumerator { get; }Property Value
ValueKind
大概确定 Json 数据的类型
public JsonValueKind ValueKind { get; }Property Value
this[string]
通过键名获取值
public JsonVar this[string name] { get; }Property Value
this[int]
通过下标获取值
public JsonVar this[int i] { get; }Property Value
Methods
GetEnumerator()
获取可以用于遍历Json的集合
public IEnumerator<JsonEnumerator> GetEnumerator()Returns
Exceptions
不存在可以使用的集合
GetJson()
获取当前对象的Json字符串
public string GetJson()Returns
GetVar<T>()
将对象还原成 特定值
public T GetVar<T>()Returns
T
得到的值
Type Parameters
T
转换的值
ToString()
根据实际类型返回特定内容
public override string ToString()Returns
结果
TryGet(out JsonVar, params object[])
获取当前Json集合下可能存在的数据信息
public bool TryGet(out JsonVar jsonVar, params object[] keys)Parameters
jsonVar JsonVar
返回存在的结果
keys object[]
查找的Key和下标
Returns
Operators
implicit operator JsonVar(JsonEnumerator)
JsonEnumerator
public static implicit operator JsonVar(JsonEnumerator value)Parameters
value JsonEnumerator
Returns
implicit operator JsonVar(Dictionary<string, object>)
public static implicit operator JsonVar(Dictionary<string, object> value)Parameters
value Dictionary<string, object>
Returns
implicit operator Dictionary<string, object>(JsonVar)
public static implicit operator Dictionary<string, object>(JsonVar value)Parameters
value JsonVar
Returns
implicit operator JsonVar(ArrayList)
ArrayList
public static implicit operator JsonVar(ArrayList value)Parameters
value ArrayList
Returns
implicit operator ArrayList(JsonVar)
ArrayList
public static implicit operator ArrayList(JsonVar value)Parameters
value JsonVar
Returns
implicit operator JsonVar(string)
string
public static implicit operator JsonVar(string value)Parameters
value string
Returns
implicit operator string(JsonVar)
string
public static implicit operator string(JsonVar value)Parameters
value JsonVar
Returns
implicit operator bool(JsonVar)
bool
public static implicit operator bool(JsonVar value)Parameters
value JsonVar
Returns
implicit operator int(JsonVar)
int
public static implicit operator int(JsonVar value)Parameters
value JsonVar
Returns
implicit operator long(JsonVar)
long
public static implicit operator long(JsonVar value)Parameters
value JsonVar
Returns
implicit operator double(JsonVar)
double
public static implicit operator double(JsonVar value)Parameters
value JsonVar
Returns
implicit operator decimal(JsonVar)
decimal
public static implicit operator decimal(JsonVar value)Parameters
value JsonVar