Использовать членство в ASP.NET в ServiceStack - PullRequest
5 голосов
/ 03 января 2012

как я могу использовать членство asp.net в ServiceStack ?(ServiceStack.OrmLite, ServiceStack.Host.AspNet и т. Д.)

Ответы [ 2 ]

7 голосов
/ 03 января 2012

Вы можете разместить ServiceStack по пользовательскому пути , т. Е. В / api, который позволяет параллельно запускать веб-формы ASP.NET и ServiceStack, а затем использовать обычного поставщика членства ASP.NET в ASP..СЕТЬ.

Затем вы можете поделиться UserSessions с ServiceStack, используя его Session Provider, вот пример того, как создать экземпляр Session с MVC - вы можете использовать этот же класс с ASP.NET.

Альтернатива состоит в том, чтобы отказаться от поставщика членства ASP.NET и просто придерживаться встроенной аутентификации в ServiceStack .Он включает в себя поддержку учетных данных (т.е. пользователь / пароль - что вы хотите), а также Twitter / Facebook / BasicAuth + ваши собственные.С In-Memory, OrmLite и Redis backends.

Вот пример веб-сайта использования всех опций аутентификации в одном приложении ServiceStack с OrmLite backend .

2 голосов
/ 03 января 2012

Если вы хотите использовать членство и хотите использовать ORM lite со структурой членства (хотя вы все еще можете использовать SqlMembershipProvider), вы можете создать собственный класс провайдера, например:

public class ServiceStackMembershipProvider : MembershipProvider
{

}

И реализуйте все методы (или, по крайней мере, те методы, которые вам нужны), используя компоненты ORM.

...