Linq to sql Windows Phone 7 SQL Server版本

Linq to sql Windows Phone 7 SQL Server版本,linq-to-sql,windows-phone-7,sql-server-ce,Linq To Sql,Windows Phone 7,Sql Server Ce,在WindowsPhone7上更新SQLServerCE中的表时出现问题。当我调用submit changes时,应用程序将在没有任何异常或错误的情况下关闭。VisualStudio甚至仍然在运行 删除行版本列修复了该问题。我环顾四周,不确定是否遗漏了什么,但在使用rowversion列时,是否需要做一些特殊的事情 以下是该列的属性。我在试图解决这个问题时创建了一个简单的表。它有3列: Id(Guid) TestColumn(nvarchar100) MyRowVersion(rowversi

在WindowsPhone7上更新SQLServerCE中的表时出现问题。当我调用submit changes时,应用程序将在没有任何异常或错误的情况下关闭。VisualStudio甚至仍然在运行

删除
行版本
列修复了该问题。我环顾四周,不确定是否遗漏了什么,但在使用
rowversion
列时,是否需要做一些特殊的事情

以下是该列的属性。我在试图解决这个问题时创建了一个简单的表。它有3列:

  • Id
    (Guid)
  • TestColumn
    (nvarchar100)
  • MyRowVersion
    (rowversion)
代码:


假设您使用SQLServerCompact工具箱生成datacontext,如果您的索引包含与主键相同的列,则会出现导致崩溃的错误。尝试使用最新的工具箱加载项(版本2.6.2或更高版本)重新生成DataContext。该问题的解决方法是删除“重复”索引。

我无法使用可为空的rowversion列重新创建,您能否共享您的创建表脚本?感谢Erik,尝试在单独的解决方案中重新创建rowversion正在工作。我正在试图找出为什么它在另一个解决方案中不起作用。我读了你的新文章并将rowversion添加回我的db中,我仍然可以在使用db.SubmitChanges()的简单更新中使其崩溃。我可以让它在测试应用程序中工作。奇怪的是,我不知道这是否与使用异步ctp在后台任务中运行的进程有关。假设您使用工具箱生成datacontext,如果您的索引包含导致崩溃的主键,则会出现错误。尝试使用最新的工具箱加载项(版本2.6.2)重新生成DataContext,并告诉我它是否有效。是的,我正在使用工具箱生成上下文。我回来后会检查并尝试一下,然后告诉你。谢谢
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_MyRowVersion", AutoSync=AutoSync.Always, DbType="rowversion", CanBeNull=true, IsDbGenerated=true, IsVersion=true, UpdateCheck=UpdateCheck.Never)]