Я использую JsTree на веб-сайте MVC. Я использую плагин json_data для заполнения дерева. Действие My Controller возвращает JsonResult, используя класс, который я создал для представления узлов. Я читал документацию о том, как указать собственный значок для определенного узла, но я могу кажется, я не понимаю. Кажется, предполагается, что данные должны быть объектом, содержащим строки заголовка и значка, но это остановило загрузку дерева, когда я попробовал. Структура класса, которую я использую на данный момент, выглядит следующим образом.
public class NodeModel
{
public string data;
public NodeAttribute attr;
public string state = "closed";
public string icon = "default/file.png";
}
public class ParentNodeModel : NodeModel
{
public List<NodeModel> children;
}
public class NodeAttribute
{
public string id;
public string type;
}
Кто-нибудь знает, в каком формате должны выглядеть данные json, чтобы дать каждому узлу отдельный значок? Я хотел бы избежать использования плагина типов, если это возможно.
Решено
Изменение структуры моего класса, чтобы превратить строку данных в новый объект, было на самом деле правильным форматом. Но с новой структурой другая часть моего кода давала сбой (сейчас исправлено). Таким образом, классы теперь будут выглядеть так
public class NodeModel
{
public NodeData data;
public NodeAttribute attr;
public string state = "closed";
}
public class NodeData
{
public string title;
public string icon = "path/file.png";
}