|
分類:[.NET 全般]
Visual Studio 2008 SP1 + C#でデータベース(SQL Server 2005)アクセスをしています。 LINQ to SQLのデザイナを用いて、テーブル間の関連付けを行おうとしたのですが、 下記のようなエラーが発生して関連付けできませんでした。
------ 関連付け "USER_TANTO" を作成できません。プロパティに一致する型がありません: "tanto_id"、"id"。 ------
各テーブルを簡略化すると以下のようになります。
USERテーブル { id INT NOT NULL, name VARCHAR NOT NULL, tanto_id INT } TANTOテーブル { id INT NOT NULL, name VARCHAR NOT NULL, }
結合条件は以下のような感じを想定しています。 USER LEFT OUTER JOIN TANTO ON USER.tanto_id = TANTO.id
「一致する型がありません」のエラーはUSERテーブルのtanto_idにNOT NULL制約がついていないために起こっているようです。 データの内容的に、USERにTANTOがつかない場合がありますので、tanto_idにNOT NULL制約を付けるわけにはいきません。
うまく解決する方法はないでしょうか?
|