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

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

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


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


Ответы (2)


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

Метод FolderManager.AddFolder (FolderMappingInfo, String)

Параметры

папкаMapping

Тип: DotNetNuke.Services.FileSystem.FolderMappingInfo

Используемое сопоставление папок.

Путь к папке

Тип: System.String

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

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

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

Реализует

IFolderManager.AddFolder(FolderMappingInfo, String)

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

person notandy    schedule 07.10.2011
comment
Решается так: var filterFolderName = Albums/ + txtAlbumName.Text; var folderPath = PathUtils.Instance.FormatFolderPath( PathUtils.Instance.FormatFolderPath( PathUtils.Instance.StripFolderPath().Replace(\\, /)) + filterFolderName); //Добавить папку в базу данных FolderManager.Instance.AddFolder(FolderMappingController.Instance.GetFolderMapping(8), folderPath); FolderManager.Instance.Synchronize(this.PortalId); - person user983825; 20.10.2011

Похоже, вам нужно взглянуть на Directory.CreateDirectory

Это довольно прямолинейно.

person Doozer Blake    schedule 07.10.2011
comment
Хотя это сработает, обычно рекомендуется использовать API-интерфейс диспетчера папок DNN, который позволит коду работать с рядом различных вариантов хранения файлов. - person Ian Robinson; 08.10.2011