Как заполнить TreeView, используя EntityDataSource - PullRequest
0 голосов
/ 05 января 2011

Я использую MS SQL, EF 4 и C #.

У меня есть таблица в SQL для "Категории", и мне нужно заполнить TreeView на моей странице Asp.net.

Мой вопросявляются:

  • 1 - Как я могу заполнить TreeView?
  • 2 - Как я могу использовать TreeView для изменения иерархии моих категорий?

ПРИМЕЧАНИЕ: я использую SQL-столбцы "ierarchyid "!

Спасибо, ребята, за вашу помощь!

    CREATE TABLE dbo.CmsCategories
(
    CategoryId          int             NOT NULL    IDENTITY (0,1)  -- Seed = 0 and Increment= 1
        CONSTRAINT PK_CmsCategories_CategoryId PRIMARY KEY,
    Title               nvarchar(40)    NOT NULL,
    MetaDescription     nvarchar(160)   NOT NULL,
    MetaKeyword         nvarchar(128)   NOT NULL,
    Summary             nvarchar(256)   NOT NULL,
    IsPublished         bit             NOT NULL
        CONSTRAINT DF_CmsCategories_IsPublished DEFAULT 1,  
    CategoryNode        hierarchyid     NOT NULL,
    CategoryNodeLevel AS CategoryNode.GetLevel()        
);

1 Ответ

1 голос
/ 05 января 2011

К сожалению, EF4 не поддерживает HierarchyId (пока). Таким образом, в этом случае вам лучше всего иметь хранимую процедуру, которая работает с вашей иерархией и возвращать результирующий набор обратно в EF, чтобы EF4 мог превратиться в набор определенного пользователем сложного типа, который затем мог бы быть напрямую связан с древовидное управление.

Если вы планируете обновить вашу иерархию в базе данных, я бы использовал тот же подход: вызвать хранимую процедуру из EF для обновления вашей иерархии в базе данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...