Я новичок в этом шаблоне, может ли кто-нибудь помочь мне в этом?Реализация шаблона посетителя в C#
я получил объект, как это:
public class Object
{
public string Name { get; set; }
public object Value { get; set; }
public List<Object> Childs { get; set; }
}
Вот пример JSON:
{
"Name": "Method",
"Value": "And",
"Childs": [{
"Name": "Method",
"Value": "And",
"Childs": [{
"Name": "Operator",
"Value": "IsEqual",
"Childs": [{
"Name": "Name",
"Value": "5",
"Childs": []
}]
},
{
"Name": "Operator",
"Value": "IsEqual",
"Childs": [{
"Name": "Name",
"Value": "6",
"Childs": []
}]
}]
},
{
"Name": "Operator",
"Value": "IsEqual",
"Childs": [{
"Name": "Name",
"Value": "3",
"Childs": []
}]
}]
}
Мой вопрос, как сделать Visitor Pattern для того, чтобы получить эту последнюю строку:
(Name IsEqual 3)And((Name IsEqul 5)And(Name IsEqual 6))
Ваш вопрос непонятен, пожалуйста, над ним работайте. Что вы имеете в виду, что Name и Value могут быть методом или оператором. И что вы подразумеваете под «бывшим»? Как «И» и «IsEqualTo» связаны с вашим вопросом? –
Хорошо, есть схема, но в чем вопрос? – Matyas
* Возможно, вы ищете что-то вроде «Деревья выражений» https://msdn.microsoft.com/en-us/library/bb397951.aspx? Кстати, 'Object' не является хорошим именем класса. –