2011-12-24 17 views
0

Windows Phone 7でSQL Server CEのテーブルを更新するときに問題が発生しました。送信の変更を呼び出すと、アプリケーションは例外またはエラーなしで終了します。 Visual Studioでも実行されていました。Windows Phone 7 SQL Server CE rowversion

rowversion列を削除すると問題が解決しました。私は何かを見逃しているか確かめていませんでしたが、rowversionカラムを使用するときに特別なことが必要ですか?

ここに列の属性があります。これを理解しようとすると、私は簡単なテーブルを作成しました。あなたはDataContextのとを生成すると仮定すると、

[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_MyRowVersion", AutoSync=AutoSync.Always, DbType="rowversion", CanBeNull=true, IsDbGenerated=true, IsVersion=true, UpdateCheck=UpdateCheck.Never)] 
+0

null可能なrowversion列で再作成できません。create tableスクリプトを共有できますか? – ErikEJ

+0

ありがとうエリック、別のソリューションで再作成しようとしてrowversionが動作しています。私はそれが他の解決策ではうまくいかない理由を理解しようとしています。 –

+0

私はあなたの新しい記事を読んで、私のdbにrowversionを追加して行きました、そして、私はまだdb.SubmitChanges()を使った簡単なアップデートでそれをクラッシュさせることができます。私はそれをテストアプリで動作させることができます。私はそれがasync ctp、奇妙な、バックグラウンドタスクで実行されているプロセスと関係しているのだろうかと思います。 –

答えて

1

  • Id(GUID)
  • TestColumn(nvarchar100)
  • MyRowVersion(rowversion)

コード:それは3つの列を持っていますSQL Server Compact Toolbox、インデックスがある場合、バグがありますプライマリキーと同じ列をカバーし、クラッシュを引き起こします。最新のToolboxアドイン(バージョン2.6.2以降)でDataContextを再作成してみてください。問題の回避策は、「重複」索引を削除することです。

関連する問題