我需要與MS同步框架的幫助,因爲我在這新的。我已經嘗試了兩個不同數據庫中兩個相同表之間的簡單同步。我從MS Sync使用的代碼 http://msdn.microsoft.com/en-us/library/ff928494.aspx。與MS SQL Server 2008的EE和FILESTREAM選項微軟同步框架不工作
當我嘗試應用在服務器端我得到的異常
ALTER DATABASE失敗,因爲READ_COMMITTED_SNAPSHOT和ALLOW_SNAPSHOT_ISOLATION選項不能設置爲ON時,數據庫有FILESTREAM文件組的配置。要將READ_COMMITTED_SNAPSHOT或ALLOW_SNAPSHOT_ISOLATION設置爲ON,您必須從數據庫中刪除FILESTREAM文件組。 ALTER DATABASE語句失敗。
public void CreateProvisioningOnServer()
{
// create a connection to the SyncExpressDB database
SqlConnection clientConn = new SqlConnection(@"Data Source=.\SQLEXPRESS2008; Initial Catalog=SyncDB; Trusted_Connection=Yes");
// get the description of ArticlesScope from the SyncDB server database
DbSyncScopeDescription scopeDesc = SqlSyncDescriptionBuilder.GetDescriptionForScope("ArticlesScope", serverConn);
// create server provisioning object based on the ProductsScope
SqlSyncScopeProvisioning clientProvision = new SqlSyncScopeProvisioning(clientConn, scopeDesc);
if (clientProvision.ScopeExists(scopeDesc.ScopeName))
return;
// starts the provisioning process
clientProvision.Apply();
}
我使用了SQL Server 2008 Express的版本存儲圖像FILESTREAM選項,所以我不能使用MS同步框架,因爲它是我必須重寫莫名其妙的SqlSyncScopeProvisioning?
下一個問題我有
我使用的MS同步框架2個數據庫之間的同步,無論是在速成版。
客戶端將從16個服務器表下載數據 - 表結構相同。 客戶端將數據上傳到4個服務器表 - 也許客戶端和服務器上的表結構不同。
難道我要去使用MS同步框架好辦法嗎? 我一直通過自己的存儲過程進行這種同步 - 但當通過互聯網和鏈接服務器與客戶端數據庫進行同步時,性能問題(以及其他問題)效率非常低。
那麼哪條路走?
第一個問題:是否可以使用2個數據庫,一個是同步的,另一個是與圖像不同的數據庫?或者你是否需要同步圖像?在這種情況下,您可以使用同步框架文件同步而不是數據庫同步的圖像? – stombeur
第二個問題:是的,只要你堅持使用這種數量的表(20-ish),同步fw就可以適用於這種情況。我已經使用了同步fw 2.1方法(元數據表),但稍後決定使用更改跟蹤的2.0方法更好。儘管如此,客戶端並不支持這種方式。但是有一個很好的(不支持)解決方法。 – stombeur
@StephaneT謝謝你的時間。是的,我需要同步圖像。但主要問題是,即使我沒有同步圖像,同步框架也會拋出異常。 – MartinM