我遇到以下问题:
我必须实现一种聊天应用程序。因此我使用ASP.NET 4.5和WCF。当我开始点击我想聊天的人时,我打电话给wcf webservice。这个web服务从我点击它的人那里调用wcf回调。我现在的问题是,我在客户端调用了该事件,但我无法打开一个新的ChatWindow。
[CallbackBehavior(UseSynchronizationContext = false, ConcurrencyMode = ConcurrencyMode.Single)]
public class ChatContext : IChatClient, INotifyPropertyChanged
{
#region Events
public event EventHandler StartChat;
#endregion
public void FollowChatBegin(Person invitee)
{
StartChat(invitee, new EventArgs());
}
我已在主页中注册了StartChat事件:
public partial class MainPage: System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
// ...
Global.ChatContext.StartChat += ChatContextOnStartChat;
}
private void ChatContextOnStartChat(object sender, EventArgs eventArgs)
{
var person= (Person) sender;
string path = this.Request.Url.AbsoluteUri.Remove(this.Request.Url.AbsoluteUri.IndexOf(Request.Url.LocalPath, Request.Url.LocalPath.Length));
path += "/Controls/Chat/ChatWindow.aspx";
string parameters = "did=" + person.Id + "height=700px,width=800px,resizeable=yes,status=no";
path += parameters;
ScriptManager.RegisterStartupScript(this, this.GetType(), "openChartWindow", "window.open('" + path + "');", true);
this.upMain.Update();
}
}
ChatContextOnStartChat给了我以下问题:
我不知道如何简单地打开弹出/对话框...我可以使用错误的模式吗?