私の要件は、「データベース ファイルのロックは、アプリケーション プロセス内から実行されるすべてのアクションが許可され、サード パーティのアプリケーション/サービス アクセスのみがブロックされるような方法で行われます」です。アプリケーションの実行後にサードパーティのソフトウェアがデータベース ファイルをロックしないようにするには、すべてのデータベース ファイルを明示的にロックして、それを防止する必要があります。
背景:私はデスクトップアプリケーションとsql ceをデータベースとN-hibernateとして使用しています。アプリが頻繁に実行され、その時点でシステム バックアップを実行するバックアップ ソフトウェアなどのサード パーティ製ソフトウェアを実行している場合、db ファイルがロックされます。
そのため、アプリの起動時の要件として、アプリケーション内のスレッドまたはアクションがデータベース上のすべての操作を実行するように、データベース ファイルをロックする必要がありますが、サード パーティの操作は制限する必要があります。
FileLock でサンプルを試してみましたが、N-hibernate を介してデータベース操作を実行すると、アプリで失敗します。これについて私を助けてください。もしそうなら、これは本当に達成可能です。