从数据库重新加载字典而不重置IIS

时间:2015-04-23 20:55:24

标签: c# sql dictionary

我们在网络服务中使用字典。字典从数据库表加载。每次更改数据库表时如何刷新字典而不重置IIS并使用SQLDependency?

1 个答案:

答案 0 :(得分:0)

您可以使用某种发布商订阅者实施方式通知您的应用或服务必须重新加载该字典。

每当代码的某些部分更改数据库时,它都会生成通知,订阅者(例如,字典)可以对数据库更改做出反应。

请注意,您的数据库不会发出这些通知,但您将在实际的C#代码中发送这些通知,而您在数据库中再次执行写入事务。

在一天结束时,它就像这个伪代码:

private void map_MouseRightButtonUp(object sender, GraphicMouseButtonEventArgs e)
{
_contextMenu = new ContextMenu();

_contextMenuItem = new MenuItem();
_contextMenuItem.Header = "Edit";
_contextMenu.Items.Add(_contextMenuItem);
_contextMenuItem.Click += new RoutedEventHandler(menuItem_Click);

您可以使用MSMQ,RabbitMQ甚至Redis pub-sub等消息队列来轻松解决问题!