【问题标题】:How to display one row of data grid in ASP.NET c# using WCF如何使用 WCF 在 ASP.NET c# 中显示一行数据网格
【发布时间】:2015-06-10 17:03:43
【问题描述】:

我正在使用 WCF 开发 Silverlight 应用程序。我想在数据网格中显示数据库中的特定行。

我找到了 e.result 但这将显示来自 DB 的全部内容。

下面是我的代码:

public TrainingBatchesUsersResults(int TraineeID)//, int TrainingProgramID, int >ReadyContainerID, int TrainingBatch, int ReadyContainerItemID)
{
     InitializeComponent();
     XraySimulatorWCFServices.XraySimulatorServiceClient XrayClient =new XraySimulatorWCFServices.XraySimulatorServiceClient();

     XrayClient.GetTrainingBatchesUsersResultsCompleted += new EventHandler<
     XraySimulatorWCFServices.GetTrainingBatchesUsersResultsCompletedEventArgs>(DisplayTrainingBatchesUsersResults);

     XrayClient.GetTrainingBatchesUsersResultsAsync(TraineeID);

     LayoutRoot.UpdateLayout();
}

private void DisplayTrainingBatchesUsersResults(object sender, XraySimulatorWCFServices.GetTrainingBatchesUsersResultsCompletedEventArgs e)
{
       dgvResult.ItemsSource = e.Result;
     dgvResult.Visibility = System.Windows.Visibility.Visible;
}

【问题讨论】:

  • 而不是itemsSource,您是否尝试过使用数据网格视图的DataSource 属性
  • silverlight中没有数据源!!
  • 你应该只返回一个结果
  • 我需要返回一行,这取决于id!!

标签: c# asp.net wcf silverlight


【解决方案1】:

只需将您的ItemsSource 设置为您要显示的单行,而不是整个结果集合。例如dgvResult.ItemsSource=e.Result.FirstOrDefault(x=>x.Id==theIdYouWantToShow)

但您真正想要的是在链上进一步执行此操作,以便您只返回所需的单行,而不是返回整个表并减少客户端上的集合。 您的电话XrayClient.GetTrainingBatchesUsersResultsAsync(TraineeID); 大概会返回您的所有行,为什么不提供一个只返回您感兴趣的单个结果的新方法?

【讨论】:

    猜你喜欢
    • 2011-09-02
    • 1970-01-01
    • 2012-05-03
    • 2016-04-23
    • 1970-01-01
    • 1970-01-01
    • 2011-03-24
    • 1970-01-01
    • 2011-03-13
    相关资源
    最近更新 更多