Why is the asp.NET profile designed in such a terrible way?

In the current project I'm working on, we use the asp.NET profile to store information about users, such as their inclusion in the mailing list.

Now, to get a list of all the users on the mailing list, I can’t just do a database query, because the asp.NET profile table is just delivered, terrible.

For those who don’t know, the profile table has two main columns: the “keys” column and the “value” columns, and they are organized like this:

Keys: Key1: dataType: startIndex: endIndex: key2: dataType., Etc.

values: value1value2value3 ...

This is almost impossible to query using SQL, so the only way to find users with a specific property is to load a list of ALL users and skip it.

In a site with over 150k members, this is apparently very slow!

Are there specific reasons why the profile was designed this way, or is it just a terrible way to make dynamically generated data?

+3
source share
3 answers

, . , , , , - . , . , (, ), - .

ASP.NET , (, ints ..), . ! , . , , . , . SearchableSqlProfileProvider - SQL.

, , - ! / , .

+3

, , , - , , . , , , . , , . .

+5

(/Sitemap/ ..), ASP.NET ( Name/Value XML). , , /, . , "", ?

. , , , , , .

+1

Source: https://habr.com/ru/post/1714714/


All Articles