我正在寻找从服务器到客户端的自动更改传播的ORM解决方案,如Hasura\Firabase,但特别适用于C#.NET堆栈和(可能(客户端上的.NET,如Blazor案例。我所资助的只是低级别的SignalR或Firebase未完成的绑定。有更好的.NET方法吗?
您应该能够通过GraphQL Dotnet client:在客户端上使用Blazor在C#.NET中使用Hasura及其订阅
https://github.com/graphql-dotnet/graphql-client/blob/master/SubscriptionIntegrationTest.ConsoleClient/Program.cs
我相信您只需要在订阅处理程序中将订阅事件发送到Blazor客户端。
除此之外,你可以构建自己的库,或者使用这样的库:
https://github.com/NickStrupat/EntityFramework.Triggers
public class MyContext : DbContextWithTriggers {
public DbSet<Person> People { get; set; }
}
var mycontext = new MyContext() { TriggersEnabled = true };
Triggers<Person>.Inserting += entry =>
{
Console.WriteLine($"Person: {entry.Entity}");
};
或者通过使用ObservableCollection
类滚动自定义实现:
https://learn.microsoft.com/en-us/dotnet/api/system.collections.objectmodel.observablecollection-1