怎么将一个对象从一个页面传到另外一个页面???高手来帮忙

hexinyu2005 2007-03-28 04:29:11
怎么将一个对象从一个页面传到另外一个页面???高手来帮忙
...全文
331 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
hexinyu2005 2007-03-28
  • 打赏
  • 举报
回复
我是一个对象呀,有很多参数的
plsandslp 2007-03-28
  • 打赏
  • 举报
回复
放在地址里面吧 ,如http:\\10.10.10.1\index.aspx?a=12
然后用request.querystring取a 的值不就行了
jimu8130 2007-03-28
  • 打赏
  • 举报
回复
似乎该对象要能进行序列化吧
lovehongyun 2007-03-28
  • 打赏
  • 举报
回复
关注..
hexinyu2005 2007-03-28
  • 打赏
  • 举报
回复
求帮助
realtb 2007-03-28
  • 打赏
  • 举报
回复
晕哦
每次都慢一拍
realtb 2007-03-28
  • 打赏
  • 举报
回复
可以考虑下消息队列
复杂对象传送
realtb 2007-03-28
  • 打赏
  • 举报
回复
a页面在a服务器
b页面在b服务器?
Nils 2007-03-28
  • 打赏
  • 举报
回复
转自:http://naliyouwo.blog.hexun.com/7728538_d.html


具体实现:

ITransfer.cs
namespace Sunrise.Sample.FormTransfer
{
/// <summary>
/// 此接口定义了一个返回所需传递对象的属性
/// 发送对象的页面必须实现此接口
/// </summary>
public interface ITransfer
{
MyClass MyObject
{
get;
set;
}
}
}


MyClass.cs
namespace Sunrise.Sample.FormTransfer
{
/// <summary>
/// 一个用来演示的简单类
/// </summary>
public class MyClass
{
private string _strMessage;

public MyClass()
{
}

public string Message
{
get
{
return this._strMessage;
}
set
{
this._strMessage = value;
}
}

}
}


后台代码文件Receiver.aspx.cs

namespace Sunrise.Sample.FormTransfer
{
/// <summary>
/// 接收对象的页面
/// </summary>
public class Receiver : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
ITransfer mySender;

if(!IsPostBack)
{
//判断当前页面的HttpHandler,如果实现了ITransfer接口
//就转换成ITransfer
if(Context.Handler is ITransfer)
{
mySender = (ITransfer)Context.Handler;

Response.Write(mySender.MyObject.Message);
}
else
{
Response.Redirect("Sender.aspx");
}
}
}

.
.
.
}
}


后台代码文件Sender.aspx.cs

namespace Sunrise.Sample.FormTransfer
{
/// <summary>
/// 发送对象的页面
/// </summary>
public class Sender : System.Web.UI.Page, ITransfer //继承ITransfer
{
protected System.Web.UI.WebControls.Button btnSend;
private MyClass _objMyObject;

private void Page_Load(object sender, System.EventArgs e)
{
_objMyObject = new MyClass();
}

//实现ITransfer接口
public MyClass MyObject
{
get
{
return this._objMyObject;
}
set
{
this._objMyObject = value;
}
}

/// <summary>
/// 响应按钮事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnSend_Click(object sender, System.EventArgs e)
{
this.MyObject.Message = "test";

//调用Server.Transfer(),转向执行Receiver.aspx
Server.Transfer("Receiver.aspx");
}

.
.
.
}
}


编译通过后,执行Sender.aspx,单击btnSend按钮,就可以看到执行结果了:Receiver.aspx页面拿到了MyObject对象,并且在页面上显示出MyObject.Message的值为“test”;
realtb 2007-03-28
  • 打赏
  • 举报
回复
楼上的都说了
hexinyu2005 2007-03-28
  • 打赏
  • 举报
回复
因为是用的多台服务器,所以不能用SESSION
zjstccc 2007-03-28
  • 打赏
  • 举报
回复
保存在session,application中
dreamwaters 2007-03-28
  • 打赏
  • 举报
回复
放到SESSION 中

62,244

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧