FastDFSCore (c# client of FastDFS)
![GitHub code size in bytes](https://camo.githubusercontent.com/159c924a65aa03fd817c47e37bf36c313ceea027bada94f67c6ccd99fa1aa31b/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c616e6775616765732f636f64652d73697a652f636f636f7369702f46617374444653436f72652e737667)
Build Server |
Platform |
Build Status |
Azure Pipelines |
Windows |
![Build Status](https://camo.githubusercontent.com/a20d0da07a8f0abe7e7f8d7207c29df2aca3dece8ff35104d388a9b3f5016568/68747470733a2f2f6465762e617a7572652e636f6d2f636f636f7369702f46617374444653436f72652f5f617069732f6275696c642f7374617475732f636f636f7369702e46617374444653436f72653f6272616e63684e616d653d6d6173746572266a6f624e616d653d57696e646f7773) |
Azure Pipelines |
Linux |
![Build Status](https://camo.githubusercontent.com/4cf130b235cacfdbff995ba3796dcf23f4700fddce0a5270616322fc230f0f47/68747470733a2f2f6465762e617a7572652e636f6d2f636f636f7369702f46617374444653436f72652f5f617069732f6275696c642f7374617475732f636f636f7369702e46617374444653436f72653f6272616e63684e616d653d6d6173746572266a6f624e616d653d4c696e7578) |
Package |
Version |
Preview |
Downloads |
FastDFSCore |
![NuGet](https://camo.githubusercontent.com/4cc49accb09691423c5cd8dd6b4f2a790ae1e5b56f13b2f9de60efb9b36b4cbc/68747470733a2f2f696d672e736869656c64732e696f2f6e756765742f762f46617374444653436f72652e737667) |
![NuGet](https://camo.githubusercontent.com/4974818a7f32273a0e6b516d51e13ff63ff8f4426153ae27432df830401c8855/68747470733a2f2f696d672e736869656c64732e696f2f6e756765742f767072652f46617374444653436f72652e737667) |
![NuGet](https://camo.githubusercontent.com/0964f3268c17cbb8848eb62d28bfc22d98dc93d8dc27d2aeba5d53121abe05d7/68747470733a2f2f696d672e736869656c64732e696f2f6e756765742f64742f46617374444653436f72652e737667) |
FastDFSCore.Transport.DotNetty |
![NuGet](https://camo.githubusercontent.com/99c87838d42b8d9bc8164a102afc59624aef5de7cde48a3484727593b42ab4f8/68747470733a2f2f696d672e736869656c64732e696f2f6e756765742f762f46617374444653436f72652e5472616e73706f72742e446f744e657474792e737667) |
![NuGet](https://camo.githubusercontent.com/0cc8e4af06d5241bd86a2edc6c867415a3a252f7bcc5fd0822f2e89648d4445c/68747470733a2f2f696d672e736869656c64732e696f2f6e756765742f767072652f46617374444653436f72652e5472616e73706f72742e446f744e657474792e737667) |
![NuGet](https://camo.githubusercontent.com/22841d4c573e4aef6bf9691082ac8953bb3eb3f47dc2faad659c2ddecc0dc77f/68747470733a2f2f696d672e736869656c64732e696f2f6e756765742f64742f46617374444653436f72652e5472616e73706f72742e446f744e657474792e737667) |
FastDFSCore.Transport.SuperSocket |
![NuGet](https://camo.githubusercontent.com/b04f3c05590770ae312951bd7aee8b8fbb42ffcafb9092fde0138c2e512fb04a/68747470733a2f2f696d672e736869656c64732e696f2f6e756765742f762f46617374444653436f72652e5472616e73706f72742e5375706572536f636b65742e737667) |
![NuGet](https://camo.githubusercontent.com/922285ee006f0de2b5b412f0e1111f64e796ac13e1ad3b79c1ea1032ec90ccb3/68747470733a2f2f696d672e736869656c64732e696f2f6e756765742f767072652f46617374444653436f72652e5472616e73706f72742e5375706572536f636b65742e737667) |
![NuGet](https://camo.githubusercontent.com/e426ed7a899427ff82f8647a68fe8d48597387084fba4159cc1cac61897b2990/68747470733a2f2f696d672e736869656c64732e696f2f6e756765742f64742f46617374444653436f72652e5472616e73706f72742e5375706572536f636b65742e737667) |
- Base on
netstandard2.0
- Base on
DotNetty
or SuperSocket
Communication
- Support connection pool
- Support for file streams to upload, network streams download to the local
var services = new ServiceCollection();
services
.AddLogging(l =>
{
l.AddConsole(c =>
{
c.LogToStandardErrorThreshold = LogLevel.Trace;
});
})
.AddFastDFSCore(c=>{
c.ClusterConfigurations.Add(new ClusterConfiguration()
{
Name = "Cluster1",
Trackers = new List<Tracker>()
{
new Tracker("192.168.0.98", 22122)
}
})
})
.AddFastDFSDotNetty();
var provider = services.BuildServiceProvider();
var client = _provider.GetService<IFastDFSClient>();
var storageNode = await fdfsClient.GetStorageNodeAsync("group1");
var fileId= await fdfsClient.UploadFileAsync(storageNode, @"D:\sample1.txt");
var savePath=Path.Combine(@"D:\sample2.txt");
await client.DownloadFileEx(storageNode, fileId, savePath);
more sample code