Linq.NCache
5.3.7
dotnet add package Linq.NCache --version 5.3.7
NuGet\Install-Package Linq.NCache -Version 5.3.7
<PackageReference Include="Linq.NCache" Version="5.3.7" />
<PackageVersion Include="Linq.NCache" Version="5.3.7" />
<PackageReference Include="Linq.NCache" />
paket add Linq.NCache --version 5.3.7
#r "nuget: Linq.NCache, 5.3.7"
#:package Linq.NCache@5.3.7
#addin nuget:?package=Linq.NCache&version=5.3.7
#tool nuget:?package=Linq.NCache&version=5.3.7
Linq.NCache
This package lets you run LINQ queries directly against data stored in NCache, letting you filter, project, sort, and aggregate cached objects using standard .NET query syntax instead of NCache's native query APIs, across both .NET Framework and ASP.NET Core / .NET applications.
Installation
Install-Package Linq.NCache
or, using the .NET CLI:
dotnet add package Linq.NCache
What is Installed
Installing this package adds the following configuration files to your project:
- client.ncconf — Contains information about the cache servers of each cache the application needs to access.
- config.ncconf — Used for local inproc cache and inproc client caches. For a client cache, this file must also contain the name of the clustered cache that the client cache is a part of.
- tls.ncconf — Contains TLS/SSL settings used to secure communication between the client and the NCache cluster, if enabled.
NCache tries to read cache information from these local config files first. If the required information isn't found locally, it falls back to the configs inside the NCache installation directory. If NCache is not installed on the machine running the application, make sure all required information is present in the local configs.
Prerequisites
- .NET Framework or ASP.NET Core / .NET application
- An NCache Enterprise Edition server up and running, with the target cache already created/registered on it.
Getting Started
Setting up NCache
Update client.ncconf so the client knows which cache to connect to and where to find it:
- Open
client.ncconf. - Rename the cache entry named
demoCacheto the name of your actual cache (the cache you created on the NCache server). - Under the
serversettings, update the server address to point to one of the nodes in the cluster where that cache is running.
Example:
<cache id="demoCache" ... >
<server name="10.0.0.1" ... />
</cache>
Change demoCache → YourCacheName, and 10.0.0.1 → the IP/hostname of a node hosting YourCacheName.
Setting up LINQ Queries
Connect to the cache and query it through NCacheQuery<T>, which implements IQueryable<T>:
using Alachisoft.NCache.Client;
using Alachisoft.NCache.Linq;
ICache cache = CacheManager.GetCache("YourCacheName");
IQueryable<Product> products = new NCacheQuery<Product>(cache);
var lowStockProducts =
from product in products
where product.UnitsAvailable < 5
select product;
Standard LINQ operators like filtering, projection, sorting, grouping, and aggregation are translated into cache queries, so only matching results are transferred back to the client instead of the entire dataset.
Configuring Query Indexes
For a class to be queried efficiently, add a query index for it on the cache:
- Open NCache Web Manager (default:
http://localhost:8251/) and select your cache. Stop the cache if it's currently running. - Go to
Advanced Settings (Clustered Cache)→Query Indexes. - Click
Add→Browse, and select the assembly containing your model class. - Expand the assembly, check the class (and the attributes you want indexed), then click
Add Selected Classes→OK. - Save changes and start the cache.
Configuration
| File | Purpose |
|---|---|
client.ncconf |
Cache server addresses for each cache the application needs to access. |
config.ncconf |
Local config for inproc cache / inproc client cache. For a client cache, must include the name of the clustered cache it belongs to. |
Resources
- NCache Integration Docs
- NCache LINQ Programmer's Guide
- Sample Code on GitHub (.NET / ASP.NET Core)
- Sample Code on GitHub (.NET Framework)
Technical Support
Alachisoft provides various technical support resources. Visit the Alachisoft Support Center to select a support resource appropriate for your issue. To request additional features or report a documentation discrepancy, contact support@alachisoft.com.
License
Copyright © 2026 Alachisoft. All rights reserved.
| 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. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.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 is compatible. 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. |
-
.NETFramework 4.6.2
- Alachisoft.NCache.SDK (>= 5.3.7.2)
-
.NETStandard 2.0
- Alachisoft.NCache.SDK (>= 5.3.7.2)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Linq.NCache:
| Package | Downloads |
|---|---|
|
LinqPad.NCache
Query data stored in NCache Enterprise using LINQPad. |
GitHub repositories
This package is not used by any popular GitHub repositories.