2010-10-21 19 views
1

以下查詢是我從舊應用程序繼承的,它將2個屬性添加到存儲在數據庫中的Excel中。將舊查詢格式化爲LINQ語句

SELECT 
    row_number() over(order by id) as num 
    , [id] as mailsort 
    , 0 as pages 
    , [xmlRecord].query('/sst-statement/*') 
FROM dbo.RPA200_preproc AS [sst-statement] 
WHERE rpatype = 201 
ORDER BY id for xml auto 

返回以

<sst-statement num="1" mailsort="32" pages="0"> 

現在是XML時,SQL將需要轉換爲LINQ聲明。這可能類似於這個查詢,或者從數據庫中檢索XML然後更改XML會更好嗎?

回答

1
SELECT 
row_number() over(order by id) as num, 
[id] as mailsort, 
0 as pages, 
[xmlRecord].query('/sst-statement/*') 
FROM dbo.RPA200_preproc as [sst-statement] 
where rpatype = 201 
order by id for xml auto 

變成

int i=0; 
var Query = 
FROM I in dbo.RPA200_preproc 
WHERE rpatype = 201 
order by id 
SELECT I.id; 
foreach(var Item in Query) 
{ 
    new XElement("sst-statement", new XAttribute("num", i), new XAttribute("mailsort" = Item), new XAttribute("Pages",(int)0)); 
    i++; 
} 

我認爲:)

+0

感謝您的回答。由於其他工作通過了這個,我目前無法測試它。我會盡快進行測試。 – Andy 2010-12-17 14:39:42