从WCF服务返回MembershipUser

本文关键字:MembershipUser 返回 服务 WCF | 更新日期: 2023-09-27 18:25:02

我已经为我的WCF服务实现了一个SQL成员身份提供程序。WPF客户端通过互联网访问该服务。我有一个服务getUser(),它应该返回一个用户。可以通过该方法返回MembershipUser吗?因为我在另一个线程中读取到,由于类具有SecurityAttribute,XmlSerializer无法序列化它,所以不可能这样做。

编辑:此外,将此类型返回给客户端是否安全。是否存在滥用的可能性?

从WCF服务返回MembershipUser

我不能100%确定该类型是否可以序列化的具体答案。。。但只要试一试。如果出现错误,只需创建一个包含需要返回的所有信息的代理类型。并在WCF方法中返回:-)

我不记得这对我们是否有效,但在最坏的情况下,您可以创建一个DTO对象(比如MyMembershipUser),并创建从MembershipUser到MyMembershipUser的映射。这应该是非常直接的。

/// <summary>
    /// Maps MembershipUser entity to MyMembershipUser business object.
    /// </summary>
    /// <param name="entity">A MembershipUser entity.</param>
    /// <returns>A product business object.</returns>
    internal static MyMembershipUser Map(MembershipUser entity)
    {
        return new MyMembershipUser 
        {
            Id = entity.Id,
            Name= entity.Name,
        };
    }