c# MVC 5 用户存储自定义 findby
c# MVC 5 User Store custom findby
默认提供的 FindByIdAsync、FindById 等按预期工作。
我将如何实施 FindBySomeOtherField?
至少我希望能够 UserManager.FindBy 主 AspNetUsers table 之外的任何字段。比如UserManager.FindBy电话号码
理想情况下,我可以 UserManager.FindByCustomField
我不想实施全新的用户存储。
我想最坏的情况是我可以找到并复制 MVC 5 的整个用户存储并将其添加到我的项目然后实现它,但是,我宁愿只添加一个 class包含该功能并完成,因为我更喜欢原样的用户存储并且只想扩展它的功能。
不确定我是否理解正确,但以下内容应该有效?
IEnumerable<[Object]> results = [ObjectCollection].Where(u => u.[Field] == [Value])
或
[Object] result = [ObjectCollection].SingleOrDefault(u => u.[Field] == [Value])
如果你想要它用于特定的领域,你可以将它提取到一个方法中;
public [Object] FindBy[Field]([FieldType] value)
{
return [ObjectCollection].SingleOrDefault(u => u.[Field] == [Value])
}
默认提供的 FindByIdAsync、FindById 等按预期工作。
我将如何实施 FindBySomeOtherField?
至少我希望能够 UserManager.FindBy 主 AspNetUsers table 之外的任何字段。比如UserManager.FindBy电话号码
理想情况下,我可以 UserManager.FindByCustomField
我不想实施全新的用户存储。
我想最坏的情况是我可以找到并复制 MVC 5 的整个用户存储并将其添加到我的项目然后实现它,但是,我宁愿只添加一个 class包含该功能并完成,因为我更喜欢原样的用户存储并且只想扩展它的功能。
不确定我是否理解正确,但以下内容应该有效?
IEnumerable<[Object]> results = [ObjectCollection].Where(u => u.[Field] == [Value])
或
[Object] result = [ObjectCollection].SingleOrDefault(u => u.[Field] == [Value])
如果你想要它用于特定的领域,你可以将它提取到一个方法中;
public [Object] FindBy[Field]([FieldType] value)
{
return [ObjectCollection].SingleOrDefault(u => u.[Field] == [Value])
}