![]() |
VOOZH | about |
dotnet add package NuScien --version 7.0.0
NuGet\Install-Package NuScien -Version 7.0.0
<PackageReference Include="NuScien" Version="7.0.0" />
<PackageVersion Include="NuScien" Version="7.0.0" />Directory.Packages.props
<PackageReference Include="NuScien" />Project file
paket add NuScien --version 7.0.0
#r "nuget: NuScien, 7.0.0"
#:package NuScien@7.0.0
#addin nuget:?package=NuScien&version=7.0.0Install as a Cake Addin
#tool nuget:?package=NuScien&version=7.0.0Install as a Cake Tool
This provides a solution to build community and enterprise projects based on resource entity and accessories with ACL and CMS built-in.
The resource entity is the model for DAL (data access layer), BLL (business logic layer) and UX layer (including GUI view model and web API model).
The abstract class BaseResourceEntity is the base class for inheriting.
It supports property changing notifier so it also can be used as view model of UWP and WPF directly with databinding.
Its sub-class SiteOwnedResourceEntity, SpecificOwnerResourceEntity and OwnerResourceEntity<TOwner, TTarget> are also used to inherit with advanced usages.
It need be defined like following to map the entity to the table design in database and to JSON schema of the web API.
[Table] on the class to map the table name in database.[Column] on the property to map the column name in the table of the database; or attribute [NotMapped] for the one without mapping.[JsonPropertyName] on the property to map the JSON property name for network transfer; or attribute [JsonIgnore] for the one that does not need serialize and deserialzie.GetCurrentProperty<T> and SetCurrentProperty method to supports databinding feature except the ones you don't care about it or they are just route and convert to/from other properties.The static class ResourceAccessClients is used to manage the core resource access client about following features.
You need set up the connection information to the data source before usages by calling its Setup static method.
Then you can call it CreateAsync static method to get an instance to use.
DAL is implemented by the framework by default so we can skip it unless we have a special reason to override it. We just need implement BLL based on that.
Base class OnPremisesResourceEntityProvider<T> is used to implement the provider of the specific entity as its business logic layer.
It contains some methods for basic accessing capabilities.
You can override it to add ACL.
You can also extend it to add further accessing way.
Please make sure it contains the constructors with parameter types and orders as same as the one of base class.
And, of course, you can add further constructors as you want.
Then inherit OnPremisesResourceAccessContext class to organize all the entity providers in your business logic.
The way is very simple: define them as properties with public getter and setter.
They will be filled automatically when the instance is initialized.
It also includes a built-in contact, blog and internal mail system.
The static class SocialNetworkResources is the entry point to access them.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net6.0 net6.0 is compatible. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 is compatible. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 was computed. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
| .NET Framework | net461 net461 is compatible. net462 net462 was computed. net463 net463 was computed. net47 net47 was computed. net471 net471 was computed. net472 net472 was computed. net48 net48 is compatible. net481 net481 was computed. |
Showing the top 1 NuGet packages that depend on NuScien:
| Package | Downloads |
|---|---|
|
NuScien.OnPremises
The NuScien on-premises library. It implements the resource access client and base business context by Entity Framework Core. |
This package is not used by any popular GitHub repositories.