Программно создать папку в DotNetNuke 6

#c# #asp.net #dotnetnuke

#c# #asp.net #dotnetnuke

Вопрос:

Мне нужно программно создать папку в DotNetNuke 6.0.1 и назначить ей разрешение. В DNN 5 я смог создавать папки, но теперь что-то меняется, и все модули, которые я создал для 5, не работают в 6.

Пожалуйста, помогите мне.

Комментарии:

1. 6.x включает новые и улучшенные API, созданные для работы с новой инфраструктурой FolderProvider. Однако API-интерфейсы 5.x все равно должны работать. Как вы создавали папки в своих модулях?

Ответ №1:

В 6 появился новый API для управления папками.

FolderManager.Метод AddFolder (FolderMappingInfo, строка)

Параметры

Отображение папок

Введите: DotNetNuke.Услуги.Файловая система.FolderMappingInfo

Сопоставление папок для использования.

Путь к папке

Тип: System.Строка

Путь к новой папке.

Возвращаемое значение

Добавленная папка.

Реализует

IFolderManager.AddFolder(FolderMappingInfo, строка)

Файл справки Code API

Комментарии:

1. Решается таким образом: var filterFolderName = «Альбомы /» txtAlbumName . Текст; var folderPath = PathUtils . Экземпляр. FormatFolderPath( PathUtils. Экземпляр. FormatFolderPath( PathUtils. Экземпляр. StripFolderPath(«»).Заменить(«\», «/»)) filterFolderName); //Добавить папку в Database FolderManager. Экземпляр. Добавить папку(FolderMappingController. Экземпляр. GetFolderMapping(8), folderPath); FolderManager. Экземпляр. Синхронизировать (это. PortalId);

Ответ №2:

Похоже, вам нужно посмотреть каталог.CreateDirectory

Это довольно просто.

Комментарии:

1. Хотя это может сработать, обычно рекомендуется использовать API DNN Folder Manager, который позволит коду работать с несколькими различными вариантами хранения файлов.