Asp.Net 2.0成员身份,MemberShip.ValidateUser无法使用区分大小写的用户名。我尝试将aspnet_users中的loweredusername列设置为区分大小写。像这样
ALTER table aspnet_Users alter COLUMN LoweredUserName NVARCHAR(256)
COLLATE SQL_Latin1_General_CS_AS NOT NULL
但是也没有用。
关于如何更改它的任何想法。
答案 0 :(得分:0)
我只是走错了方向。问题是Asp.Net成员资格方法目标中的Membership.ValidateUser存储过程 [aspnet_Membership_GetPasswordWithFormat] 。在此存储过程中,我们需要更改
function PropertyDecorator(
target: Object, // The prototype of the class
propertyKey: string // The name of the property
): any {
console.log('hit');
return {
get: function () {
return !!this[propertyKey + 'value'];
},
set: function(val: string) {
this[propertyKey + 'value'] = val.toLowerCase() !== 'false';
},
enumerable: true,
configurable: true
};
}
class PropertyDecoratorExample {
@PropertyDecorator
name: string;
@PropertyDecorator
name2: string;
constructor() {
console.log('New instance');
console.log(this.name, 'should be false');
this.name = 'hey';
console.log(this.name, 'should be true');
console.log(this.name2, 'should be false');
}
}
new PropertyDecoratorExample();
new PropertyDecoratorExample();