RSCG_CompositeProvider_Common 2025.218.2100
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package RSCG_CompositeProvider_Common --version 2025.218.2100
NuGet\Install-Package RSCG_CompositeProvider_Common -Version 2025.218.2100
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="RSCG_CompositeProvider_Common" Version="2025.218.2100" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add RSCG_CompositeProvider_Common --version 2025.218.2100
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: RSCG_CompositeProvider_Common, 2025.218.2100"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install RSCG_CompositeProvider_Common as a Cake Addin #addin nuget:?package=RSCG_CompositeProvider_Common&version=2025.218.2100 // Install RSCG_CompositeProvider_Common as a Cake Tool #tool nuget:?package=RSCG_CompositeProvider_Common&version=2025.218.2100
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
RSCG_CompositeProvider
Composite provider from interface . Given multiple implementation of an interface , return data from each / one
Usage
Add the nuget package to your project
dotnet add package RSCG_CompositeProvider
dotnet add package RSCG_CompositeProviderCommon
or put in your csproj file
<ItemGroup>
<PackageReference Include="RSCG_CompositeProvider" Version="2025.218.2100" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
<PackageReference Include="RSCG_CompositeProvider_Common" Version="2025.218.2100" />
</ItemGroup>
Then if you have an interface like this
public interface IDataFrom
{
string Name { get; }
Task<string> KeyFromValue(string value, bool isKey);
}
and multiple implementation of the interface like this
class DataFromHttp : IDataValue
{
public string Name { get { return "DataFromHttp"; } set { } }
public async Task<string> KeyFromValue(string key, bool defaultValue)
{
var http=new HttpClient();
var result = await http.GetStringAsync("https://www."+ Guid.NewGuid().ToString()+".com/" + key);
return result;
}
}
class DataFromMemory : IDataValue
{
public string Name { get { return "DataFromMemory"; } set { } }
public async Task<string> KeyFromValue(string key, bool defaultValue)
{
await Task.Delay(1000);
return $"this is value for {key} from memory";
}
}
then you can call the composite provider to get data from all the implementation of the interface like this
IDataValue provider = new DataValue_CP(new DataFromHttp(), new DataFromMemory());
var result = await provider.KeyFromValue("test", false);
Console.WriteLine(result);
DataValue_CP realClass = (DataValue_CP)provider ;
var lastInterface = realClass.lastUsedInterface ?? -1;
Console.WriteLine("value was obtained from " + realClass.Get(lastInterface).Name);
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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.0
- RSCG_TimeBombComment (>= 2023.12.19.1802)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2025.221.439 | 54 | 2/21/2025 |
2025.218.2100 | 44 | 2/18/2025 |
2025.218.2000 | 44 | 2/18/2025 |