我有一个C#控制台应用程序,它执行一些处理然后写入数据库。我在服务器上多次部署了该应用程序,并使用不同的配置设置来完成略微不同的任务。但是,它们都必须使用Linq to Entities将数据写入相同的数据库(如果尚不存在,则可能需要将相同的数据插入到相同的表中)。
如果我使用线程,我可以锁定该方法,或者使用存储过程,我可以排队写入以避免冲突,但是否有任何方法可以保持这些应用程序分开,并防止它们同时尝试将相同的内容写入数据库?
有时会发生异常。
编辑:
我不一定要调试为什么出现异常,更多地寻求任何最佳实践的建议,例如:这应该在控制台应用程序级别、L2E级别还是数据库级别处理。
如果我使用线程,我可以锁定该方法,或者使用存储过程,我可以排队写入以避免冲突,但是否有任何方法可以保持这些应用程序分开,并防止它们同时尝试将相同的内容写入数据库?
有时会发生异常。
编辑:
我不一定要调试为什么出现异常,更多地寻求任何最佳实践的建议,例如:这应该在控制台应用程序级别、L2E级别还是数据库级别处理。