从wcf数据服务返回单个实体

发布于 2024-10-23 23:22:36 字数 152 浏览 6 评论 0原文

我只是想知道如何从 wcf 数据服务返回单个实体?

我想提供一个方法 public User Login(string username, string password) 并将登录用户返回到用户界面。

谢谢!

安迪

I just wanted to know how to return a single entity from a wcf data service?

I want to provide a methode public User Login(string username, string password) and return the loggedin user to the user interface.

Thanks!

andi

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

记忆之渊 2024-10-30 23:22:36

老问题已经老了,但您需要定义一个 服务操作

[WebGet]
[SingleResult]
public User GetAuthenticatedUser(string username, string password) {
    //
    // Fetch and return the user
    // with the given parameters
    //
}

但是用户名密码通过URI以明文形式传递。更好的选择是从 HTTP 请求的 Authorization 标头中提取用户名密码数据,通过网络加密请求(SSL)。一个简单的示例是为数据服务定义一个构造函数,并在其中附加到 ProcessingRequest 事件:

public MyDataService() {
    this.ProcessingPipeline.ProcessingRequest += (o, e) => { 
        // 
        // Do stuff with e.OperationContext.RequestHeaders["Authorization"]
        // storing the result into an instance property
        //
    };
}

使用引用授权属性的 User GetCurrentUser() 服务操作用户名密码,而不是接受它们作为GET查询字符串参数。

Old question is old, but you'll want to define a Service Operation:

[WebGet]
[SingleResult]
public User GetAuthenticatedUser(string username, string password) {
    //
    // Fetch and return the user
    // with the given parameters
    //
}

However the username and password are passed in clear text via the URI. A better option would be pulling the username and password data from the Authorization header of the HTTP request, encrypting the request over the wire (SSL). A simple example could be defining a constructor for the Data Service, and in it attaching to the ProcessingRequest event:

public MyDataService() {
    this.ProcessingPipeline.ProcessingRequest += (o, e) => { 
        // 
        // Do stuff with e.OperationContext.RequestHeaders["Authorization"]
        // storing the result into an instance property
        //
    };
}

With a User GetCurrentUser() service operation that references the authorization property for the username and password, instead of accepting them as GET querystring parameters.

哆啦不做梦 2024-10-30 23:22:36

我想这会对你有帮助。

我假设 User 是您的实体表。

public User Login(string username,string password)
{
   Entity obj = new Entity();
   User objUser = (from U in obj.User where U.username = username and U.password = password Select U).Single();
   return objUser;
}

这对我来说效果很好,希望对你有帮助。

I think this will help you.

I assume User is your entity table.

public User Login(string username,string password)
{
   Entity obj = new Entity();
   User objUser = (from U in obj.User where U.username = username and U.password = password Select U).Single();
   return objUser;
}

This works fine for me I hope it helps you.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文