https://github.com/aetopia/storeedge
A lightweight .NET Framework library for interacting with the Microsoft Store.
https://github.com/aetopia/storeedge
Last synced: 12 months ago
JSON representation
A lightweight .NET Framework library for interacting with the Microsoft Store.
- Host: GitHub
- URL: https://github.com/aetopia/storeedge
- Owner: Aetopia
- License: mit
- Archived: true
- Created: 2024-05-24T16:57:26.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-08-21T02:09:03.000Z (almost 2 years ago)
- Last Synced: 2025-05-17T10:08:28.723Z (about 1 year ago)
- Language: C#
- Homepage:
- Size: 35.2 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# StoreEdge
A lightweight .NET Framework library for interacting with the Microsoft Store.
## Usage
```csharp
Task> GetProductsAsync(params string[] productIds)
```
- Obtains products for the specified product IDs.
```csharp
Task> GetPackageFamilyNamesAsync(params string[] packageFamilyNames)
```
- Obtains product IDs for the specified package family names.
```csharp
Task GetUrlAsync(UpdateIdentity update)
```
- Obtains the download URL for the specified update identity.
```csharp
Task> GetUpdatesAsync(Product product)
```
- Gets updates for the specified product.
## Example
```csharp
using System;
using System.Threading.Tasks;
using StoreEdge;
static class Program
{
static async Task Main()
{
// Get product IDs from package family names.
var productIds = await Store.GetPackageFamilyNamesAsync(
"Microsoft.MinecraftUWP_8wekyb3d8bbwe",
"Microsoft.MinecraftWindowsBeta_8wekyb3d8bbwe");
// Get product information from product IDs.
var products = await Store.GetProductsAsync([.. productIds]);
foreach (var product in products)
{
// Verify if a product supports an installed operating system's architecture.
var supported = product.Architecture is not null;
Console.WriteLine($"Title: {product.Title}");
Console.WriteLine($"Supported: {supported}\n");
// Get packages/updates for a product.
foreach (var update in await Store.GetUpdatesAsync(product))
{
// Get a url for a package/update.
var url = await Store.GetUrlAsync(update);
Console.WriteLine($"\tUpdate Hash Code: {update.GetHashCode()}");
Console.WriteLine($"\tUrl: {url}\n");
}
}
}
}
```
## Building
1. Download the following:
- [.NET SDK](https://dotnet.microsoft.com/en-us/download)
- [.NET Framework 4.8.1 Developer Pack](https://dotnet.microsoft.com/en-us/download/dotnet-framework/thank-you/net481-developer-pack-offline-installer)
2. Run `dotnet publish` to compile & make a [NuGet](https://www.nuget.org/) package.