是否可以在只读类中创建一个方法
本文关键字:方法 一个 创建 只读 是否 | 更新日期: 2023-09-27 18:01:13
我有一个公共类,它也是只读类。(即,它在选项卡的右上角有挂锁。类中的一些成员对项目的其他部分来说是非常宝贵的。我遇到的问题是,该类只由属性字段组成,没有方法。
这是类的样子:
public class UserInfo : ADItemInfo
{
public UserInfo();
public string FirstName{ get; set; }
public string LastName { get; set; }
public string EmployeeID { get; set; }
}
UserInfo和ADItemInfo类都是只读的。
默认情况下。Master.cs页面我有一个方法,它将使用成员:FirstName, LastName, EmployeeID
来处理用户身份验证。下面列出的代码。
private void ProcessUserAuthentication()
{
var userInfo = (UserInfo)Session["UserInfo"];
if (userInfo == null &&
Page.User != null &&
Page.User.Identity != null &&
!string.IsNullOrWhiteSpace(Page.User.Identity.Name))
{
userInfo = UserInfo.GetUserInfo(Page.User.Identity.Name); //ERROR HERE READS: abc.UserInfoclass.does not contain a defintion for 'GetUserInfo'
Session["UserInfo"] = userInfo;
}
if (RequireUserAuthentication)
{
// nothing in here right now.
}
if (!string.IsNullOrWhiteSpace(userInfo.FirstName) && !string.IsNullOrWhiteSpace(userInfo.LastName))
{
uxUserWelcomeLbl.Text = string.Format("Welcome {0} {1} {2}", userInfo.FirstName, userInfo.LastName, userInfo.EmployeeID);
}
}
到目前为止,我还不能为这个类生成方法存根,也不确定该采用哪种方法来解决这个问题。
我无法完全理解你想要实现的目标。现在您正在调用GetUserInfo
,因为它是UserInfo
类的一个静态方法,但没有这样的方法,正如我们在UserInfo
的定义中看到的那样。
是否要将Page.User.Identity.Name
的结果放入userInfo
变量中?如果是这样的话,你可以做一些类似的事情:
userInfo.FirstName = Page.User.Identity.Name;
它在标签的右上角有挂锁
如果我是正确的,这表明文件是只读的,而不是类本身。也许您正试图在调试模式下更改某些内容?