CAMLクエリに基づいてWebパーツにSharePoint2010リストのコンテンツを表示するためのコードをいくつか取得し、テーブルに1つではなく、2つのリストから同じものを表示するように変更しました。次に、両方のリストで不完全なタスクの数を取得するために、コードをさらに変更したいと思います。そのために、テーブルにデータを入力するループにカウンターを追加し、結果を別の変数に格納しました。これで、テーブルは正常に入力され、実行したいことを実行しますが、変数cの値が表示されません...誰か助けてもらえますか?本当にありがたいです。コードは次のとおりです。
using System;
using System.ComponentModel;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebControls;
namespace SharePoint365.WebParts.OutstandingTasks
{
[ToolboxItemAttribute(false)]
public class OutstandingTasks : WebPart
{
int a; // HERE (1)
int b; // HERE (1)
int c; // HERE (1)
protected override void CreateChildControls()
{
/*int a;
int b;
int c;*/
SPList taskList = SPContext.Current.Web.Lists["test list 1"];
SPList taskList1 = SPContext.Current.Web.Lists["test list 2"];
SPQuery query = new SPQuery();
query.Query = "<Where><Neq><FieldRef Name='Status' />";
+"<Value Type='Text'>Completed</Value></Neq></Where>";
query.ViewFields = "<FieldRef Name='Title' /><FieldRef Name='Status'/>";
SPListItemCollection tasks = taskList.GetItems(query);
SPListItemCollection tasks1 = taskList1.GetItems(query);
string htmlTable = "<table border='1'>";
htmlTable += "<tr><td>Title</td><td>Status</td></tr>";
foreach (SPListItem aTask in tasks)
{
htmlTable += string.Format("<tr><td>{0}</td><td>{1}</td></tr>",
aTask["Title"], aTask["Status"]);
a++; // HERE (2)
}
foreach (SPListItem aTask in tasks1)
{
htmlTable += string.Format("<tr><td>{0}</td><td>{1}</td></tr>",
aTask["Title"], aTask["Status"]);
b++; // HERE (3)
}
htmlTable += "</table>";
c = a + b; // HERE (4)
Console.WriteLine(c); // HERE (4)
LiteralControl tableControl = new LiteralControl(htmlTable);
this.Controls.Add(tableControl);
}
}
}