2009-09-02 4 views
0

私はLINQの初心者です。LINQ列属性が見つかりません

私は.NET 3.5を使用しています。そして、VS 2008

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 

using System.Data.Linq.Mapping; 
using System.Data.Linq.Provider; 

namespace LINQ_to_SQL_Test 
{ 
    [Table(Name="Person")] 
    public class Person 
    { 
     [Column(Name="ID", Storage="_ID", DbType="IS NOT NULL IDENTITY", Id=true, AutoGen=true)] 
     public int ID { get; set; } 
     public int IDRole { get; set; } 
     public string LastName { get; set; } 
     public string FirstName { get; set; } 
    } 
} 

は、プログラムが列の属性にIdAutoGenの定義を見つけることができませんでした。

どうすればよいですか?

答えて

1

だと思います彼はプログラム "私はあなたがC#コンパイラを指していると仮定していて、おそらくcscがVisual Studio 2008にインストールされていると仮定しています。ColumnAttributeのプロパティを設定する構文は古くなっています。 LINQがCTPとしてリリースされたときの構文は正しいと思います。正しい構文は以下のようになります。

[Column 
    (
    Name="ID", 
    Storage="_ID", 
    DbType="Int NOT NULL IDENTITY", 
    IsPrimaryKey=true, 
    IsDbGenerated=true 
    ) 
] 

つまり、IdIsPrimaryKeyに置き換えられているとAutoGenIsDbGeneratedに置き換えられました。

0

ColumnAttributeにはこのようなプロパティはありません。 Idについては、お探しのものはおそらくIsPrimaryKeyです。 AutoGenに関しては、私は、そのコンテキストで意味することになっているものは考え...

EDITを持っていない:OK、私はあなたがAutoGenによって何を意味するか見...私は正しいプロパティは、[」によってIsDbGenerated