Telerik RadFileExplorer - ограничение типов файлов с помощью SearchPattern
Я использую Telerik RadFileExplorer. Я использую приведенную ниже строку кода, чтобы разрешить загрузку всех типов файлов, но я хочу ограничить загрузку некоторых типов файлов, таких как (.exe,.dll). Я знаю, что есть способ упоминать типы файлов в шаблонах поиска, например (.pdf,.docx и т. Д.), Но этот список очень большой и неизвестный. Я хочу ограничить типы файлов, которые я не хочу загружать. Это способ изменить строку ниже, чтобы ограничить некоторые типы файлов.
fileExplorer.Configuration.SearchPatterns = new string[] { "*.*" };
Другой подход, который я понял, - это я могу сделать это в FileExplorer_ItemCommand, как показано ниже, но проблема с этим подходом заключается в том, что я загружаю 3 файла, а первый файл имеет ограниченное расширение (.exe), остальные два файла не проходят, даже если они имеют разрешенные расширения (.pdf). Я верю, что это происходит потому, что в файлах с ограниченным доступом мы делаем e.cancel true. Как я могу успешно загрузить оставшиеся 2 файла и проигнорировать первый?
private static HashSet<string> BlackListedFileTypes = new HashSet<string>(StringComparer.OrdinalIgnoreCase) {
".exe",".dll",
};
protected void FileExplorer_ItemCommand(object sender, RadFileExplorerEventArgs e)
{
switch (e.Command)
{
case "UploadFile":
{
const string AlertStringForFileExtensionType = "A file with this extension is not allowed to upload!";
string path = e.Path;
if (BlackListedFileTypes.Contains(Path.GetExtension(path)))
{
e.Cancel = true;
ScriptManager.RegisterStartupScript(this, this.GetType(), "KEY", @"alert(" +
"'" + Path.GetFileName(path) +
" : " + AlertStringForFileExtensionType
+ "');", true);
}
}
break;
}