2010-11-14 84 views
0

我在C#中使用Visual Studio 2010中的LINQ to SQL。datacontext中的屬性的名稱(linq to sql)

我有一個屬性,如下表:

table abacus(
    a0 float 
    a1 float 
    a2 float 
    .....) 

我可以檢索第二屬性(a1),並從DataContext命令返回一個字符串值?

我在想像cxt.ABACUSs.GetAttribut(2) - >a1

回答

0

不知道我是否理解你在找什麼.....

選擇從表中的一行,使用:

var row = ctx.ABACUSs.FirstOrDefault(a => a.ID = 5); // or whatever 

然後,當你有一個元素,可以讀取它的屬性 - 列a1應該變成一個屬性a1該對象上:

// check for != null just to be safe.... 
if(row != null) 
{ 
    var yourResult = row.a1; 
} 

表總是組織成行和列 - 您首先需要在Linq-to-SQL中選擇一行,將其轉換爲對象,然後您可以檢查/讀取該對象上的屬性(與您的表的列對應)。

由於您獲取Linq-to-SQL中每個行的對象(對象的實例),這些對象具有屬性(通過名稱讀出),因此不存在「第二個屬性」的概念SqlDataReader。你不能得到「該行的第二個屬性」 - 你需要知道它的名字。

或者你究竟想要達到什麼?

0

我的解決方案將建立一個類來創建linq查詢。

將使用A List<string>來存儲將用於創建查詢的屬性的名稱。

0

您可以編寫一個方法,根據給定的索引選擇要選擇的列。