다른 사용자가 보낸 사람의 메시지 목록을 포함하는받은 편지함 메시지 페이지가 있습니다. 이 메시지를 클릭하면이 두 사람 사이에 메시지 발신자가 보낸 메시지에 회신 할 수있는 메시지 스레드가 열립니다 (이 페이지는 MessageContent.aspx). 이것은 다른 페이지 (MessageReply.aspx)로 이동하여 응답자가 "Send Message"버튼을 사용하여 텍스트 영역 컨트롤에서 새 메시지를 생성 할 수있게하여 이전 스레드의 메시지 목록 끝에 해당 응답을 추가하고 Response.Redirect를 실행하여 해당 페이지로 돌아갑니다.jQuery Mobile 및 Reponse.Redirect를 사용하여 URL을 올바른/현재 페이지로 변경하려면 어떻게해야합니까?
전반적으로 나는 원하는대로 작동하지만, MessageReply 페이지에서 모든 스레드 메시지가 포함 된 페이지로 돌아갈 때 URL이 변경되지 않는다는 유일한 문제가 있습니다.
예를 들어, MessageDetail URL은 "http : //mysite/MessageContent.aspx? ThreadId = 24"입니다. 메시지에 회신하면 "http : //mysite/MessageReply.aspx? message = 26"이라는 URL로 이동합니다. 메시지가 세부 정보 페이지로 전송되어 메시지로 리디렉션되면 URL에 여전히 "http : //mysite/MessageReply.aspx? message = 26"이 표시됩니다.
다음은 MessageDetail에서 열어 본 코드입니다. (하이퍼 링크 컨트롤을 사용하여) 페이지를 회신 : 여기
string url = SPContext.Current.Site.ServerRelativeUrl + "/MessageReply.aspx";
HyperLink ReplyHyperLink = (HyperLink)e.Item.FindControl("MessageReply");
ReplyHyperLink.Attributes.Add("rel", "external");
ReplyHyperLink.NavigateUrl = QueryStringUtils.AppendParameter(url, MessageQueryString, item.Id);
내가 MessageReply SendMesage 버튼에 대한이 코드입니다 :
// Send the message
var contentEditor = (HtmlTextArea)this.FindControl("ContentEditor");
client.SendMessageReply(_messageId.Value, SubjectTextBox.Text, contentEditor.InnerText);
Message message = client.Read(_messageId.Value);
// Redirect back to the MessageContent page
string url = SPContext.Current.Site.ServerRelativeUrl + "/MessageContent.aspx";
string pageUrl = QueryStringUtils.AppendParameter(url, ThreadIdQueryString, message.ThreadId);
Response.Redirect(pageUrl);
누구든지 방법을 변경하기 위해 URL을 얻으려면 어떤 생각을 가지고는을 보낼 때 메시지 회신? 다른 모든 것은 잘 작동합니다. 나는 그것을 매우 고맙게 생각한다 :