VeeFriends.ShopifySync
5.0.7
dotnet add package VeeFriends.ShopifySync --version 5.0.7
NuGet\Install-Package VeeFriends.ShopifySync -Version 5.0.7
<PackageReference Include="VeeFriends.ShopifySync" Version="5.0.7" />
paket add VeeFriends.ShopifySync --version 5.0.7
#r "nuget: VeeFriends.ShopifySync, 5.0.7"
// Install VeeFriends.ShopifySync as a Cake Addin #addin nuget:?package=VeeFriends.ShopifySync&version=5.0.7 // Install VeeFriends.ShopifySync as a Cake Tool #tool nuget:?package=VeeFriends.ShopifySync&version=5.0.7
VeeFriends.ShopifySync 🛍️🔁
VeeFriends.ShopifySync is a .NET library that provides a flexible and extensible framework for synchronizing data between various e-commerce platforms and Shopify. Currently, it supports integration with the WhatNot platform.
Features
- Abstract base classes for creating platform-specific implementations
- GraphQL request builder for easy query construction
- Error handling and custom exception types
- Dependency Injection support
- Asynchronous operations
Installation
Install the VeeFriends.ShopifySync NuGet package in your project:
dotnet add package VeeFriends.ShopifySync
Usage
1. Configuration
First, configure the services in your Startup.cs
or Program.cs
file:
using VeeFriends.ShopifySync.Services;
using VeeFriends.ShopifySync.WhatNot;
public void ConfigureServices(IServiceCollection services)
{
services.ShopifySync()
.AddWhatNot(options =>
{
options.ApiUrl = "https://whatnot-api-url.com";
// Add other WhatNot-specific configuration
});
}
2. Using the WhatNot Seller Platform
Inject the WhatNotSellerPlatform
into your service or controller:
public class MyService
{
private readonly WhatNotSellerPlatform _whatNotPlatform;
public MyService(WhatNotSellerPlatform whatNotPlatform)
{
_whatNotPlatform = whatNotPlatform;
}
public async Task<WhatNotProduct> GetProductAsync(string productId)
{
var requestOptions = new WhatNotRequestOptions
{
AccessToken = "your-access-token"
};
return await _whatNotPlatform.GetProduct(productId, requestOptions);
}
public async Task<WhatNotOrder> GetOrderAsync(string orderId)
{
var requestOptions = new WhatNotRequestOptions
{
AccessToken = "your-access-token"
};
return await _whatNotPlatform.GetOrder(orderId, requestOptions);
}
}
3. Error Handling
The library includes custom error handling. Errors are wrapped in an ErrorModel
and thrown as an ErrorException
:
try
{
var product = await _whatNotPlatform.GetProduct(productId, requestOptions);
}
catch (ErrorException ex)
{
Console.WriteLine($"An error occurred: {ex.Message}");
// Handle the error appropriately
}
Extending the Library
Creating a New Platform Integration
To add support for a new platform:
- Create a new class that inherits from
SellerHttpClient<TRequestOptions>
. - Implement a new
SellerPlatform<TProduct, TOrder, TRequestOptions>
for your platform. - Create platform-specific
ProductModel
andOrderModel
classes. - Add an extension method to
ShopifySyncCollection
for easy configuration.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. |
-
net9.0
- Microsoft.Extensions.Caching.Abstractions (>= 9.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.0)
- Microsoft.Extensions.Http (>= 9.0.0)
- Microsoft.Extensions.Options (>= 9.0.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on VeeFriends.ShopifySync:
Package | Downloads |
---|---|
VeeFriends.ShopifySync.WhatNot
Data as it pertains to VeeFriends. |
|
VeeFriends.ShopifySync.EBay
Data as it pertains to VeeFriends. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
5.0.7 | 204 | 12/13/2024 |
5.0.6 | 74 | 12/13/2024 |
5.0.5 | 80 | 12/12/2024 |
5.0.4 | 77 | 12/12/2024 |
5.0.3 | 75 | 12/12/2024 |
5.0.2 | 70 | 12/12/2024 |
5.0.1 | 1,317 | 12/11/2024 |
1.0.33 | 79 | 12/11/2024 |
1.0.32 | 75 | 12/11/2024 |
1.0.31 | 77 | 12/11/2024 |
1.0.30 | 4,182 | 11/12/2024 |
1.0.29 | 99 | 11/12/2024 |
1.0.28 | 2,361 | 11/1/2024 |
1.0.27 | 738 | 11/1/2024 |
1.0.26 | 94 | 10/31/2024 |
1.0.25 | 93 | 10/31/2024 |
1.0.24 | 373 | 10/30/2024 |
1.0.23 | 201 | 10/30/2024 |
1.0.22 | 188 | 10/30/2024 |
1.0.20 | 349 | 10/29/2024 |
1.0.19 | 209 | 10/29/2024 |
1.0.18 | 147 | 10/28/2024 |
1.0.17 | 108 | 10/28/2024 |
1.0.16 | 97 | 10/28/2024 |
1.0.15 | 100 | 10/28/2024 |
1.0.14 | 94 | 10/28/2024 |
1.0.13 | 103 | 10/25/2024 |
1.0.12 | 123 | 10/24/2024 |
1.0.11 | 113 | 10/19/2024 |
1.0.10 | 129 | 10/18/2024 |
1.0.9 | 127 | 10/18/2024 |
1.0.8 | 129 | 10/18/2024 |
1.0.7 | 115 | 10/18/2024 |