タイプ「tinyint」の主キー列をサーバーで生成できません...
これは、スタック上でこれを検索していて、役立つ質問/回答が見つからなかったため、質問というよりも回答です。
基本的に、私は挿入をしようとしていました(以下)
public void AddTask(Task task)
{
TwoDooDataContext db = new TwoDooDataContext();
db.Tasks.InsertOnSubmit(task);
db.SubmitChanges();
}
そして、私の主キーは Identity true に設定されていましたが、データ型は TinyInt に設定されていました...以下のクラス属性を参照してください
ColumnAttribute(Storage="_ID", AutoSync=AutoSync.OnInsert,
DbType="TinyInt NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
これを行うと、次のエラー メッセージが表示されました。
タイプ 'tinyint' の主キー列をサーバーで生成できません
したがって、このリンクができるまでこれを理解できませんでした... http://connect.microsoft.com/VisualStudio/feedback/details/402060/accessing-a-primary-key-id-when-its-declared- as-a-tinyint-using-linq
これは既知の問題ですが、修正されていません。SQL 2008 Express と VS Web Developer 2010 Express を使用しています。
私の修正は、データ型を Int に変更するだけで、すべてが機能しました。他の誰かが解決策を探している場合に役立つことを願っています。
そして実際に質問 - 私の場合に使用するのに最適なデータ型は何ですか? 動作していても、Intのままにしておくか、変更する必要がありますか? ありがとう