|M| 小弟我快哭了 找了一整天的Session丢失 才找到原因,大家看看小弟我的这样做有什么好方法

|M| 我快哭了 找了一整天的Session丢失 才找到原因,大家看看我的这样做有什么好方法
原来的:我的是一个电脑销售系统网站
原来的流程是:
销售员工店面专东西
在网上记录这一次卖的是什么
然后有一个WinForm利用网页加xml方法打印出订单列表
打印完成后向网站的网页Update.aspx发送
Update.aspx更新数据库中的打印时间

现在因为安全问题要求给更新的时候记录打印人
所以流程如下
下单   点击网页打印按钮   触发Winform的打印控件   打印订单  
向网站发送订单更新   Update.aspx但这里更新打印人就有问是了
本来我是用Session来记录更新的
但Session一直丢失
搞一半天   锤桌子的时候才想到
当WinForm程序向网站的Update.aspx发送信息的时候其实是创建了新的链接
自然现在浏览中的Session不会传到他那里   造成Session丢失

所以开始我想把Session也向那个打印控件传值
但这里有一个他妈的问题就是用户不在一个表中有N个用户表(郁闷)
所以再想传两个值一个说明哪一个表一个是表ID
但感觉这样传的话传给Winform打印控件的值太多,而且我也不想去改那个打印控件

所以以上有什么好的办法?
注:不要用Cookie
谢谢

------解决方案--------------------
asp.net没有jsp的jsessionid重定向的功能
所以这个很麻烦

帮你找找
------解决方案--------------------
写到数据库里?
------解决方案--------------------
<sessionState
mode= "[Off|InProc|StateServer|SQLServer|Custom] "
timeout= "number of minutes "
cookieName= "session identifier cookie name "
cookieless=
"[true|false|AutoDetect|UseCookies|UseUri|UseDeviceProfile] "
regenerateExpiredSessionId= "[True|False] "
sqlConnectionString= "sql connection string "
sqlCommandTimeout= "number of seconds "
allowCustomSqlDatabase= "[True|False] "
useHostingIdentity= "[True|False] "
stateConnectionString= "tcpip=server:port "
stateNetworkTimeout= "number of seconds "
customProvider= "custom provider name ">
<providers> ... </providers>
</sessionState>

可以把session保存在数据库,或者独立的服务器上,就不会丢失了
------解决方案--------------------
Session在我搞了一段时间没搞定后
我基本放弃了用那玩意!
楼主继续努力
------解决方案--------------------
hehe

store the session data into the database,,, it only works the asp.net 2.0

http://blog.csdn.net/vb_vs/archive/2006/04/14/663382.aspx
------解决方案--------------------
使用cookie
------解决方案--------------------
为什么不用cookie呢?
其实cookie的安全问题是自己没有处理好,包括csdn都用cookie