Tag: microsoft sync framework

使用Moq模拟具有内部构造函数的类型

我正在尝试从Microsoft Sync Framework模拟一个类。 它只有一个内部构造函数。 当我尝试以下内容时: var fullEnumerationContextMock = new Mock(); 我收到此错误: System.NotSupportedException:Parent没有默认构造函数。 必须显式定义默认构造函数。 这是堆栈跟踪: System.Reflection.Emit.TypeBuilder.DefineDefaultConstructorNoLock(MethodAttributes attributes)System.Reflection.Emit.TypeBuilder.DefineDefaultConstructor(MethodAttributes attributes)System.Reflection.Emit.TypeBuilder.CreateTypeNoLock()System.Reflection.Emit.TypeBuilder.CreateType()Castle。 DynamicProxy.Generators.Emitters.AbstractTypeEmitter.BuildType()Castle.DynamicProxy.Generators.ClassProxyGenerator.GenerateCode(Type [] interfaces,ProxyGenerationOptions options)Castle.DynamicProxy.DefaultProxyBuilder.CreateClassProxy(Type classToProxy,Type [] additionalInterfacesToProxy,ProxyGenerationOptions options)Castle。 DynamicProxy.ProxyGenerator.CreateClassProxyType(Type classToProxy,Type [] additionalInterfacesToProxy,ProxyGenerationOptions options)Castle.DynamicProxy.ProxyGenerator.CreateClassProxy(Type classToProxy,Type [] additionalInterfacesToProxy,ProxyGenerationOptions options,Object [] constructorArguments,IInterceptor [] interceptors)Castle.DynamicProxy。 ProxyGenerator.Create ClassProxy(类型classToProxy,Type [] additionalInterfacesToProxy,ProxyGenerationOptions选项,IInterceptor []拦截器)Castle.DynamicProxy.ProxyGenerator.CreateClassProxy(类型classToProxy,Type [] additionalInterfacesToProxy,IInterceptor []拦截器)Moq.Mock 1.b__0() Moq.PexProtector.Invoke(Action action) Moq.Mock 1.InitializeInstance() 我该如何解决这个问题呢?

同步框架服务器到服务器同步

我有一种这样的场景: 场景http://sofzh.miximages.com/c%23/bb887608.Figure3(en-us).png 在这里,我需要将本地服务器数据库与主数据库服务器同步(例如:办公室中的计算机连接到办公室服务器,他们像本地服务器一样使用它,因此不需要同步。但是其他办公室的计算机也可以使用本地服务器我们需要通过主数据库服务器在办公室之间进行同步。 我认为我不能在这里使用SQLCompact。 是否有提供商直接从客户端进行服务器到服务器的同步? 如果没有人可以提供如何管理这种情况的解决方案样本?

WCF测试客户端:无法添加服务。 可能无法访问服务元数据。 确保您的服务正在运行并公开元数据

我目前正在尝试使用同步框架示例: sample 该解决方案可以编译出任何错误或警告。 但是当我点击F5时,WCF测试客户端启动并抛出以下错误。 Local \ Temp \ Test Client Projects \ 10.0 \ 5b6aab8a-6629-4a12-87c2-e9e75ba9c1e4 \ Client.cs(379,13):错误CS0246:找不到类型或命名空间名称’schema’(您是否错过了使用指令或程序集引用?) 以下是Client.cs中上述错误引用的代码 /// [System.CodeDom.Compiler.GeneratedCodeAttribute(“svcutil”, “4.0.30319.1”)] [System.SerializableAttribute()] [System.Diagnostics.DebuggerStepThroughAttribute()] [System.ComponentModel.DesignerCategoryAttribute(“code”)] [System.Xml.Serialization.XmlTypeAttribute(Namespace=”http://schemas.datacontract.org/2004/07/Microsoft.Synchronization”)] public partial class SyncIdFormatGroup { private schema schemaField; private System.Xml.XmlElement anyField; /// [System.Xml.Serialization.XmlElementAttribute(Namespace=”http://www.w3.org/2001/XMLSchema”, Order=0)] public schema schema { get { return this.schemaField; } set { this.schemaField = value; } } […]

同步框架:我可以仅同步我的表的一部分吗?

使用同步框架同步数据的常规代码段如下: LocalDBSyncAgent syncAgent = new LocalDBSyncAgent(); Microsoft.Synchronization.Data.SyncStatistics syncStats = syncAgent.Synchronize(); anynody知道一种同步我的表子集的方法。 请注意不是每个表中的数据,而是决定同步中涉及哪些表。 谢谢阿里尔

Bootstrapper,Sync Framework 2.1 – 先决条件

编辑:经过更多的搜索,我找到了一种方法来完成这个。 我使用此预览页面来更改我的Product.xml然后我复制了一些现有的Product.xml以检查它是否已安装。 所以我在我的系统和我的C#应用​​程序中成功实现了Sync Framework 2.1。 但是当我发布它并在没有安装Sync Framework的另一台PC上测试时,它会出现错误所以我尝试在安装时包含SyncSDK-v2.1-x86-ENU.msi。 搜索后我发现我需要将它添加到先决条件列表中(项目 – >属性 – >发布 – >先决条件) 我试过这个关于创建自定义包的链接。 但是它仍然指向不再存在的BMG(Bootstrapper Manifest Generator)文件。 下一个解决方案是手动创建它,我认为我在正确的道路上但是无法完成它。 我做了什么: 下载dotNetFx45_Full_x86_x64.exe并将其放入:C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.1A \ Bootstrapper \ Packages \ DotNetFX45 在C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.1A \ Bootstrapper \ Packages \中创建了一个名为SyncFrame的新文件夹 添加了Product.xml并将SyncSDK-v2.1-x86-ENU.msi复制到SyncFrame文件夹。 还添加了一个子文件夹“en”,在那里创建了一个Package.xml和一个Eula.rtf文件。 在VS2013中,项目 – >属性 – […]

Sync Framework 2.1中的BulkInsertCommand失败

有时我尝试使用Sync Framework 2.1从SQL Express同步到SQL Server时出现以下错误。 一旦客户端收到此错误,他们必须重新初始化范围。 像错误状态这样的语法没有任何问题,因为它在很长一段时间内都没有问题(插入发生)。 有什么想法吗? 上午11:18:21无法对表’XXX’执行’BulkInsertCommand’命令; 该交易已回滚。 确保命令语法正确。 上午11:18:21 Microsoft.Synchronization 11:18:21 AM at Microsoft.Synchronization.Data.ChangeHandlerBase.CheckZombieTransaction(String commandName,String table,Exception ex) 从跟踪日志中: 警告,OfflineAgentMonitor.vshost,13,04 / 05/2011 11:16:17:224,批量命令BulkUpdateCommand失败,出现以下exception。 在单次申请期间将重试行。 System.Data.SqlClient.SqlException(0x80131904):尝试传递具有19列的表值参数,其中相应的用户定义表类型需要20列。

Microsoft Sync Framework与Nhibernate TooManyRowsAffectedexception冲突

我们正在尝试将Microsoft Sync Framework实现到我们的应用程序中,该应用程序使用NHibernate持久化它的域。 我们遇到的一个问题是,在Sync Framework更改了您的初始数据库结构(添加影子表和触发器)之后,当您尝试将对象插入数据库时​​,NHibernate似乎会因为抛出一个toomanyrowsaffectedexception而感到不安。 我发现这篇文章的解决方案是在每个更新语句周围添加SET NOCOUNT ON和OFF,但由于表结构由nhibernate自动生成,同步触发器由Sync Framework自动生成,因此手动调整所有触发器实际上不是一个选项。 NHibernate and TooManyRowsAffectedException 我尝试按照此问题中的描述设置sql server 2008属性NOCOUNT: 哪里是设置NOCOUNT的最佳位置? 但是这导致了StaleStateException(受影响的行数为-1,预期为1)。 您是否知道是否有办法配置同步框架以在其触发器中自动设置这些NOCOUNT语句? 或者有没有办法告诉NHibernate期望更多/更少的行被更改? 或者也许你们中的任何人都有一个自动脚本来将这些NOCOUNT语句添加到同步框架的触发器中。 Thx提前!

使用WCF和Sync Framework通过HTTP同步SQL Server 2008数据库

有没有人在这里使用Sync Framework并通过WCF端点进行同步? 请分享代码示例或示例项目。 我特意寻找离线场景,其中客户端仅在线从服务器获取更新。