LINQ に次のステートメントがあります。
var eventsWithTag = (from occurence in occurrences1
join eventTag in serviceContext.CreateQuery("adx_eventtag_event")
on occurence.Event.GetAttributeValue<Guid>("adx_eventid") equals eventTag.GetAttributeValue<Guid>("adx_eventid")
join tag in serviceContext.CreateQuery("adx_eventtag")
on eventTag.GetAttributeValue<Guid>("adx_eventtagid") equals tag.GetAttributeValue<Guid>("adx_eventtagid")
where tag.GetAttributeValue<string>("adx_name") == "scotland"
select occurence).OrderBy(x => x.Start);
これは、この例では "Scotland" の固定文字列検索で問題なく機能します。ただし、現在のページのトピックを反映するには、それを置き換える必要があります。だから本質的に私は交換する必要があります
== "scotland"
と
== getBranch()
ここで、getBranch は関連するブランチ名を文字列として返します。
これは私が試してみることにつながるでしょう
eventsWithTag = (from occurence in occurrences1
join eventTag in serviceContext.CreateQuery("adx_eventtag_event") on occurence.Event.GetAttributeValue<Guid>("adx_eventid") equals eventTag.GetAttributeValue<Guid>("adx_eventid")
join tag in serviceContext.CreateQuery("adx_eventtag") on eventTag.GetAttributeValue<Guid>("adx_eventtagid") equals tag.GetAttributeValue<Guid>("adx_eventtagid")
where tag.GetAttributeValue<string>("adx_name") == getBranch()
select occurence).OrderBy(x => x.Start);
しかし、これは機能しません。私がLINQについて知っていることはほとんどありません。これは、この方法で変数を使用できないためです。
私の質問は次のとおりです。上記の LINQ クエリをブランチの動的な値で使用するにはどうすればよいですか。
注:これに関する他の投稿を見たことがありますが、特定のニーズにそれらを転送するためのLINQの知識がないようです。まだ!