Beste Überlastet Match-Methode Hat Einige Ungültige Argumente Asp.net Wcf?
Bin ich immer der Fehler "Best Überlastet Match-Methode Hat Einige Ungültige Argumente"
mein code ist,
System.Collections.Generic.List<ConsultantShares> consultantShareList = (Session["ProjectShare"] as List<ConsultantShares>);
CIService.CIServiceClient client = new CIService.CIServiceClient();
client.GetConsultantScoreAsync(consultantShareList,this.txtProjectId.Text,this.ddlWorkClass.SelectedValue);
client.GetConsultantScoreCompleted += new EventHandler<CIService.GetConsultantScoreCompletedEventArgs>(client_GetConsultantScoreCompleted);
Fehler als Liste,
Error 196 The best overloaded method match for
'CIService.CIServiceClient.GetConsultantScoreAsync(InspectionServices.ConsultantShares[], string, string)'
has some invalid arguments G:\Design Scoring\InspectionEvaluation\Summary.aspx.cs 32
9 G:\Design Scoring\InspectionEvaluation\
Error 197 Argument 1: cannot convert from 'System.Collections.Generic.List<InspectionServices.ConsultantShares>'
to 'InspectionServices.ConsultantShares[]' G:\Design Scoring\InspectionEvaluation\Summary.aspx.cs 32
40 G:\Design Scoring\InspectionEvaluation\
zwar habe ich Folgendes,
in
namespace CIService
{
[GeneratedCode("System.ServiceModel", "4.0.0.0")]
[DebuggerStepThrough]
public class CIServiceClient : ClientBase<ICIService>, ICIService
{
public void GetConsultantScoreAsync(ConsultantShares[] cs, string targetProjectId, string workclass);
public void GetConsultantScoreAsync(ConsultantShares[] cs, string targetProjectId, string workclass, object userState);
}
}
Hoffnungen für Ihren Vorschlag
Dank
BEARBEITET:
Immer Fehler auf
Error 30 The type or namespace name 'InventoryProject' does not exist in the namespace 'CIService' (are you missing an assembly reference?) G:\Design Scoring\InspectionEvaluation\ProjectDetails.aspx.cs 108 23 G:\Design Scoring\InspectionEvaluation\
CIService.InventoryProject invProject = new CIService.InventoryProject();
während CIService
public InventoryProject GetInventoryProjectDetail(string consultantId, string projectId)
{
ProjectService prjService = new ProjectService();
return prjService.GetInventoryProjectDetail(consultantId, projectId);
}
public List<InventoryProject> GetProjectsByConsultant(string consultantId, int currentPageNumber, int pageSize)
{
ProjectService prjService = new ProjectService();
return prjService.GetProjectsByConsultant(consultantId, currentPageNumber, pageSize);
}
während CIService ist mein WCF-Dienst und InventoryProject.datasource ist ein anderes Projekt des databasemanager, dessen dll in das wcf-Projekt aber warum ist es nicht recognizsing "inventoryproject"
Hoffnungen für Ihre Hilfe
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie zwei Möglichkeiten. Als erstes können Sie nennen
.ToList()
auf das array vor der übergabe an die Methode als parameter, Zweiten option können Sie festlegen, wie Standard-Kollektion geben Sie beim erstellen des proxy (Hinzufügen der service Referenz).Dem Grund, dass Sie immer die Fehler da, Beim hinzufügen der service Referenz, die Sie wohl angegeben,
System.Collection.Generic.List
als die Sammlung geben. Sie können ändern, die zu Array.Reuse types in referenced assemblies
. Seine in der gleichen Bildschirm. Damit werden beide Projekte verwenden die gleichen Baugruppen.