protected void tplGrid_SelectedIndexChanged(object sender, EventArgs e) { string packageId = tplGrid.SelectedItem.Cells[5].Text; if (string.IsNullOrEmpty(packageId) || packageId.IndexOfAny(new char[] { '/', '\\', ':' }) >= 0) //Don't allow path control elements in a package ID. { MessageBox.Show("Invalid template path"); return; } if (!PackageCache.PackageExists(packageId)) { MessageBox.Show("The selected template could not be found. Please contact your Sample Portal site administrator for assistance."); return; } //Open a new work session. try { // title is in Cells[2]. string templateTitle = tplGrid.SelectedItem.Cells[2].Text; _session = Factory.CreateWorkSession(Session, packageId, templateTitle); // Make sure that there is a cache for the assembled documents, and that it is empty. AssembledDocsCache cache = Factory.GetAssembledDocsCache(this.Session); cache.Clear(); } catch (Exception ex) { MessageBox.Show(ex.Message); return; } //Redirect to "select answer set" page Response.Redirect("SelAns.aspx"); }