LINQ to SQL查询通过WCF返回值 [英] LINQ to SQL query return value via WCF

查看:61
本文介绍了LINQ to SQL查询通过WCF返回值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用以下方法返回值:

  public   string  GetAge( string  myName)
{
DataClasses1DataContext data = new DataClasses1DataContext();
var myAge = 来自 data.Users 其中 a.uName == myName 选择 a;
return myAge.ToString();
}



但是文本块中返回的值是:SELECT [t0]。[Id],[t0]。[uName],[t0] .uAge ...

WP代码是:

  private   void  Button_Click( object  sender,RoutedEventArgs e)
{
ServiceReference1.Service1Client proxy = new ServiceReference1.Service1Client();
proxy.GetAgeCompleted + = SetAgeText;
string myName = Nick;
proxy.GetAgeAsync(myName);
}

private void SetAgeText( object sender,ServiceReference1.GetAgeCompletedEventArgs e)
{
AgeTxtBlck.Text = e.Result;
}



请你更正此代码。

解决方案

在你的GetAge方法构建查询但忘记运行它。

所以你应该改变你的代码:

  public   string  GetAge( string  myName)
{
DataClasses1DataContext data = new DataClasses1DataContext();
var myAge = 来自 data.Users 其中 a.uName == myName 选择 a;
用户user = myAge.FirstOrDefault(); // 运行查询!!!
return (user == null null :user.uAge.ToString()); // 将用户年龄作为字符串返回!
}


I want to return the value using the following method:

public string GetAge(string myName)
        {
            DataClasses1DataContext data = new DataClasses1DataContext();
            var myAge = from a in data.Users where a.uName == myName select a;
            return myAge.ToString();
        }


But the returned value in the textblock is: "SELECT [t0].[Id], [t0].[uName], [t0].uAge..."
The WP code is:

private void Button_Click(object sender, RoutedEventArgs e)
       {
           ServiceReference1.Service1Client proxy = new ServiceReference1.Service1Client();
           proxy.GetAgeCompleted += SetAgeText;
           string myName = "Nick";
           proxy.GetAgeAsync(myName);
       }

       private void SetAgeText(object sender, ServiceReference1.GetAgeCompletedEventArgs e)
       {
           AgeTxtBlck.Text = e.Result;
       }


Could you correct this code please.

解决方案

In your GetAge method you build the query but forget to run it.
So you should change your code like this:

public string GetAge(string myName)
        {
            DataClasses1DataContext data = new DataClasses1DataContext();
            var myAge = from a in data.Users where a.uName == myName select a;
            User user = myAge.FirstOrDefault(); //Run the query!!!
            return (user == null ? null : user.uAge.ToString()); //Return the user age as string!
        }


这篇关于LINQ to SQL查询通过WCF返回值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆