elFinder.Net.Core
1.2.0
Advisory: https://github.com/advisories/GHSA-mvvp-gwgc-5hrp | Severity: high |
See the version list below for details.
dotnet add package elFinder.Net.Core --version 1.2.0
NuGet\Install-Package elFinder.Net.Core -Version 1.2.0
<PackageReference Include="elFinder.Net.Core" Version="1.2.0" />
paket add elFinder.Net.Core --version 1.2.0
#r "nuget: elFinder.Net.Core, 1.2.0"
// Install elFinder.Net.Core as a Cake Addin #addin nuget:?package=elFinder.Net.Core&version=1.2.0 // Install elFinder.Net.Core as a Cake Tool #tool nuget:?package=elFinder.Net.Core&version=1.2.0
elFinder.Net.Core
Getting Started
- Install the NuGet package: https://www.nuget.org/packages/elFinder.Net.Core/
- Look at the basic demo project for an example of how to integrate it into your web project. (the example uses ASP.NET Core 3.1 and some additional packages listed below).
Advanced
The advanced demo project has some additional use cases enabled, including:
- Integrate Authentication/Authorization (Cookies, OAuth2 JWT).
- Multi-tenant support.
- Integrate Quota management plugin.
- For an example of how to write a plugin, see Logging plugin example.
This plugin intercepts all method calls of
IConnector
andIDriver
instances then logs the method's information (arguments, method name, return value, .etc) to the console output.
Customization
Since file management is a complex topic and the requirements are diverse, here are some ways to customize the library:
- Override the default implementation
- Use interceptors (as those plugins here which use Castle DynamicProxy) and built-in .NET Core DI container
Some important classes and their descriptions:
IConnector/Connector
: the backend connector which handles elFinder commands sent from clients.IDriver/FileSystemDriver
: the driver which provides a storage mechanism (in this case, the OS file system). There are other drivers for different storage, e.g, elFinder AzureStorage.IFile/FileSystemFile; IDirectory/FileSystemDirectory
: the file system's abstractions/implementations.- Others: please download the repository, then run the demo projects. They should walk through all of the important classes.
About this repository
There are 3 main projects:
- elFinder.Net.Core: the core backend connector for elFinder.
- elFinder.Net.AspNetCore: enable ASP.NET Core 2.2 projects to easily integrate the connector package.
- elFinder.Net.Drivers.FileSystem: the default Local File System driver.
Plugins:
- Plugins/elFinder.Net.Plugins.FileSystemQuotaManagement: enable quota management and restriction features.
Credits
elFinder.Net.Core is based on the project elFinder.NetCore of Matt Gordon. Many thanks for the excellent works. For those who may get confused about which package to use, try and find the one that best suits your project. I create this with some modification that suits my use cases and the repository is currently active. Some of the main differences are:
- Enable better security, ACL (for both Frontend and Backend)
- Support .NET Standard 2.0 (remove ASP.NET Core dependency).
- Customizable through models and interfaces
- More features and extensibility: plugins, interceptors, etc.
- Support more commands.
- Follow the specification from https://github.com/Studio-42/elFinder/wiki more strictly.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 2.1.1)
- Microsoft.Extensions.Options (>= 2.1.1)
- Microsoft.Extensions.Primitives (>= 2.1.6)
- Microsoft.Net.Http.Headers (>= 2.1.14)
- MimeTypeMapOfficial (>= 1.0.15)
- System.Drawing.Common (>= 5.0.2)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on elFinder.Net.Core:
Package | Downloads |
---|---|
elFinder.Net.Drivers.FileSystem
elFinder.Net.Core Local File System driver. |
|
elFinder.Net.AspNetCore
This package enables ASP.NET Core 2.2 projects to easily integrate the elFinder.Net.Core connector. See the example project on Github for usage detail. |
|
SnextgenCore
Core featues of nextgen team |
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on elFinder.Net.Core:
Repository | Stars |
---|---|
grandnode/grandnode2
Open-Source eCommerce Platform on .NET Core, MongoDB, AWS DocumentDB, Azure CosmosDB, LiteDB & Vue.js
|
Version | Downloads | Last updated | |
---|---|---|---|
1.5.0 | 29,356 | 4/30/2022 | |
1.4.4 | 3,180 | 3/21/2022 | |
1.4.3 | 2,210 | 3/19/2022 | |
1.4.2 | 2,512 | 3/7/2022 | |
1.4.1 | 2,308 | 2/20/2022 | |
1.4.0 | 2,167 | 2/19/2022 | |
1.3.5 | 2,250 | 2/19/2022 | |
1.3.4 | 6,416 | 10/31/2021 | |
1.3.3.1 | 2,801 | 7/26/2021 | |
1.2.6 | 1,762 | 7/16/2021 | |
1.2.4 | 2,134 | 7/1/2021 | |
1.2.3 | 7,131 | 7/1/2021 | |
1.2.2 | 1,887 | 6/28/2021 | |
1.2.1 | 1,968 | 6/26/2021 | |
1.2.0 | 1,839 | 6/23/2021 | |
1.1.2 | 1,958 | 6/20/2021 |