繁体   English   中英

我如何从会话字节的数组中提取? 在会话内部也写入了字节的数组

[英]How can I take from Session byte's array? Inside the session was written byte's array too

是会话中的字节还是写入后将数据转换为字符串? 如果是的话,我想我可以这样:

var res = Encoding.UTF8.GetBytes(Session["session_state"]);

还是可以按原样使用它而不转换为字节数组? 喜欢:

var res = Session["session_state"] as bytes[]; // or smth. like that

数据未转换。 如果会话对象已序列化(取决于它的存储方式),则在您再次访问它之前,将对它进行反序列化。

只需将值转换为字节数组即可:

var res = Session["session_state"] as byte[];

要么:

var res = (byte[])Session["session_state"];

旁注:无法使用UTF-8编码将字节数组可靠地转换为字符串。 使用UTF-8的另一种方法,即将字符串转换为字节,然后转换为字节。 要从字节创建字符串,您宁愿使用诸如base64之类的东西。

无论会话状态使用哪种模式(过程,状态服务器等),您都将始终获得会话中存储的内容

所以答案将是

var res = Session["session_state"] as byte[];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM