我有一個視圖,它返回以下行的數據 - Id,SourceStatus,StatusId,ActivePre,Runtime。 在c#中我創建了一個類,並寫了一個參數化查詢來獲取數據。從視圖到列表的數據
public class TestClass
{
public int Id { get; set; }
public bool? SourceStatus { get; set; }
public int? StatusId{ get; set; }
public int? ActivePre { get; set; }
public string Runtime { get; set; }
}
string mydata= "SELECT * FROM view1 WHERE Id = {0}";
deviceData.TestList = dataContext.ExecuteQuery<TestClass>(mydata, deviceId).ToList();
在deviceData.TestList中,我獲得了完美的數據。我的挑戰是,我需要在另一個得到這個數據列表 - HeaderData
public class HeaderData
{
public STRING Name { get; set; }
public STRING Value { get; set; }
}
,使得我的列表如下 - {名稱:由assetid,價值:1,名稱:SourceStatus,值:false}。我目前正在做如下。有點我明白這是一種可怕的方式。我可以做得更好嗎?
deviceData.HeaderData= new List<HeaderData>();
foreach(var v in deviceData.TestList)
{
deviceData.HeaderData.Add(new HeaderData() { Name = "Id" , Value = v.ActivePreset});
deviceData.HeaderData.Add(new DeviceHeaderData() { Name = "SourceStatus", Value = v.SourceStatus });
deviceData.HeaderEntries.Add(new DeviceHeaderData() { Name = "Runtime", Value = v.Runtime });
}
的問題是,你真的需要另一個類來顯示相同的數據?也許你只是想用不同的觀點。 Wpf在數據模板化控制方面非常出色。我認爲目前,你的方案有點不清楚你想要使用什麼數據(這在解決你的問題時實際上可能是有用的) – Icepickle