Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
同期時の部分的なダウンロードを無効にするか、有効にするかを指定します。
Public Property KeepPartialDownload As Boolean
public bool KeepPartialDownload {get;set;}
同期時の部分的なダウンロードを有効にする場合は true、無効にする場合は false。デフォルトは false です。
Ultra Light.NET では、通信エラーや、ユーザーによる ULSyncProgressListener からのアボートが原因で失敗したダウンロードを再起動できます。Ultra Light.NET は、ダウンロードを受信しながら処理します。ダウンロードが中断した場合は、部分的なダウンロードトランザクションがデータベース内に残るため、次の同期中に再開できます。
Ultra Light.NET で部分的なダウンロードを保存する必要があることを示すには、connection.SyncParms.KeepPartialDownload=true と指定します。指定しないと、エラーが発生した場合にダウンロードがロールバックされます。
部分的なダウンロードが保持された場合、connection.Synchronize() の終了時に、出力フィールド connection.SyncResult.ULSyncResult.PartialDownloadRetained が true に設定されます。
PartialDownloadRetained が設定されている場合は、ダウンロードを再開できます。再開するには、true に設定された connection.SyncParms.ULSyncParms.ResumePartialDownload を使用して connection.Synchronize() を呼び出します。別の通信エラーの発生に備えて、KeepPartialDownload も true に設定しておくことをおすすめします。ダウンロードが省略された場合は、アップロードは行われません。
再開したダウンロードで受信するダウンロードは、最初にダウンロードを開始したときと同じものです。最新のデータが必要な場合は、再開された特別なダウンロードが完了した直後に、もう一度ダウンロードを行うことができます。
ダウンロードを再開する場合、ULSyncParms フィールドの多くは関係ありません。たとえば、Publications フィールドは使用されません。受信するパブリケーションは、最初のダウンロード時に要求したものです。設定する必要があるフィールドは、ResumePartialDownload と UserName だけです。KeepPartialDownload フィールドを必要に応じて設定すると、正常に機能します。
部分的なダウンロードが存在するが、このダウンロードが必要ではなくなった場合は、ULConnection.RollbackPartialDownload() を呼び出して、失敗したダウンロードトランザクションをロールバックできます。また、同期をもう一度実行したときに ResumePartialDownload を指定しなかった場合は、部分的なダウンロードがロールバックされてから、次の同期が開始されます。