Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
跨应用程序的C#Sqlite函数_C#_Sqlite_System.data.sqlite - Fatal编程技术网

跨应用程序的C#Sqlite函数

跨应用程序的C#Sqlite函数,c#,sqlite,system.data.sqlite,C#,Sqlite,System.data.sqlite,是否可以在应用程序中注册Sqlite函数并从另一个应用程序触发它 例如: 我创建了一个触发器,在更新后调用MyFunction() 应用程序A使用SQLiteFunction.Register来注册名为MyFunction的函数 应用程序B进行更新,触发触发器 当应用程序B进行更新时,我收到一个错误,如“函数MyFunction未定义”。 有没有办法用“全局”作用域注册函数 PS:最终目的是使用触发器跨应用程序模拟事件 如果您只是想在多个应用程序之间传递事件通知,那么SQLite——或者任何

是否可以在应用程序中注册Sqlite函数并从另一个应用程序触发它

例如:

  • 我创建了一个触发器,在更新后调用MyFunction()
  • 应用程序A使用SQLiteFunction.Register来注册名为MyFunction的函数
  • 应用程序B进行更新,触发触发器
当应用程序B进行更新时,我收到一个错误,如“函数MyFunction未定义”。 有没有办法用“全局”作用域注册函数

PS:最终目的是使用触发器跨应用程序模拟事件


如果您只是想在多个应用程序之间传递事件通知,那么SQLite——或者任何数据库表——都是错误的工具

如果该操作有点异步,那么您可能希望使用命名通知通知另一个进程您已经做了它应该感兴趣的事情,或者如果涉及数据,则将通知及其数据填充到一个文件中,以便另一个应用程序拾取


否则,您应该使用真正的进程间通信机制,如套接字、命名管道、远程处理、WCF等。

@fra:a
MessageQueue
正是您所需要的。它们可以持久化,这样即使应用程序宕机,也不会丢失任何东西;如果相关的话,他们也可以加入交易。谢谢。我们已经有了一种“消息调度器”,无论如何,我担心调度器应用程序可能会崩溃,丢失所有事件。这就是为什么我希望使用sqlite使应用程序“无状态”,并将事件保存在数据库上;然后,我们可以定期查询数据库并检查是否丢失了任何事件。问题是这些应用程序在远程系统上运行,所以我需要许多控制机制。Sqlite触发器解决方案更像是一个理解Sqlite可能性的“学术”解决方案,并没有真正计划在最终系统上使用它。