2009-06-14 16 views
5

私はMembershipProviderを使用しています。カスタムセキュリティと組み合わせて設定しているため、現在のアプリケーションのApplicationId(Guid)を取得する必要があります。 Membership.ApplicationNameを使用してアプリケーション名を取得するのは簡単ですが、Idを取得する簡単な方法は見つかりませんでした。ASP.NETで現在のApplicationIdを取得するMembershipProvider

答えて

6

IDを取得するために独自のコード(カスタムストアドプロシージャのようなもの)を書く必要があると思います。このデータは、メンバーシップ・プロバイダの組み込み実装によるプライベートな使用を目的としており、プロバイダ・インタフェースの一部ではありません(プロバイダの一部の実装には存在しない可能性があります)。ユーザーIDも同じです。良いことは、デフォルトの実装のためのストアドプロシージャを書くことはかなり簡単です。

あなただけのことを行う必要があります。

SELECT ApplicationId FROM aspnet_Applications 
WHERE ApplicationName = 
    (System.Web.Security.Membership.Provider.ApplicationName 
     from the ASP.NET code) 

本当にこのID

+0

私はあなたが正しいと思う、思考を得るためにフレームワークに組み込まれた方法はありません。カスタムSQLは唯一の方法です。 – Craig

0

デフォルトのSQLMembershipスキーマが格納されている調達しているあなたCAL電話を持っている必要がある場合は、再考することをお勧めします。 aspnet_Applications_CreateApplication, @ApplicationName (input), @ApplicationID (output) これは、新しいIDを作成するか、一致するものが見つかると既存のIDを返します。

関連する問題