Reputation: 121
Okay, so I am having problems calling the method GetClassAverage() from the interfacce (the windows form displaying the data). I get the following error too "The modifier public is not valid for this item"... this is the code on my IService.cs file
[ServiceContract]
public interface IClassRollService
{
[OperationContract]
List<Student> GetStudentList(int semester);
[OperationContract]
double GetClassAverage(int anything);
}
In my Service.cs file I have
public double GetClassAverage()
{
double sum = 0.0;
double total;
foreach (Student S in Students)
{
sum += S.Average;
}
return total = sum / Students.Count();
}
On my windows form I fill a gridview by calling client.GetStudentList() but it does not work for GetClassAverage()
What am I doing wrong or what am I missing?
[EDIT] Already took out the public but I still can't call the method from the Windows Form. Is there any other way I can get the returned value from that method into to the windows form. This has something to do with the web services, that much I know.
Upvotes: 4
Views: 22174
Reputation: 2256
Your edited IService.cs looks good. You need to change your implementation signature in Service.cs to match your interface:
public double GetClassAverage()
to
public double GetClassAverage(int anything)
Upvotes: 5
Reputation: 4296
In an interface, all methods are public by definition. That is why it tells you "public" is not valid. Just remove the "public" keyword from your interface's method definition and everything will be fine.
Upvotes: 24