![]() |
VOOZH | about |
dotnet add package Ksql.Linq --version 1.1.0
NuGet\Install-Package Ksql.Linq -Version 1.1.0
<PackageReference Include="Ksql.Linq" Version="1.1.0" />
<PackageVersion Include="Ksql.Linq" Version="1.1.0" />Directory.Packages.props
<PackageReference Include="Ksql.Linq" />Project file
paket add Ksql.Linq --version 1.1.0
#r "nuget: Ksql.Linq, 1.1.0"
#:package Ksql.Linq@1.1.0
#addin nuget:?package=Ksql.Linq&version=1.1.0Install as a Cake Addin
#tool nuget:?package=Ksql.Linq&version=1.1.0Install as a Cake Tool
It enables database engineers to use Kafka and ksqlDB with an Entity Framework-style development model, and your AI, powered by the AI Assistant Guide, can help a lot when you need support with Kafka.
To use the AI Assistant Guide with your AI assistant (ChatGPT, Claude, Gemini, etc.):
Ksql.Linq.Cli version 1.0.0 or later):dotnet tool install --global Ksql.Linq.Cli --version 1.0.0
dotnet ksql ai-assist --copy
Version-specific changes (including v0.9.7 and later) are documented in the Release notes section of this NuGet page.
For full documentation, advanced usage, and design notes, see the project wiki:
➡ Ksql.Linq Wiki
https://github.com/synthaicode/Ksql.Linq/wiki
NOTE: In this repo's docker-compose test environment, use
127.0.0.1:39092(Kafka) /18081(Schema Registry) /18088(ksqlDB).
Samples below align to these ports. Adjust URLs when using external services.
This document is a minimal quick start guide for Ksql.Linq NuGet consumers.
appsettings.json{
"KsqlDsl": {
"Common": {
"BootstrapServers": "127.0.0.1:39092",
"ClientId": "my-app"
},
"SchemaRegistry": {
"Url": "http://127.0.0.1:18081"
},
"KsqlDbUrl": "http://127.0.0.1:18088"
}
}
using Ksql.Linq;
using Ksql.Linq.Core.Attributes;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Logging;
[KsqlTopic("quickstart-basic")]
public class Hello
{
public int Id { get; set; }
public string Text { get; set; } = "";
}
public class AppCtx : KsqlContext
{
public AppCtx(IConfiguration cfg, ILoggerFactory? lf = null)
: base(cfg, lf) { }
public EventSet<Hello> Hellos { get; set; } = null!;
}
var cfg = new ConfigurationBuilder()
.AddJsonFile("appsettings.json")
.Build();
await using var ctx = new AppCtx(
cfg,
LoggerFactory.Create(b => b.AddConsole())
);
await ctx.Hellos.AddAsync(new Hello
{
Id = 1,
Text = "Hello Ksql.Linq"
});
await ctx.Hellos.ForEachAsync(m =>
{
Console.WriteLine(m.Text);
return Task.CompletedTask;
});
Notes
Use KsqlDsl:Topics.{name}.Creation.* to control partitions / retention per topic.
For secured clusters, configure SecurityProtocol / Sasl* under KsqlDsl:Common.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 net8.0 is compatible. 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 is compatible. 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. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
See https://github.com/synthaicode/Ksql.Linq/blob/main/docs/releases/release_v1_1_0.md for 1.1.0. For 1.0.0 story (AI Assistant Guide and CLI integration), see https://github.com/synthaicode/Ksql.Linq/blob/main/docs/releases/release_v1_0_0.md.