myObjにはmySubObjという名前のオブジェクトのリストがあるListがあります。 オブジェクトmySubObjには文字列Nameがあります。クラスのツリー指向データ構造のC#LINQ
だから私は、新しい文字列をベースに新しいリストベースを作成するmySubObjから。
私はこのコードを書いたが、それは間違っているようだ:
var por = msgs.Where(x => x.Parameters
.Where(p => p.ParameterName == s).Count() == 1);
誰がLINQで私を助けることができますか?
EDIT:
public class L3Message
{
public int Number { get; set; }
public string MessageName { get; set; }
public string Device { get; set; }
public string Time { get; set; }
public string ScramblingCode { get; set; }
public List<Parameter> Parameters { get; set; }
public L3Message()
{
Parameters = new List<Parameter>();
}}
public class Parameter
{
public int numOfWhitespaces { get; set; }
public string ParameterName { get; set; }
public string ParameterValue { get; set; }
public Parameter Parent { get; set; }
public List<Parameter> SubParameters { get; set; }
public Parameter()
{
SubParameters = new List<Parameter>();
}
}
名前xのパラメータを持つすべてのメッセージを保持しますか? – aKzenT
これはどうやって間違っているようですか?あなたは何をしようとしているのですか?何を除いてあなたは何を得ていますか? –
Hmm。私は問題を発見しましたが、解決策ではありません、問題はmyObjが両方のParameterNamesを持っていることです、そして、このLINQはそれがするべきことをします。私は出力を取ることを除いてmyObjの魔女はmySubObjを持っていてParameterNameを定義している、別の方法では、文字列sとは異なる名前を持つすべてのsubObjをロールアウトしたい。私は質問を編集します。 – JohnDoeKazama