SilverlightでRIAサービスを使用していて、次のコードを使用してDataItemCollectionでコレクションを読み込みます。同期要求を伴うSilverlight RIAサービス
私の問題はLoadOperationを実行して0行を返し、しばらくしてから再びデバッガでコントロールを取得してからforループを実行し、正しいカウントを返します。
したがって、非同期のようです。どうすればデータを返す間に正しいカウントが得られるように同期的に取得できますか?
ReportingCategoryContentAssociationContext _ReportingCategoryContentAssociationContext = new ReportingCategoryContentAssociationContext();
DataItemCollection lstdt = new DataItemCollection();
LoadOperation loadopt = _ReportingCategoryContentAssociationContext.Load(_ReportingCategoryContentAssociationContext.GetReportingContentScoreByCategoryQuery());
loadopt.Completed += (s, args) =>
{
if (!loadopt.HasError)
{
DataItem dtitem = null;
foreach (GetReportingCategoriesContentScore_Result Lkt in ((LoadOperation<GetReportingCategoriesContentScore_Result>)s).Entities)
{
dtitem = new DataItem();
dtitem.ReportingCategoryID = Lkt.CategoryID;
dtitem.ParentCategoryID = Lkt.ParentCategoryID;
dtitem.CategoryTitle = Lkt.CategoryTitle;
lstdt.Add(dtitem);
}
}
};
HiTech Magicの回答が正しいです。あなたはそれが非同期であるために何か問題に遭遇していますか? –