类是否可以返回给调用方法C#?
我是新来C#的,需要一些帮助。我有一个ASP.Net页面,它在几种不同的方法中使用会话变量。会话变量是一个UserInfo类,用于在页面之间存储用户信息。我试图让一个方法从会话中创建userinfo类,并将其返回给调用方法。我相信这是可以做到的,我就是想不出来。任何帮助都将不胜感激类是否可以返回给调用方法C#?,c#,asp.net,C#,Asp.net,我是新来C#的,需要一些帮助。我有一个ASP.Net页面,它在几种不同的方法中使用会话变量。会话变量是一个UserInfo类,用于在页面之间存储用户信息。我试图让一个方法从会话中创建userinfo类,并将其返回给调用方法。我相信这是可以做到的,我就是想不出来。任何帮助都将不胜感激 private void CheckForUserType() { var user = RetrieveSession(); } private object RetrieveSession() {
private void CheckForUserType()
{
var user = RetrieveSession();
}
private object RetrieveSession()
{
var userInfo =(UserInfo)HttpContext.Current.Session["userInfo"];
return userInfo;
}
尝试新对象
private void CheckForUserType()
{
var user = RetrieveSession();
}
private UserInfo RetrieveSession()
{
UserInfo userInfo = new UserInfo(HttpContext.Current.Session["userInfo"]);
return userInfo;
}
如上所述,返回UserInfo对象,如果您从不同的区域调用它,可能会将其公开而不是私有。
我会小心使用会话对象,特别是如果您使用多台服务器或azure,请确保您的操作正确。最好不要使用会话对象和用户oauth2 owin/katana您需要在代码中稍作调整。将返回类型从
object
更改为UserInfo
private UserInfo RetrieveSession()
{
var userInfo =(UserInfo)HttpContext.Current.Session["userInfo"];
return userInfo;
}
您可能需要根据希望使用此方法的方式更改
访问修饰符 将RetrieveSession()上的返回类型从“object”更改为“UserInfo”?您看到了什么错误或问题?在C#中,您返回的是对象而不是类。仅供将来更好地撰写问题时参考。请参见:返回对象或类??类是一个对象定义,无法返回“类”,该类应该在您的范围内定义,以便能够从中创建实例(对象)。这么多糟糕的强制转换,请将“var user”更改为“UserInfo user”更改为“prive object restrievesession”“Private UserInfo RetrievesessionHttpContext.Current.Session就像对象的字典,因此您只需要通过索引器获取值并强制转换它