Exemple #1
0
        public override WpfObservableCollection <IParameter> ReadJson(JsonReader reader, Type objectType, WpfObservableCollection <IParameter> existingValue, bool hasExistingValue, JsonSerializer serializer)
        {
            //檢查是否已有 WpfObservableCollection<IParameter>,沒有則 new 一個。  理論上都會有才對...
            var result = hasExistingValue ? existingValue : new WpfObservableCollection <IParameter>();
            //因不能反序列化成 IParameter,故直接反成 UrParameter
            var obj = serializer.Deserialize <IList <UrParameter> >(reader);

            //如果反成功,加入集合。 因若直接 WpfObservableCollection<UrParameter> 塞入 WpfObservableCollection<IParameter> 會跳 IParameter 無法等同 UrParameter 的型別錯誤!!
            if (obj != null)
            {
                foreach (var item in obj)
                {
                    result.Add(item);
                }
            }
            return(result);
        }
Exemple #2
0
 public override void WriteJson(JsonWriter writer, WpfObservableCollection <IParameter> value, JsonSerializer serializer)
 {
     serializer.Serialize(writer, value);
 }
Exemple #3
0
 public UrMethod()
 {
     Parameters = new WpfObservableCollection <IParameter>();
 }