我想显示当我的List的结果为= 1时从List获得的数据。我需要得到FileName
,Title
和HotspotID
。< / p>
有人可以帮我吗?我需要帮助的部分是我的代码的末尾部分。
这是代码:
private void PerformSheetLink(String hotspotID, Int32 fileRec)
{
string nomenclature = dataLayer.GetNomenclature(fileRec, hotspotID);
string pattern = @"\((?<ProjectRec>\d+(?:_)?\d*?)*\,(?<FileName>[^,]*)\,(?<HotspotID>[^)]*)\)";
Regex regex = new Regex(pattern, RegexOptions.Compiled);
Match m = regex.Match(nomenclature);
//Multiple numenclature exist
if (regex.Matches(nomenclature).Count > 1)
{
List<P2Trace> linkList = new List<P2Trace>();
string fileName, hotspot, title;
MatchCollection mc = regex.Matches(nomenclature);
foreach (Match match in mc)
{
//This match has a Single Project
GroupCollection gc = match.Groups;
if (gc["ProjectRec"].Captures.Count == 1)
{
if ((int)cbModel.SelectedValue == Int32.Parse(gc["ProjectRec"].Value))
{
fileName = String.Format("{0}.cgm", gc["FileName"].Value);
title = dataLayer.GetSheetTitle(fileName);
hotspot = FixHotspotID(gc["HotspotID"].Value);
linkList.Add(new P2Trace { FileName = fileName, HotspotID = hotspot, Title = title });
}
}
else
{
//This match has Multiple Projects
List<Int32> pRecs = GetProjectRecsInList(gc["ProjectRec"].Captures);
if (pRecs.Contains((int)cbModel.SelectedValue))
{
foreach (Int32 projectRecNo in pRecs)
{
if (projectRecNo == (int)cbModel.SelectedValue)
{
fileName = String.Format("{0}.cgm", gc["FileName"].Value);
title = dataLayer.GetSheetTitle(fileName);
hotspot = FixHotspotID(gc["HotspotID"].Value);
linkList.Add(new P2Trace { FileName = fileName, HotspotID = hotspot, Title = title });
}
}
}
}
}
//Link found and collected, perform jump
if (linkList.Count == 1)
{
p2Trace.FileName = linkList. ?????
p2Trace.Title = linkList. ??????
p2Trace.HotspotID= linkList. ??????
jumpTo(p2Trace.FileName, p2Trace.Titel, p2Trace.HotspotID);
}
答案 0 :(得分:1)
p2Trace.FileName = linkList[0].FileName;
p2Trace.Title = linkList[0].Title;
p2Trace.HotspotID = linkList[0].HotspotID;
答案 1 :(得分:0)
试试这个......
if (linkList.Count == 1)
{
var firstItem = linkList[0];
p2Trace.FileName = firstItem.FileName;
p2Trace.Title = firstItem.Title;
p2Trace.HotspotID= firstItem.HostspotID;
jumpTo(p2Trace.FileName, p2Trace.Titel, p2Trace.HotspotID);
}