【问题标题】:silverlight C# code银光 C# 代码
【发布时间】:2011-08-10 12:54:38
【问题描述】:

这是在 Service.svc.cs 文件中编码的

 [OperationContract]
            public List<Branch> GetAllBranch()
            {

                List<Branch> Br = new List<Branch>();
                using (SqlConnection con = new SqlConnection(myConnectionString))
                {
                    using (SqlCommand cmd = new SqlCommand())
                    {
                        cmd.CommandText = "GetBranch";
                        cmd.Connection = con;
                        cmd.CommandType = System.Data.CommandType.StoredProcedure;
                        con.Open();
                        SqlDataReader dr = cmd.ExecuteReader();
                        while (dr.Read())
                        {
                            Branch BrName = new Branch();
                            BrName.Name = Convert.ToString(dr["BranchName"]);
                            Br.Add(BrName);
                        }
                        dr.Close();
                    }
                }
                return Br;
            }

            public class Branch
            {
                public string Name { get; set; }
            }

服务结束文件代码----

这是在表单中编码的

 ServiceClient client= new ServiceClient();
                test.GetAllBranchCompleted += (s, ea) =>
                    {
                        cboBranch.ItemsSource = ea.Result;
                    };
                client.GetAllBranchAsync();

我的要求是我想填充我的数据库中存在的所有分支的名称。使用此代码,BranchName 的组合框正在填充,但不是数据库记录,而是类似 CRUD.ServiceReference1.ServiceBranch 的内容。 CRUD 是我的解决方案名称。

请用这个纠正我.. 谢谢

【问题讨论】:

  • 你没有说cboBranch是什么,但是你需要创建一个模板来显示Branch类型的项目。这通常在 XAML 中完成。
  • cboBranch 是我的 ComboBox,我希望在其中填充我的数据库中的分支名称...如果不在 XAML 中这样做,我不能这样做...我已经在 DatagridView 及其使用相同的代码工作正常。我只想在 ComboBox 中填充它。 DGV.ItemsSource = ea.Result;这是我在使用 DataGrid 时替换的行。 DataGridView 是我的 DGV 的名称

标签: silverlight-4.0


【解决方案1】:

要让名称出现在您的 ComboBox 中,您需要生成 List&lt;string&gt;。在这里你返回一个List&lt;Branch&gt;

因此,您要么需要重新编写服务代码,要么只需从 ea.Result 中提取字符串列表。

cboBranch.ItemsSource = ea.Result.Select(b => b.Name).ToList();

(凭记忆)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-12
    • 1970-01-01
    • 1970-01-01
    • 2010-12-02
    • 2011-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多