我已经为我的WCF服务实现了一个SQL成员资格提供程序。WPF客户端通过互联网访问该服务。我有一个服务getUser(),它应该返回用户。是否可以通过该方法返回MembershipUser,因为我在another thread中读到这样做是不可能的,因为该类有一个SecurityAttribute,并且XmlSerializer无法序列化它。
Edit:将此类型返回给客户端是否安全。是否存在误用的可能性?
发布于 2012-02-19 21:56:07
我不能百分之百确定该类型是否可以序列化的具体答案……但是试一试吧。如果出现错误,只需创建一个包含需要返回的所有信息的代理类型。并在您的WCF方法中返回:-)
发布于 2012-02-20 05:14:59
我不记得这是否适用于我们,但在最坏的情况下,您可以创建一个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,
};
}https://stackoverflow.com/questions/9349723
复制相似问题