我有2代表具有以下數據建設
基於兩個列表的字符串/列表父表
S.No Name Fields
111 Parent1 title,fname,mname,lname,addr1,city,state,zip,county
112 Parent2 Address1,lname,firstName,suffix,countrycode,gender,zip,state,city,address2,email,phone
子表
S.No mappingField FieldIndex ParentId
1 FirstName 1 111
2 LastName 3 111
3 AddressLine1 4 111
4 Country 8 111
5 LastName 1 112
6 FirstName 2 112
7 zip 6 112
8 state 7 112
9 workemail 10 112
10 workPhone 11 112
現在我需要創建一個字符串FieldIndex(子表)基於字段(父表) ,格式如下。
我期待的輸出字符串的順序欄位(父)如果有任何映射字段(在兒童)可用然後它 應顯示和所有其他值應該用「$」符號替換..
ParentId 111 -- (9 fields)
$|FirstName|$|LastName|AddressLine1|$|$|$|Country
ParentId 112 --(12 fields)
$|LastName|FirstName|$|$|$|zip|state|$|$|workemail|workPhone
這裏是我的代碼:
private string mapping(ChildData, ParentData)
{
string[] fieldList = ChildData.Fields;
var IndInfoList = new List<string>();
string[] headerList = ParentData.Fields.Split(',');
for (var i = 0; i < headerList.Length; i++)
{
bool alreadyAdded = false;
foreach (MyFields fields in fieldList)
{
if (i == ChildData.FieldIndex)
{
IndInfoList.Add(ChildData.mappingField);
}
else
{
if (!alreadyAdded)
{
IndInfoList.Add("$");
alreadyAdded = true;
}
}
}
}
string dataMapString = string.Join("|", IndInfoList);
return dataMapString;
}
考慮編輯您的帖子以提出具體問題。從閱讀和重讀,你的文章,我不清楚你有什麼輸出和你期望的輸出。 –
我期待的輸出字符串按照父表字段的順序,如果有任何映射字段(在兒童中)可用,那麼它應該顯示在其中,所有其他值應該用「$」符號替換。 – Henry