質問

呼ばれる関数があります GetUserByOpenId この機能をまったく使用したくない

    Public Function GetUserByOpenID(ByVal claimedidentifier As String) As User Implements IUserRepository.GetUserByOpenID
        Dim user = (From u In dc.Users
                    Join o In dc.OpenIDs On u.ID Equals o.UserID
                    Where o.ClaimedIdentifier = claimedidentifier
                    Select u).FirstOrDefault
        Return user
    End Function

私が本当にできるようにしたいのは、私の「getusers」関数(iqueryable)を使用して、私のサービスレイヤーに参加することです。

    Public Function GetUsers() As IQueryable(Of User) Implements IUserRepository.GetUsers
        Dim users = (From u In dc.Users
                    Select u)
        Return users.AsQueryable
    End Function

これと同様の機能を使用して、アプリプロテートデータを返す方法がどのように見えるかを誰かが教えてもらえますか

    Public Function GetAllUsers() As System.Collections.Generic.IList(Of User) Implements IUserService.GetAllUsers
        Return _UserRepository.GetUsers().Where(Function(u) (Not u.isClosed)).ToList
    End Function
役に立ちましたか?

解決

うーん、OpenIDとユーザーの間にFK関係があるはずですが、そうではないようです。この関係を作成すると、プロパティを介して簡単に通過することができ、クエリをまったく実行する必要はありません(単純な場所を除く)。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top