我想在 ASP.NET 和 LINQ 中制作一个简单的 Silverlight 应用程序。我有两个表
学生:[student_id,student_name,address, phone,country_id] 国家:[country_id,country_name]
Thiw 拖车表由 country_id 连接。我在我的项目中引入了一个 LINQ 数据类。我已经包含了一个 Silverlight-Enabled-WCF-Service。在这项服务中,我制作了两种方法,代码就像
[OperationContract]
public List<Country> LoadCountry()
{
var result = from coun in oLINQDataClassesDataContext.Countries
select coun;
return result.ToList();
}
[OperationContract]
public IList<Student> LoadStudent()
{
var result = from std in oLINQDataClassesDataContext.Students
select std;
return result.ToList();
}
然后我添加该 WCF 服务的服务引用。然后我在silverlight .xml 文件中包含一个DataGrid。
现在我想展示那个 DataGrid 中的所有学生。为此,我编写了以下代码
WCFServiceReference.WCFServiceClient oWCFServiceClient = new WCFServiceReference.WCFServiceClient();
public Home()
{
InitializeComponent();
oWCFServiceClient.LoadStudentCompleted += new EventHandler<WCFServiceReference.LoadStudentCompletedEventArgs>(oWCFServiceClient_LoadStudentCompleted);
oWCFServiceClient.LoadStudentAsync();
}
void oWCFServiceClient_LoadStudentCompleted(object sender, WCFServiceReference.LoadStudentCompletedEventArgs e)
{
dataGrid1.ItemsSource = e.Result;
}
然后我构建了整个项目,没有发现错误。如果我运行该项目,那么我发现了一个错误,它是——
操作过程中发生异常,导致结果无效。检查 InnerException 以获取异常详细信息。在 System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary() 在 Silverlight.WCFServiceReference.LoadStudentCompletedEventArgs.get_Result() 在 Silverlight.Home.oWCFServiceClient_LoadStudentCompleted(Object sender, LoadStudentCompletedEventArgse) 在 Silverlight.WCFServiceReference.WCFServiceClient.OnLoadStudentCompleted(Object state)
如果我从 LINQ 类中删除县表并从服务中删除 LoadCountry() 方法并从 silverlight 表单中调用 LoadStudent() 方法,那么它会准确运行并且所有数据都显示在我的 DataGrid 中。
如果我从 LINQ 类中删除学生表并从服务中删除 LoadStudent() 方法,则 LoadCountry() 方法会准确运行。如果 LINQ 和 WCF 服务同时存在,这两种方法都不起作用。
注意:两张表都有数据。如果我运行 SQL 连接查询,那么它会返回数据
我不明白问题是什么。
有没有人可以帮助我解决这个问题?
提前致谢。皮疹