Class DriverPackage
One NuGet package a backend needs, named as the assembly file that has to end up on disk.
Inherited Members
Namespace: Serenity.StructuredPersistence.Infrastructure.Editor.Drivers
Assembly: Serenity.UnityStructuredPersistence.Infrastructure.Editor.dll
Syntax
public sealed class DriverPackage
Remarks
Both the package id and the assembly file name are carried because they answer different
questions: the file name is what a folder scan can look for, and the package id plus version is
what the reader has to fetch to produce it. They differ often enough that deriving one from the
other would be wrong — ZstdSharp.Port ships ZstdSharp.dll.
TargetFramework is recorded per package rather than per backend because the verified working set is not uniform: the Sqlite chain is netstandard2.0 while the other three drivers are netstandard2.1, and a manifest that stated one value for a whole backend would be describing something nobody installed.
Properties
AssemblyFileName
Declaration
public string AssemblyFileName { get; }
Property Value
| Type | Description |
|---|---|
| string | The assembly file that must be present on disk, e.g. |
IsRequestedDirectly
Declaration
public bool IsRequestedDirectly { get; }
Property Value
| Type | Description |
|---|---|
| bool | Whether the reader asks for this package by name, as opposed to it arriving as a dependency. Only used to phrase findings: a missing top-level package means the driver was never installed, a missing dependency means the install was incomplete. |
PackageId
Declaration
public string PackageId { get; }
Property Value
| Type | Description |
|---|---|
| string | NuGet package id, e.g. |
TargetFramework
Declaration
public string TargetFramework { get; }
Property Value
| Type | Description |
|---|---|
| string | The target framework whose build must be extracted, e.g. |
Version
Declaration
public string Version { get; }
Property Value
| Type | Description |
|---|---|
| string | The exact version verified against this repository. |
Methods
Dependency(string, string, string, string)
Describes a package that arrives as a dependency of a requested one.
Declaration
public static DriverPackage Dependency(string packageId, string version, string targetFramework, string assemblyFileName)
Parameters
| Type | Name | Description |
|---|---|---|
| string | packageId | |
| string | version | |
| string | targetFramework | |
| string | assemblyFileName |
Returns
| Type | Description |
|---|---|
| DriverPackage |
RequestedDirectly(string, string, string, string)
Describes a package the reader asks for by name.
Declaration
public static DriverPackage RequestedDirectly(string packageId, string version, string targetFramework, string assemblyFileName)
Parameters
| Type | Name | Description |
|---|---|---|
| string | packageId | |
| string | version | |
| string | targetFramework | |
| string | assemblyFileName |
Returns
| Type | Description |
|---|---|
| DriverPackage |
ToString()
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| string |