Asp.net 试图获取当前登录用户';s跟踪字段的ID

Asp.net 试图获取当前登录用户';s跟踪字段的ID,asp.net,entity-framework,asp.net-mvc-5,Asp.net,Entity Framework,Asp.net Mvc 5,我遵循这本非常好的教程来设置一个包含5个字段的BaseEntity类: 活动、DateCreated、UserCreated、DateModified、UserModified。 需要这些跟踪字段的所有实体都将从此类继承 在下面的小教程中,他向我展示了如何在dbContext中重写SaveChanges()方法,以便根据创建/更新正确设置这些字段 我试图找出如何将当前登录用户的ID而不是用户名存储到UserCreated和UserModified字段中 如果用户ID不应该是我存储的内容,请告诉我

我遵循这本非常好的教程来设置一个包含5个字段的BaseEntity类: 活动、DateCreated、UserCreated、DateModified、UserModified。 需要这些跟踪字段的所有实体都将从此类继承

在下面的小教程中,他向我展示了如何在dbContext中重写SaveChanges()方法,以便根据创建/更新正确设置这些字段

我试图找出如何将当前登录用户的ID而不是用户名存储到UserCreated和UserModified字段中

如果用户ID不应该是我存储的内容,请告诉我。这一直是我在当年创建的一些webforms应用程序中经常做的事情

另外,在添加新记录时,将Active设置为始终为true的最佳方法是什么。这应该在db上下文中还是在我的BaseEntity类中完成。我想我应该在BaseEntity类中创建一个名为Disable()的函数,该函数将更改为Active=False


您可以创建包含用户ID的IIdentity/IPrincipal的自定义实现。然后可以从上下文或线程中检索该值,并将其转换为正确的类型


我已编辑了您的标题。请参阅“”,其中的共识是“不,他们不应该”。