| public partial class Questions : System.Web.UI.Page |
| { |
| protected void Page_Load(object sender, EventArgs e) |
| { |
| if (Session["UserName"] != null) |
| { |
| if (!Page.IsPostBack) |
| { |
| userNameLabel.Text = Session["UserName"].ToString(); |
| questionsRadGrid.AutoGenerateColumns = false; |
| questionsRadGrid.MasterTableView.DataKeyNames = new string[] { "Id", "TagName" }; |
| GridBoundColumn subjectColumn = new GridBoundColumn(); |
| questionsRadGrid.MasterTableView.Columns.Add(subjectColumn); |
| subjectColumn.DataField = "Subject"; |
| subjectColumn.HeaderText = "Subject"; |
| subjectColumn.UniqueName = "Subject"; |
| GridBoundColumn descriptionColumn = new GridBoundColumn(); |
| questionsRadGrid.MasterTableView.Columns.Add(descriptionColumn); |
| descriptionColumn.DataField = "Description"; |
| descriptionColumn.HeaderText = "Description"; |
| descriptionColumn.UniqueName = "Description"; |
| GridBoundColumn createDateTimeColumn = new GridBoundColumn(); |
| questionsRadGrid.MasterTableView.Columns.Add(createDateTimeColumn); |
| createDateTimeColumn.DataField = "CreateDateTime"; |
| createDateTimeColumn.HeaderText = "Created Date Time"; |
| createDateTimeColumn.UniqueName = "CreateDateTime"; |
| GridBoundColumn userNameColumn = new GridBoundColumn(); |
| questionsRadGrid.MasterTableView.Columns.Add(userNameColumn); |
| userNameColumn.DataField = "UserName"; |
| userNameColumn.HeaderText = "User Name"; |
| userNameColumn.UniqueName = "UserName"; |
| GridBoundColumn tagNameColumn = new GridBoundColumn(); |
| questionsRadGrid.MasterTableView.Columns.Add(tagNameColumn); |
| tagNameColumn.DataField = "TagName"; |
| tagNameColumn.HeaderText = "Tag Name"; |
| tagNameColumn.UniqueName = "TagName"; |
| GridBoundColumn idColumn = new GridBoundColumn(); |
| questionsRadGrid.MasterTableView.Columns.Add(idColumn); |
| idColumn.DataField = "Id"; |
| idColumn.HeaderText = "Id"; |
| idColumn.UniqueName = "Id"; |
| //Create the detail table |
| GridTableView gridTableView = new GridTableView(questionsRadGrid); |
| questionsRadGrid.MasterTableView.DetailTables.Add(gridTableView); |
| GridRelationFields gridRelationFields = new GridRelationFields(); |
| gridTableView.ParentTableRelation.Add(gridRelationFields); |
| gridRelationFields.MasterKeyField = "Id"; |
| gridTableView.AutoGenerateColumns = false; |
| GridBoundColumn answerColumn = new GridBoundColumn(); |
| gridTableView.Columns.Add(answerColumn); |
| answerColumn.DataField = "Description"; |
| answerColumn.HeaderText = "Answer"; |
| answerColumn.UniqueName = "Answer"; |
| GridBoundColumn createdDateTimeColumn = new GridBoundColumn(); |
| gridTableView.Columns.Add(createdDateTimeColumn); |
| createdDateTimeColumn.DataField = "CreatedDateTime"; |
| createdDateTimeColumn.HeaderText = "Created DateTime"; |
| createdDateTimeColumn.UniqueName = "CreatedDateTime"; |
| GridBoundColumn userNameColumn1 = new GridBoundColumn(); |
| gridTableView.Columns.Add(userNameColumn1); |
| userNameColumn1.DataField = "UserName"; |
| userNameColumn1.HeaderText = "User Name"; |
| userNameColumn1.UniqueName = "UserName"; |
| GridBoundColumn questionIdColumn = new GridBoundColumn(); |
| gridTableView.Columns.Add(questionIdColumn); |
| questionIdColumn.DataField = "QuestionId"; |
| questionIdColumn.HeaderText = "Question Id"; |
| questionIdColumn.UniqueName = "QuestionId"; |
| GridBoundColumn tagColumn = new GridBoundColumn(); |
| gridTableView.Columns.Add(tagColumn); |
| tagColumn.DataField = "TagName"; |
| tagColumn.HeaderText = "Tag Name"; |
| tagColumn.UniqueName = "TagName"; |
| } |
| } |
| else |
| { |
| Response.Redirect("Login.aspx"); |
| } |
| } |
| protected void exportButton_Click(object sender, EventArgs e) |
| { |
| questionsRadGrid.ExportSettings.OpenInNewWindow = true; |
| questionsRadGrid.ExportSettings.FileName = "Export"; |
| questionsRadGrid.MasterTableView.ExportToExcel(); |
| } |
| protected void questionsRadGrid_NeedDataSource(object source, Telerik.Web.UI.GridNeedDataSourceEventArgs e) |
| { |
| if (!e.IsFromDetailTable) |
| { |
| HttpClient client = new HttpClient(); |
| HttpResponseMessage response = client.Get(new Uri("http://localhost/QuestionService/Service.svc/")); |
| response.Content.LoadIntoBuffer(); |
| QuestionCollection questionCollection = response.Content.ReadAsXmlSerializable<QuestionCollection>(); |
| questionsRadGrid.DataSource = questionCollection; |
| } |
| } |
| protected void questionsRadGrid_DetailTableDataBind(object source, Telerik.Web.UI.GridDetailTableDataBindEventArgs e) |
| { |
| GridDataItem dataItem = (GridDataItem)e.DetailTableView.ParentItem; |
| string questionId = dataItem.GetDataKeyValue("Id").ToString(); |
| string tagName = dataItem.GetDataKeyValue("TagName").ToString(); |
| HttpClient client1 = new HttpClient(); |
| HttpResponseMessage response1 = client1.Get(new Uri("http://localhost/AnswerService/Service.svc/" + questionId)); |
| response1.Content.LoadIntoBuffer(); |
| AnswerCollection answerCollection = response1.Content.ReadAsXmlSerializable<AnswerCollection>(); |
| foreach (Answer answer in answerCollection) |
| { |
| answer.TagName = tagName; |
| answer.QuestionId = questionId; |
| } |
| e.DetailTableView.DataSource = answerCollection; |
| } |
| } |
"Microsoft JScript runtime error: Sys.WebForms.PageRequestManagerServerErrorException: Syntax error: Missing operand before '=' operator."
Please help me overcome this error. The corresponding .aspx file is as follows
| <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Questions.aspx.cs" Inherits="DiscussionForumTelerikUI.Questions" EnableEventValidation="false" %> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml" > |
| <head runat="server"> |
| <script language="javascript" type="text/javascript" > |
| function RowClick(sender, eventArgs) { |
| <!--alert("Index of clicked row is " + eventArgs.get_itemIndexHierarchical());--> |
| var grid = sender; |
| var MasterTable = grid.get_masterTableView(); |
| var row = MasterTable.get_dataItems()[eventArgs.get_itemIndexHierarchical()]; |
| var idCell = MasterTable.getCellByColumnUniqueName(row, "Id"); |
| var tagCell = MasterTable.getCellByColumnUniqueName(row, "TagName"); |
| var id = idCell.innerHTML; |
| var tag = tagCell.innerHTML; |
| window.location = "Answers.aspx?id=" + id + "&" + "tag=" + tag; |
| } |
| </script> |
| <title>Questions</title> |
| <style type="text/css"> |
| .style1 |
| { |
| color: #FF3300; |
| } |
| .style2 |
| { |
| color: #CC6600; |
| font-family: Calibri; |
| } |
| .style3 |
| { |
| font-family: Calibri; |
| } |
| </style> |
| </head> |
| <body style="background-color: #CCFF99"> |
| <form id="form1" runat="server"> |
| <div> |
| <h1 class="style1"> |
| <telerik:RadScriptManager ID="RadScriptManager1" Runat="server"> |
| </telerik:RadScriptManager> |
| </h1> |
| <h1 class="style1"> |
| <span class="style3">Welcome</span> |
| <asp:Label ID="userNameLabel" runat="server" Font-Names="Calibri"></asp:Label> |
| |
| <span class="style3"> |
| <a href="AddQuestion.aspx">Click here to post your question</a> <a |
| href="Login.aspx">Logout</a></span></h1> |
| <h1 class="style2"> |
| Click on a question to view its answers</h1> |
| </div> |
| <telerik:RadGrid ID="questionsRadGrid" runat="server" AllowPaging="True" |
| AllowSorting="True" GridLines="None" Skin="Telerik" PageSize="50" |
| Font-Names="Calibri" Font-Size="Large" OnDetailTableDataBind="questionsRadGrid_DetailTableDataBind" OnNeedDataSource="questionsRadGrid_NeedDataSource"> |
| <ClientSettings AllowColumnsReorder="True"> |
| <ClientEvents OnRowClick="RowClick" /> |
| <Selecting AllowRowSelect="True" /> |
| </ClientSettings> |
| </telerik:RadGrid> |
| <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> |
| <AjaxSettings> |
| <telerik:AjaxSetting AjaxControlID="questionsRadGrid"> |
| <UpdatedControls> |
| <telerik:AjaxUpdatedControl ControlID="questionsRadGrid" /> |
| </UpdatedControls> |
| </telerik:AjaxSetting> |
| </AjaxSettings> |
| </telerik:RadAjaxManager> |
| <asp:Button ID="exportButton" runat="server" Font-Names="Calibri" |
| onclick="exportButton_Click" Text="Export to Excel" /> |
| </form> |
| </body> |
| </html> |
Thanks
Satyaprakash J
