0

トピックと設定の2つのクラスがあります。Topic には、属性として TopicName と設定のリストがあります。設定には、オプションとしてキー、値、および設定の別のリストがあります。

現在、データベースから取得したトピックのリストと設定のリストがあります。良い設定と良い設定を関連付けたい(話題・設定)

例 :

Topic#1.TopicName = Grandpa
Setting#1.Key = Grandpa/Papa
Setting#2.Key = Grandpa/Mama
Setting#3.Key = Grandpa/Papa/Baby

私のフォーマットによると、Topic#1 には設定のリスト (Setting#1 と Setting#2) があり、Setting #2 には設定のリスト (Setting#3) があります。

私のコードは今

var topicList = new List<Topic>(); 
foreach (var topics in topicRetrieved)
{
    var topic = new Topic()
                {
                    TopicName = topics.Key,
                    Override = topics.Override,
                    Source = topics.Source,
                };

    foreach (var topicSettings in topicSettingRetrieved)
    {
        string parent = topic.TopicName + "/";
        if(System.Text.RegularExpressions.Regex.IsMatch(topicSettings.Key,parent))
        {
        var setting = new Setting
                        {
                        Key = topicSettings.Key,
                        Value = topicSettings.Value
                        };
        topic.SettingCollection.Add(setting);
        }
    }
    topicList.Add(topic);
    }
    return topicList.ToArray();
}

私の問題は、トピック#1に文字列「おじいちゃん」が含まれているため、常に設定のリスト(#1、#2、および#3)があることです。Topic#1 には Setting#1 と Setting#2 のみを含めたいです Setting#3 を正しい場所 (Setting#2) に追加できるようにしたい Setting#3 = おじいちゃん/パパ/赤ちゃん ----- - > Setting#2= おじいちゃん/Papa THEN my setting#2 to Topic#1 何か考えはありますか?

4

1 に答える 1

0

これを試して string parent = "^"+ topic.TopicName + "/[^/]*$";

于 2013-10-29T17:17:53.580 に答える