Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net core Asp.NETMVC核心3.0持久性_Asp.net Core_Asp.net Core Mvc_Asp.net Core 2.0_Asp.net Core 3.0 - Fatal编程技术网

Asp.net core Asp.NETMVC核心3.0持久性

Asp.net core Asp.NETMVC核心3.0持久性,asp.net-core,asp.net-core-mvc,asp.net-core-2.0,asp.net-core-3.0,Asp.net Core,Asp.net Core Mvc,Asp.net Core 2.0,Asp.net Core 3.0,我正在开发asp.NETMVC核心web应用程序。我的要求是登录和注销功能。如何做到持之以恒?我想与身份扩展一起发展。请指导我如何实施正确的方法 下面的IdentityExtension和GenericUser这两个类都用于我以前的asp.mvc框架项目。我想以类似的方式创建asp.net mvc core 3.0 public static class IdentityExtension { public static GenericUserIdentity ToGen

我正在开发asp.NETMVC核心web应用程序。我的要求是登录和注销功能。如何做到持之以恒?我想与身份扩展一起发展。请指导我如何实施正确的方法

下面的IdentityExtension和GenericUser这两个类都用于我以前的asp.mvc框架项目。我想以类似的方式创建asp.net mvc core 3.0

public static class IdentityExtension
{
            public static GenericUserIdentity ToGenericUserIdentity(this IIdentity identity)
            {
                var cookie = HttpContext.Current.Request.Cookies[FormsAuthentication.FormsCookieName];
                var ticketInfo = FormsAuthentication.Decrypt(cookie.Value);
                return new GenericUserIdentity(ticketInfo);
            }
}
从IIdentity继承的类GenericUserIdentity类似于我创建GenericUserIdentity:ClaimsIdentity还是我应该使用相同的IIdentity请给出任何示例。

namespace Tmmmt.Persistance
{
    [Serializable]
    public class GenericUser
    {
        public string RoleName { get; set; }
        public int UserID { get; set; }
        public string UserName { get; set; }       
    }

    [Serializable]
    public class GenericUserIdentity : IIdentity
    {
        private GenericUser genericUser;
        private FormsAuthenticationTicket ticket;

        public GenericUserIdentity(FormsAuthenticationTicket ticket)
        {
            var serializer = new JsonSerializer();
            var reader = new JsonTextReader(new StringReader(ticket.UserData));
            genericUser = serializer.Deserialize<GenericUser>(reader);
            this.ticket = ticket;
        }

        public string AuthenticationType
        {
            get { return "Custom"; }
        }

        public bool IsAuthenticated
        {
            get { return ticket != null; }
        }

        public string Name
        {
            get { return genericUser.UserName; }
        }

        public string RoleName
        {
            get{return genericUser.RoleName;}
        }

        public int UserID
        {
            get { return genericUser.UserID; }
        }


    }
}
名称空间Tmmmt.persistence
{
[可序列化]
公共类泛型用户
{
公共字符串RoleName{get;set;}
public int UserID{get;set;}
公共字符串用户名{get;set;}
}
[可序列化]
公共类GenericUserIdentity:IIIdentity
{
私有泛型用户泛型用户;
私人身份证;
公共通用用户标识(用于身份验证票证)
{
var serializer=new JsonSerializer();
var reader=newjsontextreader(newstringreader(ticket.UserData));
genericUser=序列化程序。反序列化(读取器);
这张票=票;
}
公共字符串身份验证类型
{
获取{返回“自定义”;}
}
公共图书馆已通过认证
{
获取{回程票!=null;}
}
公共字符串名
{
获取{return genericUser.UserName;}
}
公共字符串RoleName
{
获取{return genericUser.RoleName;}
}
公共int用户标识
{
获取{return genericUser.UserID;}
}
}
}

我将从这里开始:感谢更新,该链接将对我有所帮助,尽管您可以看到上面的示例代码@估价员