0
我想動態設置來自LINQ的輸出的列名。像這樣:在LINQ中動態設置列類型
summary Rows.Field<Type>("Name")
我需要這樣做,因爲我有基於的條件和每列三列做纔能有2種不同的類型,如float
,int
和double
有誰有什麼建議如何做到這一點?
我想動態設置來自LINQ的輸出的列名。像這樣:在LINQ中動態設置列類型
summary Rows.Field<Type>("Name")
我需要這樣做,因爲我有基於的條件和每列三列做纔能有2種不同的類型,如float
,int
和double
有誰有什麼建議如何做到這一點?
LINQ to SQL處理靜態類型,雖然有一些技巧可以做。除了使用Convert.ToInt32等將適當的類型更改爲您想要投射時所需的值之外,您無法立即更改該字段的類型。
或者,你可以嘗試的價值鑄造到每個從查詢三類:
from c in ctx
select new
{
IntVal = c.Value,
DoubleVal = Convert.ToDouble(c.Value),
.
.
}
這樣,你適當地有三個投,可以在正確的領域吸。在處理記錄時,甚至可以使用反射包裝來獲得與所需內容相似的內容。我不知道Convert是LINQ支持的,但你應該可以做類似的事情。
HTH。
不太清楚你的代碼,但你可以使用Select(new {})選項。您也可以使用[LINQPad](http://ow.ly/5gv6D)進行實驗。 – John 2011-06-13 15:27:35
這是什麼意思,「每列有兩種不同的類型,比如......(3種類型)'? – Snowbear 2011-06-13 16:02:01