私のコードロジックには30分の有効期限があります。現在の時刻が有効化された時間+ 30分に等しい場合、有効化は失効します。 SQLiteの内部では、IsActiveフラグ= 0を更新する必要があります。アプリケーションデータベースをサイレントモードで更新するにはどうすればよいですか?
どのようにアプリケーションデータベースをサイレントモードで更新しますか?
私のコードロジックには30分の有効期限があります。現在の時刻が有効化された時間+ 30分に等しい場合、有効化は失効します。 SQLiteの内部では、IsActiveフラグ= 0を更新する必要があります。アプリケーションデータベースをサイレントモードで更新するにはどうすればよいですか?
どのようにアプリケーションデータベースをサイレントモードで更新しますか?
フラグを更新する必要はありません。あなたのデータベースには日付フィールドが必要です。
YourEntity.ActivationDate = DateTime.Now;
// save your entity
後に::
var entity = // get the entity from database
var isActivated = DateTime.Now < entity.ActivationDate.AddMinutes(30);
活性化のためにチェックする非常に同じコードがフラグを更新することができます:
var entity = // get the entity from database
if(entity.IsActive && DateTime.Now > entity.ActivationDate.AddMinutes(30))
{
entity.IsActive = false;
// save entity to db table
}
あなたが
sqlite-net-pclまたは類似のようなORMを使用していると仮定すると、
このようにして、バックグラウンドサービスの実装を避けることができます。
私は、date.now> =起動日時という言葉と同じ論理を実装しました。とてもうまくいきます。ありがとう – goofyui
それぞれのOSでバックグラウンドサービスを行う必要があります。 –
それはイベントですか? – goofyui
期限切れ条件はいつチェックされますか?打ち上げ時、再開時、またはどこか別の場所で?あなたがチェックし、条件がヒットした場合は、SQLクエリを起動し、必要に応じてフラグを設定します。何が問題なのですか? –