I want to display a list of items with name and modified time, like so:
SPWeb thisWeb = SPContext.Current.Web;
SPWebCollection webs = thisWeb.Webs;
SPSiteDataQuery query = new SPSiteDataQuery();
query.Lists = "<Lists BaseType=\"1\" />";
query.ViewFields =
"<FieldRef Name=\"Modified\" Nullable=\"true\" />" +
"<FieldRef Name=\"FileLeafRef\" Nullable=\"true\" />";
DataTable table = thisWeb.GetSiteData(query);
BoundField modified = new BoundField();
modified.DataField = "modified";
modified.HeaderText = "Modified";
BoundField name = new BoundField();
name.DataField = "FileLeafRef";
name.HeaderText = "Namn";
GridView.Columns.Add(name);
GridView.Columns.Add(modified);
GridView.DataSource = table;
GridView.DataBind();
The resulting table looks like this:
1;#CSS 2012-06-12 08:58:45
7;#Images 2012-06-12 08:58:45
Can anyone tell me why Sharepoint is prepending what looks like the ID of the object?
The behaviour is especially preplexing because accessing the field via PowerShell looks ok:
> $web.Lists[1].Items[0]["FileLeafRef"]
posten_intranet_base.css