От гледна точка на ASP.NET Web API, използването на доставчик на членство и готовия FormsAuthentication вече е тъпо, така че защо не и присъединяването? :) Както и да е, ако приемем, че вашият уеб API се използва само от уеб клиенти и FA е страхотен, можете да използвате UserData на билета на FA, за да поставите потребителския идентификатор. По този начин не е необходимо да получавате ID, като натискате вашата DB всеки път. Но вие ще трябва сами да създадете билета и да не позволявате внедряването по подразбиране да направи това вместо вас. След това в събитието PostAuthenticateRequest можете да прочетете потребителския идентификатор от билета и да го зададете в самоличността. Разбира се, трябва да създадете своя собствена персонализирана самоличност за това със свойство ID или ако сте на .NET 4.5, можете да използвате самото FormsIdentity, но може би можете да използвате претенцията NameIdentifier, за да съхраните ID. Вижте това - ASP.NET MVC - Задайте персонализиран IIdentity или IPrincipal .