2011-02-07 46 views
4

我正在使用一些代碼來執行一個SQL並返回一個IEnumerable的動態對象。如果你想看到它,代碼是here動態對象 - 整潔的屬性名稱?

我有一個列名稱如APPLICATION_NAME的表;

在我的對象我要引用它,像這樣:

var results = ReturnResults("Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=rawdb;Data Source=mypc", "SELECT * FROM APPLICATIONS"); 

string name = results.First().APPLICATION_NAME; 

有沒有一種方法,使屬性名稱解析的東西有條理?即。

string name = results.First().ApplicationName; 

感謝

回答

2

有一些ToCamelCase()擴展那裏(只是google it)。但是,如果你將它實現到你的動態對象。你怎麼知道你爲了一個醜陋的專欄名稱需要採用哪一個閃亮的名字?

相反,你應該重寫你的select語句來返回好名字,而不是在動態對象中實現一些算法。這個怎麼樣聲明:

SELECT APPLICATION_NAME as 'ApplicationName' FROM APPLICATIONS 

所以大家都很清楚,誰讀的sql語句如何通過動態對象來訪問列。

+0

這是我考慮過的一件事情,它將如何映射到醜陋!你的SQL非常合理,但在我的情況下並不理想。 – Jon 2011-02-07 14:06:44