2009-09-02 84 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#編譯器,並且可能使用Visual Studio 2008安裝了csc

用於設置ColumnAttribute屬性的語法已過時;我相信當LINQ作爲CTP發佈時,語法是正確的。正確的語法是:也就是說,Id已取代IsPrimaryKeyAutoGen

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

已取代IsDbGenerated

0

ColumnAttribute中沒有此類屬性。對於Id,您要查找的內容大概是IsPrimaryKey。關於AutoGen,我不知道它應該在這方面的意思......

編輯:好的,我看到了,你AutoGen的意思......我認爲正確的屬性是IsDbGenerated