这是我的情况 - 我正在启动我的第一个 SL 应用程序,它来自 Windows 背景,其中我有 MVC 模式。我想我可以利用这种模式,所以我直接创建了一个包含 3 个项目的 SL 应用程序(解决方案)-> 1 个持有我的模型(之前的业务对象),SL 应用程序(当我选择 SL 时自动生成项目)和 1 个 SL.Web 项目(当我选择 SL 项目时自动生成)。
以下是我所做的步骤:我将一个空白网格放到我的 xaml 文件中,创建了一个服务,并且它被识别为没有任何问题。在我的 Web 项目中添加了“启用 Silverlight 的 WCF 服务”,并在我的项目中引用了我的“模型”项目。在 [OperationContract] 中,我创建了以下方法(服务):
[OperationContract]
public EmployeeCollection GetEmployees()
{
EmployeeCollection employees = Model.EmployeeCollection.GetAllEmployees();
return employees;
}
当我调试这个并设置断点时,我确实看到了员工返回的数据,所以我知道数据正在被返回。
现在,在我的 page.xaml.cs 文件中,似乎我的网格没有以某种方式填充,但不知道为什么。
我有以下片段:
void MyWebService_GetEmploteesCompleted(object sender, EmployeeWebService.GetEmployeesCompletedEventArgs e)
{
dataGrid.ItemsSource = e.Result;
}
我还应该去哪里寻找?我能错过什么?我是否必须添加其他代码片段才能与我的 BLL(模型)一起工作?
感谢您的任何建议。
==============================
顺便说一句,在调试时,在“自动”窗口中,我注意到 _GetEMployeesCompleted() 上出现以下值:
dataGrid.ItemSource ...... Count = 30 e.Result ...... Count = 30
为什么值没有显示在我的 DataGrid 上?